Menu Close

第1章 WSDL コントラクトの概要

概要

WSDL ドキュメントは、Web Service Description Language と、多数の使用可能な拡張機能を使用してサービスを定義します。ドキュメントには、論理部分と具体的な部分があります。コントラクトの抽象化部分は、不要なデータ型やメッセージの実装に関してサービスを定義します。本書の具体的な部分は、サービスを実装するエンドポイントが外部ユーザーに対話する方法を定義します。

サービス設計の推奨方法は、コードを書き込む前に WSDL および XML スキーマでサービスを定義することが推奨されます。WSDL ドキュメントの編集時に、ドキュメントが有効であることと正しいことを確認する必要があります。そのためには、WSDL を理解している必要があります。標準は、W3C の Web サイトである www.w3.org にあります。

1.1. WSDL ドキュメントの構造

概要

WSDL ドキュメントは、ルート definition 要素に含まれる要素のコレクションを指します。これらの要素は、サービスや、そのサービスにアクセスしたエンドポイントを実装する方法を記述します。

WSDL ドキュメントには、2 つの異なる部分があります。

  • 実装に中立的な言葉でサービスを定義する論理部分
  • サービスを実装するエンドポイントがネットワーク上で公開される方法を定義する具体的な部分

論理部分

WSDL ドキュメントの論理部分には、typesmessage、および portType 要素が含まれます。サービスのインターフェースと、サービスによって交換されるメッセージを記述します。types 要素内では、メッセージを構成するデータ構造を定義する XML スキーマが使用されます。サービスで使用されるメッセージの構造を定義するために、多くの message 要素が使用されます。portType 要素には、サービスによって公開される操作によって送信されるメッセージを定義する 1 つ以上の operation 要素が含まれます。

具体的な部分

WSDL ドキュメントの具体的な部分には、binding および service 要素が含まれています。サービスを実装するエンドポイントが外部環境に接続する方法を記述します。binding 要素は、message 要素によって記述されるデータユニットが、SOAP などの具体的なオンザワイヤデータフォーマットにどのようにマッピングされるかを記述します。service 要素には、サービスの実装エンドポイントを定義する 1 つ以上の port 要素が含まれます。