インターネット標準のキー属性の 1 つは、実装ではなく、プロトコルに焦点をあてることです。インターネットは、共用プロトコルを通して正常に相互運用する異機種混合のテクノロジーで構成されています。これにより、個々のベンダーがインターネットに規格を強要しないようにします。オープン・ソース・ソフトウェアの開発は、標準のベンダー・インプリメンテーションの相互運用性を保持する際に極めて重要な役割を担います。
以下の標準は Web サービスで重要な役割を果たしています。Universal Description、Discovery and Integration (UDDI)、 Web サービス記述言語 (WSDL)、Web サービス・インスペクション言語 (WSIL)、 SOAP、および Web Services Interoperability (WS-I)。 これらの標準の関係は、図 2 で説明されています。
UDDI 仕様は、オープンでプラットフォームに依存しない標準を定義します。これによって各企業は、 グローバル・ビジネス・レジストリーで情報を共有し、そのレジストリー上でサービスを発見し、 それらのサービスがインターネット経由で対話する方法を定義することができます。 UDDI について詳しくは、www.uddi.org を参照してください。
WSIL は XML ベースのオープン仕様であり、使用可能な Web サービス用の Web サイトを検査する方法を指定することにより、サービス・プロバイダーの提供場所にあるサービス記述への参照を提供する、分散型サービス・ディスカバリー方式を定義します。 WSIL 文書には、Web サービス記述を検索可能な Web サイトの位置が定義されています。 WSIL は、分散サービス・ディスカバリーに焦点を当てているため、WSIL 仕様は UDDI を補完し、まだ UDDI レジストリーにリストされていない可能性のある Web サイト上で使用可能なサービスのディスカバリーを容易にします。この文書内に『UDDI と WSIL の間の関係』というトピックがあります。 WSIL について詳しくは、www.ibm.com/developerworks/webservices/library/ws-wsilspec.html を参照してください。
WSDL は、ネットワーク上の Web サービスへのインターフェースとそのインスタンスを記述する XML ベースのオープン仕様です。この仕様は拡張可能で、通信で使用されるメッセージ・フォーマットやネットワーク・プロトコルにかかわらず、エンドポイントを記述できます。ビジネスでは、UDDI や WSIL を経由したり、電子メールや Web サイトを介して WSDL の URL をブロードキャストしたりすることで使用できる Web サービス用の WSDL 文書を作成できます。 WSDL については本書の別のトピックで解説します。 WSDL について詳しくは、www.w3.org/TR/wsdl を参照してください。
図 2. SOAP、UDDI、WSIL、および WSDL 間の関係。
サービス・プロバイダーは、Web サービスをホストし、SOAP/HTTP や SOAP/JMS などのプロトコルを使用して、 そのサービスが利用できるようにします。 Web サービスは WSDL 文書で記述されます。この文書は、プロバイダーのサーバーまたは特別のリポジトリーに保管されています。 WSDL 文書は、UDDI Business Registry と WSIL 文書から参照できます。これらには Web サービスの WSDL ファイルへのポインターが設定されています。
WS-I Simple SOAP Binding Profile と WS-I Attachments Profile は、WS-I 適合を要求するために WSDL および Web サービス・プロトコル (SOAP/HTTP) のトラフィックが準拠しなければならない要求のアウトラインです。 Web サービスの WS-I 検証ツールは、現在 WS-I Simple SOAP Binding Profile 1.0 および Attachment Profile 1.0 をサポートしています。この仕様を表示するには、次の WS-I Web サイトを参照し、 「リソース」の下で、「ドキュメンテーション」を選択してください: http://www.ws-i.org
Web サービス・ツールは以下の仕様をサポートします。
| テクノロジーまたは仕様 | サポートされるバージョンまたはレベル |
|---|---|
| トランスポート | |
| HTTP/HTTPS | v1.0 および v1.1 |
| JMS | |
| メッセージング | |
| SOAP 仕様 | v1.1 |
| SOAP 添付 | |
| 説明 | |
| UDDI | v2.0 |
| WSDL | v1.1 |
| WSIL | v1.0 |
| セキュリティー | |
| WS-Security | OASIS 標準 1.0 |
| インターオペラビリティー | |
| WS-I Basic Profile | 1.1.2 |
| WS-I Simple SOAP Binding Profile | 1.0.3 |
| WS-I Attachments Profile | 1.0 |
| その他の標準 | |
| JAX-RPC | v1.0 for J2EE 1.3、v1.1 for J2EE 1.4 |
| JSR 109 | J2EE 1.3 |
| JSR 921 | J2EE 1.4 |