Web サービス・アプリケーション - SOAP

SOAP

SOAP は、アプリケーション間でデータを送信するための、 W3C によって定義された XML ベースの言語です。 SOAP は、トランスポートおよびプラットフォームに関して中立です。

すべての Web サービスが SOAP を使用しているわけではありませんが、新規の Web サービス用としてはおそらく最も一般的なメッセージ形式です。

SOAP メッセージ

SOAP メッセージは、以下を含むエンベロープから構成されます。
  • オプションのヘッダー (1 つ以上のヘッダー・ブロックを含む)
  • 必須の本体。
ヘッダーおよび本体の内容は、通常は WSDL によって定義されます。

SOAP スタイル

SOAP は、以下の 2 つのスタイルを定義します。
  • RPC
    SOAP 本体はメソッド呼び出しに対応します。
  • 文書
    SOAP 本体は通常はきめの粗い XML 文書であり、XML スキーマによって明示的に定義されます。

SOAP エンコード

SOAP はさらに、2 つのエンコードを定義します。
  • SOAP のエンコード
    SOAP のエンコードによって、内容は言語別のタイプへの特定のマッピングを暗黙指定する、エンコード・スキームを使用して定義されます。
  • リテラル
    リテラル・エンコードでは、SOAP 内容はスキーマ (通常は XML スキーマ) によって明示的に定義されます。

SOAP のスタイルおよびエンコードの組み合わせ

上記により、 SOAP のスタイルおよびエンコードの 4 つの組み合わせが可能になりますが、以下の 3 つだけが意味があり、 WSDL インポーターおよび生成プログラムによってサポートされます。
  • 文書 - リテラル
  • RPC - リテラル
  • RPC - エンコード (WSDL インポーター専用としてサポートされる)

SOAP のバージョン

SOAP の 2 つのバージョン、1.1 および 1.2 が現在あります。 SOAP 1.1 はおそらくより一般的ですが、いくらかのインターオペラビリティー上の 問題 (主に SOAP エンコードの使用に関連しています) があります。 それらの問題に対する取り組みは、別の規格である WS-I Basic Profile によって行われています。

その他の情報

W3C を http://www.w3.org で、特に SOAP 1.1 および SOAP 1.2 の資料を http://www.w3.org/TR/soap で参照してください。

WS-I を http://www.ws-i.org/ で、特に WS-I Basic Profile を http://www.ws-i.org/deliverables の下で参照してください。

関連概念
メッセージ・フローの概要
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ac34630_