Uddi-data-model
UDDI-データモデル
UDDIには、次のデータ構造を記述するXMLスキーマが含まれています-
- businessEntity
- ビジネスサービス
- bindingTemplate
- tModel
- PublisherAssertion
businessEntityのデータ構造
ビジネスエンティティ構造は、Webサービスのプロバイダーを表します。 UDDIレジストリ内では、この構造には、連絡先情報、業界カテゴリ、ビジネス識別子、提供されるサービスのリストなど、会社自体に関する情報が含まれています。
架空の企業のUDDIレジストリエントリの例を次に示します-
businessServiceのデータ構造
ビジネスサービス構造は、ビジネスエンティティによって提供される個々のWebサービスを表します。 その説明には、Webサービスにバインドする方法、Webサービスの種類、およびそれが属する分類カテゴリに関する情報が含まれます。
Hello World Webサービスのビジネスサービス構造の例を次に示します。
_businessKey_および_serviceKey_属性でUniversally Unique Identifier(UUID)が使用されていることに注意してください。 すべてのビジネスエンティティとビジネスサービスは、情報が最初に入力されたときにレジストリによって割り当てられたUUIDを介して、すべてのUDDIレジストリで一意に識別されます。
bindingTemplateのデータ構造
バインディングテンプレートは、ビジネスサービス構造によって表されるWebサービスの技術的な説明です。 1つのビジネスサービスに複数のバインディングテンプレートがある場合があります。 バインディングテンプレートは、Webサービスの実際の実装を表します。
Hello Worldのバインディングテンプレートの例を次に示します。
ビジネスサービスには複数のバインディングテンプレートがある場合があるため、サービスは同じサービスの異なる実装を指定でき、それぞれ異なるプロトコルセットまたは異なるネットワークアドレスにバインドされます。
tModelデータ構造
tModelは最後のコアデータ型ですが、潜在的に最も把握しにくいものです。 tModelは技術モデルの略です。
tModelは、UDDIレジストリ内に格納されているさまざまなビジネス、サービス、およびテンプレート構造を記述する方法です。 抽象概念はすべて、tModelとしてUDDI内に登録できます。 たとえば、新しいWSDLポートタイプを定義する場合、UDDI内でそのポートタイプを表すtModelを定義できます。 次に、tModelをそのビジネスサービスのバインディングテンプレートの1つと関連付けることにより、特定のビジネスサービスがそのポートタイプを実装するように指定できます。
次に、Hello World Interfaceポートタイプを表すtModelの例を示します。
publisherAssertionデータ構造
これは、子会社や部門などの特定のタイプの関係に応じて、2つ以上のbusinessEntity構造を関連付ける関係構造です。
publisherAssertion構造は、fromKey(最初のbusinessKey)、toKey(2番目のbusinessKey)、およびkeyedReferenceの3つの要素で構成されています。
keyedReferenceは、tModelKeyによって一意に参照される、tModel内のkeyName keyValueペアの観点から、アサートされた関係タイプを指定します。