Universal description Discovery and Integration は、頭字語UDDIとしても知られ、Web サービス専用の XML ベースのサービス ディレクトリです。
UDDI は、電子商取引用の ebXML レジストリと組み合わせて使用するように設計されました。
UDDIディレクトリを使用すると、ネットワーク上で目的のWeb サービスを見つけることができます。これは、潜在的な Web サービス ユーザーのディレクトリへのアクセスを許可するため、WS-* Web サービス仕様の重要な要素です。
歴史的
UDDIプロジェクトは、 Microsoft 、 Ariba 、 IBMの共同作業として 2000 年 10 月に始まりました。 Sun Microsystems 、Oracle、HP、SAP などの他の企業も参加しています。
バージョン 2 は 2002 年に開発されました。
バージョン 3 は 2003 年に開発され、2005 年に数社によって採用されました ( 情報のみ)。

eコマースにUDDIを使用する
UDDI: ebXML の Web サービス ディレクトリ
UDDI は、密接に絡み合っている ebXML レジストリと組み合わせることで、電子商取引で WS-* Web サービスを検出するためのディレクトリとして使用することを目的としています[ 1 ] 。このように、UDDI を使用して Web サービス レジストリを構築できます。
実際には、UDDI を使用すると、技術情報と、Web サービスにアクセスするためのアドレスなどのビジネス プロセス情報の両方を保存できますが、管理を担当する人の名前やその機能の概要など、さらにコンテキスト情報も保存できます。あるいは、依存している会社の名前や事業部門さえも。
電子商取引における UDDI の地位
電子商取引には 3 つの主要なフェーズがあります。
- トランスポート: SOAPプロトコルを使用して保証されます。
- Web サービスの発見: ここで UDDI が登場します。
- Web サービスの説明: WSDL (XML ベース) を使用して提供されます。
ディレクトリの相談
UDDI ディレクトリは、さまざまな方法で参照できます。
- ホワイトページには、企業のリストとそれに関連する情報が含まれています。したがって、会社名、連絡先の詳細、会社の説明だけでなく、そのすべての識別子などの情報もそこに見つかります。
- イエロー ページには、 WSDL 標準に基づく各社の Web サービスがリストされています。
- 緑色のページには、提供されるサービスに関する正確な技術情報が記載されています。この情報は、サービスや接続情報、さらには関連するビジネス プロセスの説明にも関係します。
このトリプルリーディングのおかげで、すべての有益な情報にアクセスできます。
UDDI を使用して ebXML レジストリ/ディレクトリを検索する
2001 年 5 月、IBM とSun は、 「UDDI を使用して ebXML レジストリ/リポジトリを検索する」というタイトルの文書に署名しました。このドキュメントでは、UDDI ビジネス レジストリを使用して ebXML レジストリを検索する方法を示すケース スタディを示し、ebXML レジストリを定義して UDDI レジストリに登録するために従う必要がある一連の手順を定義します。このドキュメントはhttp://www.ebxml.org/specs/rrUDDI.pdfにあります。
検出の観点から、UDDI と ebXML レジストリの間に運用上の相互運用性が得られる可能性があります。このテーマに関してはさまざまな文書が書かれています。
ebXMLアーキテクチャでは、UDDI は CORBA を使用して相互運用できます。

ebXML コンポーネントのレジストリとしての UDDI
2003 年に、UDDI 技術委員会は「ebXML コンポーネントのレジストリとしての UDDI」というタイトルのメモを作成しました。このテクニカル ノートでは、B2B サービスの ebXMLフレームワークでの UDDI レジスタの使用、および UDDI を使用した ebXML フレームワークのコンポーネント (コラボレーション プロトコル プロファイル、コラボレーション プロトコル合意、ビジネス プロセス スキーマ仕様など) の自動検出を可能にするためのガイドラインを提供します。 。
この相互運用性により、各レジスタの補完的な強みが効果的に増大します。
機能的アーキテクチャ
警告:
このセクションは情報提供のみを目的としており、プログラミングでの使用を目的としたものではありません。
「基本 UDDI アーキテクチャ V3.0.1」を参照してください。
情報表現
Web サービスを意味のあるものにするためには、サービスの技術仕様を超えた情報を提供する必要があります。 UDDI レジストリの中心は、Web サービス上のデータとメタデータの表現です。
UDDI スキーム
UDDI は、XML スキーマ言語を使用してデータ構造を記述します。 UDDI のバージョン 3.0.1 には、9 つの XML スキーマがあります。
- UDDI API スキーマ
- UDDI 保管スキーマ
- UDDI サブスクリプション スキーマ
- UDDI サブスクリプション リスナー スキーマ
- UDDI レプリケーション スキーマ
- UDDI 値セット検証スキーマ
- UDDI 値セットのキャッチ
- UDDI ポリシー
- UDDIポリシーインスタンスパラメータ
UDDI データ構造
4 つの主なデータ構造タイプ
UDDI レコードの確立に役立つ情報は、4 つの主要なタイプの XML データ構造で構成されます。情報の種類ごとのこの単純な内訳は、レコードを構成するさまざまな情報を見つけて迅速に理解するのに役立ちます。
これら 4 つのタイプは、UDDI サービス記述フレームワークによって提供される情報セットを構成します。これらの各 XML 構造には、ビジネスまたはテクノロジを記述するために使用される多数のフィールドが含まれています。
詳細 :
- 参照データ構造、V2.03、2002年 7 月 19 日、IBM、HP、富士通、Sun、Microsoft、SAP、 Oracle Corporationが参加。
- UDDI レジストリ データ構造、バージョン 3.0.1、2003年 10 月 14 日、参加 IBM、Microsoft、France Telecom 、SAP、Oracle Corporation。
事業者
英語用語:ビジネスエンティティ
詳細 (v3.0.1):
BusinessEntity は、情報が記録されるビジネスまたはその他のエンティティを記述する高レベルのデータ構造です。 UDDI で企業とサプライヤーを表すために使用されます。これには、会社またはプロバイダーと、それらが提供するサービスに関する説明情報が含まれています。
- DiscoveryURL: 「ディスカバリー」URL、
- name: businessEntity の他の名前、
- description: businessEntity の複数の言語での説明 (xml:lang)、
- 連絡先: 連絡先に関する情報、
- address: 連絡先の住所、言語 (xml:lang)、および住所行、
- ビジネスサービス、
- identifierBag: 分類情報。
- categoryBag: 規格に関する情報など、
等
サービスの説明と技術情報は、businessEntity 内で、それに属する businessService および bindingTemplate 構造によって表現されます。 XML エンティティ名に「ビジネス」という単語が含まれている場合でも、その構造は単なる「ビジネス」以上のものをモデル化するために使用される可能性があります。
ビジネスサービス
英語用語:ビジネスサービス
詳細 (v3.0.1):
BusinessService を使用すると、1 つ以上の bindingTemplate を含めることができる Web サービスの論理セットを記述することができます。サービス レベルでは、これらのサービスに関する技術情報はまだ提供されていません。一方、この構造は、共通の見出しの下に一連のサービスを組み立てる可能性を提供します。
各 businessService は、単一の businessEntity の論理的な子です。各 businessService には、その中にある個々の Web サービスの目的の概要を示す説明情報 (名前、説明、分類情報) が含まれています。たとえば、businessService 構造には、企業が提供する一連の注文書 Web サービス (送信、確認、通知) を含めることができます。
バインディングテンプレート
詳細 (v3.0.1):
HTTP や SMTP などの 1 つ以上のプロトコルへのリンクが含まれる可能性がある特定のサービスを呼び出すために必要な情報。
tモデル
詳細 (v3.0.1):
tModel (技術モデル) は、特定のサービスの技術的な「フィンガープリント」に対応し、他の tModel を含む他のエンティティを識別するための名前空間としても機能します。
tModel の使用は、UDDI がデータとメタデータを表現する方法において不可欠です。
tModel には次の情報を含めることができます。
- プロトコルの定義(HTTP、SMTP)、
- 値のセット: 識別子システム、名前空間など。
- 分類グループ、
- 郵便住所の形式、
- UDDI find_xx API の動作を変更するために使用される検索修飾子、
- 使用タイプ属性。URI で参照されるリソースのタイプを指定します。
その他 (パブリッシャーのアサーションなど)
PublisherAssertion : businessEntity の観点から見た、businessEntity と別の businessEntity との関係の説明。
subscription : サブスクリプションによって記述されたエンティティの変更を経時的に追跡するためのクエリの説明。
技術アーキテクチャ
技術指導
技術的には、UDDI はサービス指向アーキテクチャ(サービス指向アーキテクチャ) のフレームワークに属します。
これは、XML マークアップ言語と互換性のある一連のテクノロジーに基づいています。
- SOAPトランスポートプロトコル (HTTP)、
- XML スキーマ文書形式記述言語、
- WSDL Web サービス記述言語。
サービスとAPIセット
UDDIノード
UDDI ノードは、UDDI 仕様をサポートし、UDDI レジストリに属するサービスです。
UDDI レジストリ
UDDI レジスタは 1 つ以上のノードのセットです。
政府の雇用
UDDI は、米国連邦政府の XML イニシアチブの一部として使用されています。
2003 年 9 月、UDDI は欧州連合の共通相互運用性フレームワーク内で「継続」ステータスのままでした[ 2 ] 。
実装
免責事項: このセクションは情報提供のみを目的としており、プログラミングでの使用を目的としたものではありません。
UDDIのお客様
- uddi4j : Java 用の UDDI
- UDDI.NET SDK : Microsoft .NET 用の UDDI
- uddi4r : Ruby用の UDDI
- uddi4py : Python 用の UDDI
- UDDI::Lite : Perl 用の UDDI

