ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebLogic Server JAX-RPC を使用した Web サービスの高度な機能のプログラミング
11g リリース 1 (10.3.1)
B55544-01
 

目次
目次

戻る
戻る
 
次へ
次へ
 

11 UDDI を使用した Web サービスのパブリッシュと検索

この章では、UDDI レジストリを通じての Web サービスのパブリッシュと検索に関する情報を提供します。

UDDI の概要

UDDI とは、Universal Description, Discovery, and Integration の略です。UDDI プロジェクトは、企業が互いに迅速、簡潔、動的にトランザクションを検索および実行できるようにするための業界イニシアティブです。

UDDI レジストリには、ビジネス、ビジネスが提供するサービス、およびビジネスがトランザクションを実行するために使用する通信規格とインタフェースに関する情報がカタログ化されて格納されます。

UDDI は SOAP (Simple Object Access Protocol) データ通信規格に基づいて構築されており、グローバルでプラットフォームに依存しないオープンなアーキテクチャを実現して企業にメリットをもたらします。

UDDI レジストリは、次の 2 つのカテゴリに大別できます。

UDDI のデータ構造の詳細については、「UDDI のデータ構造」を参照してください。

UDDI と Web サービス

Web サービスの所有者は、それらのサービスを UDDI レジストリにパブリッシュします。パブリッシュすると、UDDI レジストリには Web サービスの説明と Web サービスのポインタが保持されます。

UDDI を使用すると、クライアントはこのレジストリを検索し、目的のサービスを見つけてその詳細を取得できます。これらの詳細には、サービスの呼び出しポイントのほかに、サービスとその機能を識別するための情報が含まれます。

Web サービス機能は、プログラミング インタフェースを介してエクスポーズされ、一般に WSDL (Web Services Description Language) を介して記述されます。一般的な公開と照会のシナリオでは、プロバイダがそのビジネスをパブリッシュし、その下にサービスを登録し、バインディング テンプレートにその Web サービスの技術情報を定義します。バインディング テンプレートには、1 つまたは複数の tModel への参照も保存されます。tModel は、Web サービスによって実装される抽象的なインタフェースを表します。tModel は、プロバイダによって独自にパブリッシュされている場合があります。これらの tModel には、インタフェースと WSDL ドキュメントの URL 参照に関する情報が格納されています。

一般的なクライアントの照会の目的は、次の 2 つのうちのいずれかです。

  • 既知のインタフェースの実装を検索する。この場合、クライアントは tModel ID を持っており、その Model を参照するバインディング テンプレートを検索します。

  • 既知のバインディング テンプレート ID の呼び出しポイント (アクセス ポイント) の更新値を検索する。

UDDI とビジネス レジストリ

ビジネス レジストリ ソリューションとしての UDDI を使用すると、企業は自社のビジネス製品およびサービス、さらに Web でのビジネス トランザクションの実行方法を公開できます。このように UDDI を使用することにより、企業間 (B2B) 電子商取引が補完されます。

ビジネスをパブリッシュするために必要な情報は、1 つのビジネス名だけです。パブリッシュされたビジネス エンティティの詳細な記述には、さまざまな情報が含まれます。こうした情報はすべて、ビジネス エンティティとその製品およびサービスを、正確に、そしてアクセス可能な形式で公開するのに役立ちます。

ビジネス レジストリには、次の要素が含まれます。

  • ビジネス ID - ビジネスの複数の名前と説明、連絡先、および標準の ID (納税者番号など) です。

  • カテゴリ - 標準のカテゴリ情報 (D-U-N-S ビジネス カテゴリ番号など) です。

  • サービスの記述 - サービスの複数の名前と説明です。サービス情報のコンテナとして、企業はさまざまなサービスを公開しつつ、サービスの所有権を明確に表示できます。bindingTemplate 情報は、サービスへのアクセス方法を説明するものです。

  • 規格への準拠 - 場合によっては、各種規格への準拠を指定することが重要となります。これらの規格には、サービスの使い方に関する詳細な技術要件が示されます。

  • カスタム カテゴリ - ビジネスまたはサービスを識別または分類する独自仕様 (tModels) をパブリッシュできます。

UDDI のデータ構造

UDDI のデータ構造は、businessEntitybusinessServicebindingTemplatetModel という 4 つの構造で構成されています。

次の表に、Web サービスまたはビジネス レジストリ アプリケーションで使用する場合のこれらの構造の相違点を示します。

表 11-1 UDDI のデータ構造

データ構造 Web サービス ビジネス レジストリ

businessEntity

Web サービス プロバイダを表す。

  • 企業名

  • 連絡先

  • その他のビジネス情報

企業、またはその事業部または部門を表す。

  • 企業名 (複数可)

  • 連絡先

  • 識別情報およびカテゴリ

businessService

1 つまたは複数の Web サービスの論理グループ。

単一名の API。子要素として格納され、上記の名前のビジネス エンティティによって保持される。

単一の businessEntity に複数のサービスのグループを含めることができる。

  • 複数の名前と説明

  • カテゴリ

  • 規格への準拠の指定

bindingTemplate

単一の Web サービス。

対象 Web サービスにバインドして対話するためにクライアント アプリケーションが必要とする技術情報。

アクセス ポイント (Web サービスを呼び出す URI) を含む。

追加の規格準拠インスタンス。

URL 形式のサービス アクセス ポイント、電話番号、電子メール アドレス、ファックス番号など。

tModel

技術仕様 (通常は仕様のポインタ)、または仕様ドキュメントに関するメタデータ (実際の仕様を指す名前および URL など) を表す。Web サービスのコンテキストでは、実際の仕様ドキュメントは WSDL ファイルで表される。

普及しているか、またはユーザが特定用途のために登録した標準または技術仕様を表す。


WebLogic Server の UDDI 機能

WebLogic Server は、以下の UDDI 機能を提供します。

UDDI 2.0 サーバ

UDDI 2.0 サーバは WebLogic Server の一部であり、WebLogic Server の起動時に自動的に起動されます。UDDI サーバは、UDDI 2.0 サーバ仕様 (http://www.uddi.org/specification.html) を実装しています。

UDDI 2.0 サーバのコンフィグレーション

UDDI 2.0 サーバをコンフィグレーションするには、次の手順に従います。

  1. WebLogic Server を停止します。

  2. WL_HOME/server/lib ディレクトリの uddi.properties ファイルを更新します。WL_HOME は、WebLogic Server のメイン インストール ディレクトリです。


    注意 :

    WebLogic Server ドメインを作成したユーザが WebLogic Server をインストールしたユーザと異なる場合は、WebLogic Server 管理者は uddi.properties ファイルのパーミッションを変更してすべてのユーザがアクセスできるようにする必要があります。

  3. Weblogic Server を再起動します。

WebLogic Server の実行中は uddi.properties ファイルを編集しないでください。このファイルを修正したことで UDDI サーバが正常に起動しなくなった場合は、WL_HOME/server/lib/uddi.properties.booted ファイルの前回の正常なコンフィグレーションを参照してください。

コンフィグレーションをデフォルトに回復するには、uddi.properties ファイルを WL_HOME/server/lib ディレクトリから削除します。このファイルは、バックアップ用のディレクトリに移動するよう Oracle で推奨されています。新しい uddi.properties ファイルが作成され、正常に起動されたときに uddi.properties.booted ファイルが上書きされるためです。 プロパティ ファイルを削除したら、サーバを再起動します。最低限のデフォルト プロパティがロードされ、新しい uddi.properties ファイルに書き込まれます。

以下の節では、uddi.properites ファイルに追加できる UDDI サーバ プロパティについて説明します。プロパティのリストは、コンポーネント、用途、および機能に従って分類されています。常にすべてのプロパティが必要というわけではありません。

外部 LDAP サーバのコンフィグレーション

UDDI 2.0 サーバは、組み込み LDAP サーバで自動的にコンフィグレーションされます。しかし、この節の以下の手順によって、外部 LDAP サーバをコンフィグレーションすることもできます。


注意 :

現時点では、WebLogic Server は UDDI 2.0 サーバで使用するものとして、SunOne Directory Server のみをサポートしています。

UDDI で使用する SunOne Directory Server をコンフィグレーションするには、次の手順に従います。

  1. LDAP_DIR/Sun/MPS/slapd-LDAP_INSTANCE_NAME/config/schema ディレクトリ内に 51acumen.ldif というファイルを作成します。LDAP_DIR は、SunOne Directory Server のインストール先のルート ディレクトリ、LDAP_INSTANCE_NAME はインスタンス名を表します。

  2. 51acumen.ldif ファイルのコンテンツ」で説明するコンテンツを使って、51acumen.ldif ファイルを更新します。

  3. SunOne Directory Server を再起動します。

  4. WebLogic UDDI 2.0 サーバの uddi.properties ファイルに以下のプロパティを追加して、更新します。

    datasource.ldap.manager.password
    datasource.ldap.manager.uid
    datasource.ldap.server.root
    datasource.ldap.server.url
    

    プロパティの値は、SunOne Directory Server のコンフィグレーションに応じて異なります。次の例では、デフォルト値を使用するコンフィグレーションとして考えられるものを示します。

    datasource.ldap.manager.password=password
    datasource.ldap.manager.uid=cn=Directory Manager
    datasource.ldap.server.root=dc=beasys,dc=com
    datasource.ldap.server.url=ldap://host:port
    

    これらのプロパティについては、表 11-1 を参照してください。

  5. Weblogic Server を再起動します。

51acumen.ldif ファイルのコンテンツ

以下のコンテンツを使用して、51acumen.ldif ファイルを作成します。

dn: cn=schema
#
# attribute types:
#
attributeTypes: ( 11827.0001.1.0 NAME 'uddi-Business-Key'                DESC 'Business Key' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.1 NAME 'uddi-Authorized-Name'             DESC 'Authorized Name for publisher of 
data' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.2 NAME 'uddi-Operator'                    DESC 'Name of UDDI Registry Operator' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.3 NAME 'uddi-Name'                        DESC 'Business Entity Name' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{258} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.4 NAME 'uddi-Description'                 DESC 'Description of Business Entity' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.7 NAME 'uddi-Use-Type'                    DESC 'Name of convention that the 
referenced document follows' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.8 NAME 'uddi-URL'                         DESC 'URL' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.9 NAME 'uddi-Person-Name'                 DESC 'Name of Contact Person' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.10 NAME 'uddi-Phone'                      DESC 'Telephone Number' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{50} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.11 NAME 'uddi-Email'                      DESC 'Email address' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.12 NAME 'uddi-Sort-Code'                  DESC 'Code to sort addresses' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{10} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.13 NAME 'uddi-tModel-Key'                 DESC 'Key to reference a tModel entry' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.14 NAME 'uddi-Address-Line'               DESC 'Actual address lines in free 
form text' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{80} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.15 NAME 'uddi-Service-Key'                DESC 'Service Key' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.16 NAME 'uddi-Service-Name'               DESC 'Service Name' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.17 NAME 'uddi-Binding-Key'                DESC 'Binding Key' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.18 NAME 'uddi-Access-Point'               DESC 'A text field to convey the entry 
point address for calling a web service' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.19 NAME 'uddi-Hosting-Redirector'         DESC 'Provides a Binding Key attribute 
to redirect reference to a different binding template' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE 
X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.20 NAME 'uddi-Instance-Parms'             DESC 'Parameters to use a specific 
facet of a bindingTemplate description' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.21 NAME 'uddi-Overview-URL'               DESC 'URL reference to a long form of 
an overview document' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.22 NAME 'uddi-From-Key'                   DESC 'Unique key reference to first 
businessEntity assertion is made for' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.23 NAME 'uddi-To-Key'                     DESC 'Unique key reference to second 
businessEntity assertion is made for' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{41} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.24 NAME 'uddi-Key-Name'                   DESC 'An attribute of the 
KeyedReference structure' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.25 NAME 'uddi-Key-Value'                  DESC 'An attribute of the 
KeyedReference structure' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.26 NAME 'uddi-Auth-Info'                  DESC 'Authorization information' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{4096} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.27 NAME 'uddi-Key-Type'                   DESC 'The key for all UDDI entries' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.28 NAME 'uddi-Upload-Register'            DESC 'The upload register' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.29 NAME 'uddi-URL-Type'                   DESC 'The type for the URL' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{16} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.30 NAME 'uddi-Ref-Keyed-Reference'        DESC 'reference to a keyedReference 
entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255}  X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.31 NAME 'uddi-Ref-Category-Bag'           DESC 'reference to a categoryBag 
entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255}  X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.32 NAME 'uddi-Ref-Identifier-Bag'         DESC 'reference to a identifierBag 
entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255}  X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.33 NAME 'uddi-Ref-TModel'                 DESC 'reference to a TModel entry' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255} SINGLE-VALUE X-ORIGIN 'acumen defined' )
# id names for each entry
attributeTypes: ( 11827.0001.1.34 NAME 'uddi-Contact-ID'                 DESC 'Unique ID which will serve as 
the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.35 NAME 'uddi-Discovery-URL-ID'           DESC 'Unique ID which will serve as 
the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.36 NAME 'uddi-Address-ID'                 DESC 'Unique ID which will serve as 
the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.37 NAME 'uddi-Overview-Doc-ID'            DESC 'Unique ID which will serve as 
the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.38 NAME 'uddi-Instance-Details-ID'        DESC 'Unique ID which will serve as 
the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.39 NAME 'uddi-tModel-Instance-Info-ID'    DESC 'Unique ID which will serve as 
the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.40 NAME 'uddi-Publisher-Assertions-ID'    DESC 'Unique ID which will serve as 
the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.41 NAME 'uddi-Keyed-Reference-ID'         DESC 'Unique ID which will serve as 
the Distinguished Name of each entry' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{16} SINGLE-VALUE X-ORIGIN 'acumen 
defined' )
attributeTypes: ( 11827.0001.1.42 NAME 'uddi-Ref-Attribute'              DESC 'a reference to another entry' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.43 NAME 'uddi-Entity-Name'                DESC 'Business entity Name' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{258} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.44 NAME 'uddi-tModel-Name'                DESC 'tModel Name' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{255} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.45 NAME 'uddi-tMII-TModel-Key'            DESC 'tModel key referneced in 
tModelInstanceInfo' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.46 NAME 'uddi-Keyed-Reference-TModel-Key' DESC 'tModel key referneced in 
KeyedReference' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.47 NAME 'uddi-Address-tModel-Key'         DESC 'tModel key referneced in 
Address' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.48 NAME 'uddi-isHidden'                   DESC 'a flag to indicate whether an 
entry is hidden' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.49 NAME 'uddi-Time-Stamp'                 DESC 'modification time satmp' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.50 NAME 'uddi-next-id'                    DESC 'generic counter' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.51 NAME 'uddi-tModel-origin'              DESC 'tModel origin' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.52 NAME 'uddi-tModel-type'                DESC 'tModel type' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.53 NAME 'uddi-tModel-checked'             DESC 'tModel field to check or not' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.54 NAME 'uddi-user-quota-entity'          DESC 'quota for business entity' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.55 NAME 'uddi-user-quota-service'         DESC 'quota for business services per 
entity' SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.56 NAME 'uddi-user-quota-binding'         DESC 'quota for binding templates per 
service' SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.57 NAME 'uddi-user-quota-tmodel'          DESC 'quota for tmodels' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.58 NAME 'uddi-user-quota-assertion'       DESC 'quota for publisher assertions' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.59 NAME 'uddi-user-quota-messagesize'     DESC 'quota for maximum message size' 
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.60 NAME 'uddi-user-language'              DESC 'user language' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.61 NAME 'uddi-Name-Soundex'               DESC 'name in soundex format' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15{258} X-ORIGIN 'acumen defined' )
attributeTypes: ( 11827.0001.1.62 NAME 'uddi-var'                        DESC 'generic variable' SYNTAX 
1.3.6.1.4.1.1466.115.121.1.15 X-ORIGIN 'acumen defined' )
#
# objectclasses:
#
objectClasses: ( 11827.0001.2.0 NAME 'uddi-Business-Entity'              DESC 'Business Entity object' SUP top 
STRUCTURAL MUST (uddi-Business-Key $ uddi-Entity-Name $ uddi-isHidden $ uddi-Authorized-Name ) MAY ( 
uddi-Name-Soundex $ uddi-Operator $ uddi-Description $ uddi-Ref-Identifier-Bag $ uddi-Ref-Category-Bag ) 
X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.1 NAME 'uddi-Business-Service'             DESC 'Business Service object' SUP top 
STRUCTURAL MUST ( uddi-Service-Key $ uddi-Service-Name $ uddi-isHidden ) MAY ( uddi-Name-Soundex $ 
uddi-Description $ uddi-Ref-Category-Bag ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.2 NAME 'uddi-Binding-Template'             DESC 'Binding Template object' SUP TOP 
STRUCTURAL   MUST ( uddi-Binding-Key $ uddi-isHidden ) MAY ( uddi-Description $ uddi-Access-Point $ 
uddi-Hosting-Redirector ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.3 NAME 'uddi-tModel'                       DESC 'tModel object' SUP top 
STRUCTURAL   MUST (uddi-tModel-Key $ uddi-tModel-Name $ uddi-isHidden $ uddi-Authorized-Name ) MAY ( 
uddi-Name-Soundex $ uddi-Operator $ uddi-Description $ uddi-Ref-Identifier-Bag $ uddi-Ref-Category-Bag $ 
uddi-tModel-origin $ uddi-tModel-checked $ uddi-tModel-type ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.4 NAME 'uddi-Publisher-Assertion'          DESC 'Publisher Assertion object' SUP 
TOP STRUCTURAL   MUST ( uddi-Publisher-Assertions-ID $ uddi-From-Key $ uddi-To-Key $ uddi-Ref-Keyed-Reference ) 
X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.5 NAME 'uddi-Discovery-URL'                DESC 'Discovery URL' SUP TOP 
STRUCTURAL   MUST ( uddi-Discovery-URL-ID $ uddi-Use-Type $ uddi-URL ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.6 NAME 'uddi-Contact'                      DESC 'Contact Information' SUP TOP 
STRUCTURAL   MUST ( uddi-Contact-ID $ uddi-Person-Name ) MAY ( uddi-Use-Type $ uddi-Description $ uddi-Phone $ 
uddi-Email $ uddi-tModel-Key ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.7 NAME 'uddi-Address'                      DESC 'Address information for a 
contact entry' SUP TOP STRUCTURAL   MUST ( uddi-Address-ID ) MAY ( uddi-Use-Type $ uddi-Sort-Code $ 
uddi-Address-tModel-Key $ uddi-Address-Line ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.8 NAME 'uddi-Keyed-Reference'              DESC 'KeyedReference' SUP TOP 
STRUCTURAL   MUST ( uddi-Keyed-Reference-ID $ uddi-Key-Value ) MAY ( uddi-Key-Name $ 
uddi-Keyed-Reference-TModel-Key ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.9 NAME 'uddi-tModel-Instance-Info'         DESC 'tModelInstanceInfo' SUP TOP 
STRUCTURAL   MUST ( uddi-tModel-Instance-Info-ID $ uddi-tMII-TModel-Key ) MAY ( uddi-Description ) X-ORIGIN 
'acumen defined' )
objectClasses: ( 11827.0001.2.10 NAME 'uddi-Instance-Details'            DESC 'instanceDetails' SUP TOP 
STRUCTURAL   MUST ( uddi-Instance-Details-ID ) MAY ( uddi-Description $ uddi-Instance-Parms ) X-ORIGIN 'acumen 
defined' )
objectClasses: ( 11827.0001.2.11 NAME 'uddi-Overview-Doc'                DESC 'overviewDoc' SUP TOP STRUCTURAL   
MUST ( uddi-Overview-Doc-ID ) MAY ( uddi-Description $ uddi-Overview-URL ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.12 NAME 'uddi-Ref-Object'                  DESC 'an object class conatins a 
reference to another entry' SUP TOP STRUCTURAL MUST ( uddi-Ref-Attribute ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.13 NAME 'uddi-Ref-Auxiliary-Object'        DESC 'an auxiliary type object used in 
another structural class to hold a reference to a third entry' SUP TOP AUXILIARY MUST ( uddi-Ref-Attribute ) 
X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.14 NAME 'uddi-ou-container'                DESC 'an organizational unit with uddi 
attributes' SUP organizationalunit STRUCTURAL MAY ( uddi-next-id $ uddi-var ) X-ORIGIN 'acumen defined' )
objectClasses: ( 11827.0001.2.15 NAME 'uddi-User'                        DESC 'a User with uddi attributes' SUP 
inetOrgPerson STRUCTURAL MUST ( uid $ uddi-user-language $ uddi-user-quota-entity $ uddi-user-quota-service $ 
uddi-user-quota-tmodel $ uddi-user-quota-binding $ uddi-user-quota-assertion $ uddi-user-quota-messagesize ) 
X-ORIGIN 'acumen defined' )

uddi.properties ファイルのプロパティ

次の表に、uddi.properties ファイルのプロパティを、説明される UDDI のタイプ別に示します。

表 11-2 基本的な UDDI コンフィグレーション

UDDI プロパティ キー 説明
auddi.discoveryurl

保存されたビジネス エンティティごとに設定される DiscoveryURL プレフィックス。通常、これは uddilistener サーブレットの完全な URL となるため、完全な DiscoveryURL を指定すると、格納された BusinessEntity データが表示される。

auddi.inquiry.secure

有効値は、true および falsetrue に設定すると、UDDI サーバの照会呼び出しはセキュアな https 接続だけに制限される。通常の http URL を介した UDDI 照会呼び出しは拒否される。

auddi.publish.secure

有効値は、true および falsetrue に設定すると、UDDI サーバのパブリッシュ呼び出しはセキュアな https 接続だけに制限される。通常の http URL を介した UDDI パブリッシュ呼び出しは拒否される。

auddi.search.maxrows

検索操作で返される行の最大数。検索の結果がこの最大行数を超えると、結果が切り詰められる。

auddi.search.timeout

検索操作のタイムアウト値。この値は、ミリ秒単位で指定する。

auddi.siteoperator

UDDI レジストリのサイト オペレータの名前。指定した値はオペレータ属性として使用され、以後のすべての BusinessEntity 登録に保存される。この属性は応答で返され、どの UDDI レジストリが応答を生成したかを示す。

security.cred.life

認証の資格の有効期間 (秒単位で指定)。ユーザの認証時に、このプロパティで指定した有効期限を持つ AuthToken が割り当てられる。

pluggableTModel.file.list

UDDI サーバには、標準の TModel があらかじめ組み込まれている。独自の分類法を使用して、TModel 形式で UDDI サーバをさらにカスタマイズできる。分類法は、XML スキーマに従って XML ファイルに定義する必要がある。このプロパティの値は、URI (XML ファイルなど) のカンマ区切りリストである。これらの TModel を表す値は、指定した分類法に照らし合わされてチェックおよび検証される。


表 11-3 UDDI のユーザ デフォルト

UDDI プロパティ キー 説明
auddi.default.lang

ユーザの初期言語。デフォルトでは作成時にユーザ プロファイルに割り当てられる。ユーザ プロファイルの設定は、サインアップ時またはそれ以降に変更できる。

auddi.default.quota.assertion

ユーザの初期アサーション割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。アサーション割り当ては、ユーザがパブリッシュできるパブリッシャ アサーションの最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。

auddi.default.quota.binding

ユーザの初期バインディング割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。バインディング割り当ては、ビジネス サービスごとにユーザがパブリッシュできるバインディング テンプレートの最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。

auddi.default.quota.entity

ユーザの初期ビジネス エンティティ割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。エンティティ割り当ては、ユーザがパブリッシュできるビジネス エンティティの最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。

auddi.default.quota.messageSize

ユーザの初期メッセージ サイズ制限。デフォルトでは作成時にユーザ プロファイルに割り当てられる。メッセージ サイズ制限は、ユーザが UDDI サーバに送信できる SOAP 呼び出しの最大サイズ。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。

auddi.default.quota.service

ユーザの初期サービス割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。サービス割り当ては、ビジネス エンティティごとにユーザがパブリッシュできるビジネスサービスの最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。

auddi.default.quota.tmodel

ユーザの初期 TModel 割り当て。デフォルトでは作成時にユーザ プロファイルに割り当てられる。TModel 割り当ては、ユーザがパブリッシュできる TModel の最大数。制限を設定しない場合は、値を -1 に設定する。ユーザのプロファイル設定は、サインアップ時またはそれ以降に変更できる。


表 11-4 一般的なサーバのコンフィグレーション

UDDI プロパティ キー 説明
auddi.datasource.type

UDDI データの物理ストレージの場所。この値はデフォルトでは WLS となる。これは、WebLogic Server の内部 LDAP ディレクトリがデータ ストレージ用に使用されることを示す。それ以外の有効値は、LDAPReplicaLDAP、および File

auddi.security.type

UDDI サーバのセキュリティ モジュール (認証)。この値はデフォルトでは WLS となる。これは、WebLogic Server のデフォルト セキュリティ レルムが UDDI 認証用に使用されることを示す。このため、WebLogic Server ユーザは UDDI サーバ ユーザとなる。また、どの WebLogic Server 管理者も UDDI サーバ管理者となり、UDDI サーバ設定で定義されている UDDI サーバの管理者グループのメンバーに加えられる。それ以外の有効値は、LDAP および File

auddi.license.dir

UDDI サーバのライセンス ファイルの場所。このプロパティを指定しない場合、WL_HOME/server/lib ディレクトリがデフォルトのライセンス ディレクトリと見なされる。WL_HOME は、WebLogic Server のメイン インストール ディレクトリ。一部の WebLogic ユーザは、基本 UDDI サーバ コンポーネントの UDDI サーバ ライセンスの取得を免除されているが、追加コンポーネント (UDDI サーバ ブラウザなど) についてはライセンスが必要になる場合がある。

auddi.license.file

ライセンス ファイルの名前。このプロパティを指定しない場合、uddilicense.xml がデフォルトのライセンス ファイル名と見なされる。一部の WebLogic ユーザは、基本 UDDI サーバ コンポーネントの UDDI サーバ ライセンスの取得を免除されているが、追加コンポーネント (UDDI サーバ ブラウザなど) についてはライセンスが必要になる場合がある。


表 11-5 ログ機能のコンフィグレーション

UDDI プロパティ キー 説明
logger.file.maxsize

ログ機能の出力ファイルの最大サイズ (出力がファイルに送信される場合)。単位は KB。出力ファイルが最大サイズに達すると、そのファイルは閉じられ、新しいログ ファイルが作成される。

logger.indent.enabled

有効値は、true および falsetrue に設定すると、「+」および「-」で始まるログ メッセージ (通常 TRACE レベルのログ) によって出力のインデントが増減される。

logger.indent.size

各インデントのサイズ (スペースの数)。整数として指定する。

logger.log.dir

ログ ファイルが格納されるディレクトリの絶対パスまたは相対パス。

logger.log.file.stem

すべてのログ ファイル名の先頭に付加される文字列。

logger.log.type

ログ メッセージの出力先を画面にするか、ファイルにするか、またはその両方にするかを決定する。有効値は、それぞれ LOG_TYPE_SCREENLOG_TYPE_FILELOG_TYPE_SCREEN_FILE

logger.output.style

ログ出力にメッセージだけを含めるか、またはスレッドおよびタイムスタンプ情報を含めるかを決定する。有効値は、OUTPUT_LONGOUTPUT_SHORT

logger.quiet

ログ機能自体に情報メッセージを表示するかどうかを決定する。有効値は、true および false

logger.verbosity

ログ機能の冗長レベル。有効値 (大文字と小文字は区別される) は、TRACEDEBUGINFOWARNINGERROR。各重大度には、下位の重大度も含まれる。


表 11-6 接続プール

UDDI プロパティ キー 説明
datasource.ldap.pool.increment

プール内のすべての接続がビジーの場合に、作成してプールに追加する新しい接続の数。

datasource.ldap.pool.initialsize

プールの作成および初期化時に格納される接続数。

datasource.ldap.pool.maxsize

プールが保持できる接続の最大数。

datasource.ldap.pool.systemmaxsize

プールがその最大容量に達した後に作成される接続の最大数。プールが最大サイズに達し、すべての接続がビジーの場合、新しい接続が一時的に作成されてクライアントに返される。この接続はプールには格納されない。しかし、システムの最大サイズに達すると、ビジー接続が使用可能になるまで新しい接続リクエストはすべてブロックされる。


表 11-7 LDAP データストアのコンフィグレーション

UDDI プロパティ キー 説明
datasource.ldap.manager.uid

LDAP にデータを保存できるバックエンド LDAP サーバ管理者または特権を持つユーザの ID (cn=Directory Manager など)。

datasource.ldap.manager.password

datasource.ldap.manager.uid のパスワード。データ ストレージ用の LDAP ディレクトリとの接続を確立する。

datasource.ldap.server.url

データ ストレージ用の LDAP ディレクトリの「ldap://」URL。

datasource.ldap.server.root

データ ストレージ用の LDAP ディレクトリのルート エントリ (dc=acumenat、dc=com など)。



注意 :

複製 LDAP 環境には、「m」LDAP マスタと「n」LDAP レプリカがあります。これらの番号は、それぞれ 0 から (m-1) および 0 から (n-1) です。次のプロパティ キーの 5 番目の部分の「i」はこの番号を表しており、定義されている LDAP サーバ インスタンスによって異なります。

表 11-8 複製 LDAP データストアのコンフィグレーション

UDDI プロパティ キー 説明
datasource.ldap.server.master.i.manager.uid

LDAP にデータを保存できる、このマスタ LDAP サーバ ノードの管理者または特権を持つユーザ ID (cn=Directory Manager など)。

datasource.ldap.server.master.i.manager.password

datasource.ldap.server.master.i.manager.uid のパスワード。データを書き込むための関連するマスタ LDAP ディレクトリとの接続を確立する。

datasource.ldap.server.master.i.url

対応する LDAP ディレクトリ ノードの「ldap://」URL。

datasource.ldap.server.master.i.root

対応する LDAP ディレクトリ ノードのルート エントリ (dc=acumenat、dc=com など)。

datasource.ldap.server.replica.i.manager.uid

このレプリカ LDAP サーバ ノードのユーザ ID (cn=Directory Manager など)。このユーザは LDAP から UDDI データを読み出すことができる。

datasource.ldap.server.replica.i.manager.password

datasource.ldap.server.replica.i.manager.uid のパスワード。データを読み出すための関連するレプリカ LDAP ディレクトリとの接続を確立する。

datasource.ldap.server.replica.i.url

対応する LDAP ディレクトリ ノードの「ldap://」URL。

datasource.ldap.server.replica.i.root

対応する LDAP ディレクトリ ノードのルート エントリ (dc=acumenat、dc=com など)。


表 11-9 ファイル データストアのコンフィグレーション

UDDI プロパティ キー 説明
datasource.file.directory

UDDI データを格納するファイル システムのディレクトリ。


表 11-10 一般的なセキュリティのコンフィグレーション

UDDI プロパティ キー 説明
security.custom.group.operators

セキュリティ グループ名。このグループのメンバーは UDDI 管理者として扱われる。


表 11-11 LDAP セキュリティのコンフィグレーション

UDDI プロパティ キー 説明
security.custom.ldap.manager.uid

セキュリティ LDAP サーバ管理者または特権を持つユーザ ID (cn=Directory Manager など)。このユーザは、LDAP にデータを保存することができる。

security.custom.ldap.manager.password

このプロパティの値は、上記のユーザ ID のパスワードであり、セキュリティ用の LDAP ディレクトリに接続するために使用する。

security.custom.ldap.url

このプロパティの値は、セキュリティ用の LDAP ディレクトリの「ldap://」URL。

security.custom.ldap.root

セキュリティ用の LDAP ディレクトリのルート エントリ (dc=acumenatdc=com など)。

security.custom.ldap.userroot

セキュリティ LDAP サーバのユーザ ルート エントリ。ou=People など。

security.custom.ldap.group.root

セキュリティ LDAP サーバのオペレータ エントリ。たとえば、「cn=UDDI Administrators, ou=Groups」のように指定する。このエントリにはすべての UDDI 管理者の ID が含まれる。


表 11-12 ファイル セキュリティのコンフィグレーション

UDDI プロパティ キー 説明
security.custom.file.userdir

UDDI セキュリティ情報 (ユーザとグループ) の格納先となるファイル システムのディレクトリ。


UDDI ディレクトリ エクスプローラ

UDDI ディレクトリ エクスプローラを使用すると、認可されたユーザは、WebLogic Server のプライベートな UDDI レジストリに Web サービスをパブリッシュしたり、すでに公開されている Web サービスの情報を変更することができます。また、Web サービスおよび関連付けられた WSDL ファイル (利用可能な場合) に関する詳細情報にアクセスすることができます。

また、UDDI ディレクトリ エスプローラを使用して、パブリックとプライベート両方の UDDI レジストリにある Web サービスおよびこれらの Web サービスを提供している企業や部門に関する情報を検索できます。

ブラウザで UDDI ディレクトリ エクスプローラを起動するには、次の URL を入力します。

http://host:port/uddiexplorer

各要素の説明は次のとおりです。


注意 :

Oracle WebLogic Server ユーザ名およびパスワードを使用して、[UDDI ディレクトリク エクスプローラ] ページにアクセスします。

UDDI ディレクトリ エクスプローラを使用して、以下のタスクを実行できます。

UDDI ディレクトリ エクスプローラの使い方の詳細については、メイン ページの [Explorer Help] リンクをクリックしてください。

UDDI クライアント API

WebLogic Server には、Java クライアント アプリケーションで Web サービスをプログラムから検索およびパブリッシュするために使用できるクライアントサイド UDDI API が組み込まれています。

UDDI クライアント API には、InquiryPublish という、2 つの主なクラスがあります。Inquiry クラスは、既知の UDDI レジストリにある Web サービスの検索に使用し、Publish クラスは、開発した Web サービスを既知のレジストリに追加するために使用します。

WebLogic Server では、以下のクライアント UDDI API パッケージを実装しています。

これらのパッケージの使い方の詳細については、『Oracle Fusion Middleware Oracle WebLogic Server 10.3.1 API リファレンス』を参照してください。

プラガブル tModel

分類法は、基本的に categoryBag または identifierBag によって参照として使用される tModel です。主な相違点は、単純な tModel に対して、分類法の参照は一般にチェックおよび検証されることです。WebLogic Server の UDDI サーバはこのコンセプトを活用し、プラガブル tModel という独自の分類法を採用することでこの機能を拡張します。プラガブル tModel を使用すると、ユーザ (UDDI 管理者) は独自のチェック済み分類法を UDDI レジストリに追加し、標準の分類法を上書きできます。

プラガブル tModel を追加するには、次の手順に従います。

  1. プラガブル tModel の XML スキーマ」で説明する形式に従って、tModelKey/categorization ごとに XML ファイルを作成します。

  2. UDDI サーバをコンフィグレーションするために使用する uddi.properties ファイルの pluggableTModel.file.list プロパティに、ファイルのカンマ区切りの完全修飾名を追加します。次に例を示します。

    pluggableTModel.file.list=c:/temp/cat1.xml,c:/temp/cat2.xml
    

    uddi.properties ファイルの詳細については、「UDDI 2.0 サーバのコンフィグレーション」を参照してください。

  3. Weblogic Server を再起動します。

以下の節では、XML 要素とその有効値の表、プラガブル tModel の検証に使用する XML スキーマ、およびサンプル XML を示します。

XML 要素と許容値

次の表に、プラガブル tModel を記述する XML ファイルの要素について説明します。

表 11-13 プラガブル tModel をコンフィグレーションするための XML 要素の説明

要素/属性 必須 ロール 備考

Taxonomy

必須

ルート要素。

-

なし

checked

必須

この分類がチェックされるかどうか。

true または false

false を指定すると、keyValue は検証されない。

type

必須

tModel のタイプ。

categorization、identifier、uddi-org-types で定義した有効値

有効値については uddi-org-types tModel を参照。

applicability

省略可能

tModel の使用に関する制約。

-

この要素を指定しない場合、制約があるとは見なされない。

scope

applicability 要素が含まれている場合は必須

tModel の使用に関する制約。

businessEntity、businessService、bindingTemplate、tModel

「bindingTemplate」を指定した場合、tModel は tModelInstanceInfo で使用できる。

tModel

必須

UDDI データ構造に従った実際の tModel。

有効な tModelKey

なし

categories

checked が true の場合は必須

-

-

なし

category

categories 要素が含まれている場合は必須

実際の keyName と keyValue を保持する。

keyName と keyValue のペア

category は、グループ化またはツリー構造用にネストできる。

keyName

必須

-

-

なし

keyValue

必須

-

-

なし


プラガブル tModel の XML スキーマ

プラガブル tModel の XML スキーマは次のように検証されます。

<simpleType name="type">
  <restriction base="string"/>
</simpleType>

<simpleType name="checked">
  <restriction base="NMTOKEN">
    <enumeration value="true"/>
    <enumeration value="false"/>
  </restriction>
</simpleType>

<element name="scope" type="string"/>

<element name = "applicability" type = "uddi:applicability"/>

<complexType name = "applicability">
  <sequence>
    <element ref = "uddi:scope" minOccurs = "1" maxOccurs = "4"/>
  </sequence>
</complexType>

<element name="category" type="uddi:category"/>

<complexType name = "category">
  <sequence>
    <element ref = "uddi:category" minOccurs = "0" maxOccurs = "unbounded"/>

  </sequence>
  <attribute name = "keyName" use = "required" type="string"/>
  <attribute name = "keyValue" use = "required" type="string"/>
</complexType>
<element name="categories" type="uddi:categories"/>

<complexType name = "categories">
  <sequence>
    <element ref = "uddi:category" minOccurs = "1" maxOccurs = "unbounded"/>
  </sequence>
</complexType>

<element name="Taxonomy" type="uddi:Taxonomy"/>

<complexType name="Taxonomy">
  <sequence>
    <element ref = "uddi:applicability" minOccurs = "0" maxOccurs = "1"/>
    <element ref = "uddi:tModel" minOccurs = "1" maxOccurs = "1"/>
    <element ref = "uddi:categories" minOccurs = "0" maxOccurs = "1"/>
  </sequence>
  <attribute name = "type" use = "required" type="uddi:type"/>
  <attribute name = "checked" use = "required" type="uddi:checked"/>
</complexType>

プラガブル tModel のサンプル XML

次に、プラガブル tModel のサンプル XML を示します。

<?xml version="1.0" encoding="UTF-8" ?>

  <SOAP-ENV:Envelope 
      xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">

  <SOAP-ENV:Body>

   <Taxonomy checked="true" type="categorization" xmlns="urn:uddi-org:api_v2" >
    <applicability>
        <scope>businessEntity</scope>
        <scope>businessService</scope>
        <scope>bindingTemplate</scope>
    </applicability>
    <tModel  tModelKey="uuid:C0B9FE13-179F-41DF-8A5B-5004DB444tt2" >
        <name> sample pluggable tModel </name>
        <description>used for test purpose only </description>
            <overviewDoc>
                <overviewURL>http://www.abc.com </overviewURL>
            </overviewDoc>
    </tModel>
    <categories>
        <category keyName="name1 " keyValue="1">
            <category keyName="name11" keyValue="12">
                <category keyName="name111" keyValue="111">
                    <category keyName="name1111" keyValue="1111"/>
                    <category keyName="name1112" keyValue="1112"/>
                </category>
                <category keyName="name112" keyValue="112">
                    <category keyName="name1121" keyValue="1121"/>
                    <category keyName="name1122" keyValue="1122"/>
                </category>
            </category>
        </category>
        <category keyName="name2 " keyValue="2">
            <category keyName="name21" keyValue="22">
                <category keyName="name211" keyValue="211">
                    <category keyName="name2111" keyValue="2111"/>
                    <category keyName="name2112" keyValue="2112"/>
                </category>
                <category keyName="name212" keyValue="212">
                    <category keyName="name2121" keyValue="2121"/>
                    <category keyName="name2122" keyValue="2122"/>
                </category>
            </category>
        </category>
    </categories>
   </Taxonomy>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>