[1] [DFN[[RUBYB[SOAP データ・モデル][SOAP Data Model]]]]は、 [[応用]]定義の[[データ構造]]と[[値]]を札付き辺有向グラフとして表現します。 SOAP データ・モデルは非 [[XML]] データのネットワーク表現への写像のために定義されました。 [2] 仕様書: - [[SOAP 1.2]] --[CSECTION[2. SOAP Data Model]] [3] '''SOAP の他の部分との関係''': SOAP データ・モデルやそれを使った [[SOAP符号化]]や [[SOAP RPC表現]]の実装は'''任意選択'''であり、 すべての [[SOAP節点]]が実装しなければならないわけではありません。 [SRC[SOAP 1.2 Part 2 2.]] 既存の応用定義のデータ・モデルによる表現を使っても構いませんし、 [[RDF]] のようなデータ・モデルに基づくこともできます。 [[#comment]] * データ・モデル [5] :[DFN[[RUBYB[[[グラフ]]][graph]]]]: :[DFN[[RUBYB[[[グラフ節点]]][graph node]]]]: [[グラフ節点]]は零個以上[[外向き辺]]を持ちます。 [[グラフ節点]]は[[型名]]を持つことができます。 [[外向き辺]]を持たない[[グラフ節点]]は[[字句値]]を持つことができます。 [SRC[SOAP 1.2 Part 2 2.1.1]] ([[SOAP節点]]とは無関係です。) :[DFN[[RUBYB[[[単参照グラフ節点]]][single reference graph node]]]]: [[内向き辺]]を1つ持つ[[グラフ節点]]です。 [SRC[SOAP 1.2 Part 2 2.2]] :[DFN[[RUBYB[[[多参照グラフ節点]]][multi reference graph node]]]]: [[内向き辺]]を複数持つ[[グラフ節点]]です。 [SRC[SOAP 1.2 Part 2 2.2]] :[DFN[[RUBYB[[[辺]]][edge]]]]: [[グラフ]]の[[節点]]から[DFN[[RUBYB[出て][originate]]]]、 [[節点]]で[DFN[[RUBYB[終わります][terminate]]]]。 なお、出る[[節点]]と終わる[[節点]]が同じでも'''構いません'''。 出る[[節点]]だけまたは終わる[[節点]]だけでも'''構いません'''。 [SRC[SOAP 1.2 Part 2 2.1]] :[DFN[[RUBYB[[[外向き辺]]][outbound edge]]]]: ある[[グラフ節点]]に関して、その[[グラフ節点]]から出る[[辺]]。 ある[[グラフ節点]]から出る[[外向き辺]]は[[辺札]]または[[位置]]で区別できます。 1つの[[外向き辺]]が[[位置]]で区別できるなら、 他の全ての[[外向き辺]]も[[位置]]で区別できます。 [SRC[SOAP 1.2 Part 2 2.1]] :[DFN[[RUBYB[[[内向き辺]]][inbound edge]]]]: ある[[グラフ節点]]に関して、その[[グラフ節点]]で終わる[[辺]]。 [SRC[SOAP 1.2 Part 2 2.1]] :[DFN[[RUBYB[[[辺札]]][edge label]]]]: [[XML]] [[修飾名]]です。辺札は [[XML]] [[展開名]]として等しければ[[等しい]]とします。 [SRC[SOAP 1.2 Part 2 2.1.1]] :[DFN[[RUBYB[[[型名]]][type name]]]]: すべての[[グラフ節点]]は[[型名]]を持つことができます。 型名の型は [CODE(XML)[[QN[xs:[[QName]]][http://www.w3.org/2001/XMLSchema]]]] です。 [SRC[SOAP 1.2 Part 2 2.1.1]] :[DFN[[RUBYB[[[字句値]]][lexical value]]]]: [[外向き辺]]を持たない[[グラフ節点]]は[[字句値]]を持つことができます。 [SRC[SOAP 1.2 Part 2 2.1.1]] :[DFN[[RUBYB[[[単純値]]][simple value]]]]: [[字句値]]付き[[グラフ節点]]で表現します。 [SRC[SOAP 1.2 Part 2 2.3]] :[DFN[[RUBYB[[[複合値]]][compound value]]]]: 零個以上の[[外向き辺]]付き[[グラフ節点]]で表現します。 [[構造体]]と[[配列]]があります。 [SRC[SOAP 1.2 Part 2 2.3]] :[DFN[[RUBYB[[[構造体]]][struct]]]]: [[外向き辺]]が[[辺札]]によって区別される[[グラフ節点]]。 [[外向き辺]]は異なる名前で札付けされていなければ'''なりません'''。 [SRC[SOAP 1.2 Part 2 2.3]] :[DFN[[RUBYB[[[配列]]][array]]]]: [[外向き辺]]が[[位置]]によって区別される[[グラフ節点]]。 [[外向き辺]]が札付けされていては'''なりません'''。 [SRC[SOAP 1.2 Part 2 2.3]] [[#comment]] * メモ