SOAPを利用してやり取りするメッセージの構造やメッセージの送受信に関する仕様が,SOAP1.1仕様としてW3Cで規定されています。次に,SOAP 1.1として規定されている仕様の概要について示します。
- SOAPメッセージ
- クライアントとサーバ間でやり取りするメッセージの構造を規定しています。SOAPメッセージは,SOAPエンベロープと呼ばれるXMLドキュメントの形式の構造を持ち,SOAPヘッダとSOAPボディという要素を持ちます。SOAPボディには,送受信するメッセージを記述します。SOAPメッセージの構造を次に示します。
図1-3 SOAPメッセージの構造
- SOAP符号化規則
- SOAPアプリケーションで使用する変数,配列などのデータを,XML文書であるSOAPメッセージ中にどのように記述するかを規定します。データ型とそのXML記述形式とのマッピングルールです。
- SOAPエンコーディング
- SOAP符号化規則の一つで,SOAP1.1仕様で定義されます。
- この符号化規則を使用する場合,encodingStyle属性には"http://schemas.xmlsoap.org/soap/encoding/"を指定し,use属性には"encoded"を指定します。広く使われていますが,WS-I Basic Profile 1.0a に対応する場合には推奨されていません。
- リテラルエンコーディング
- SOAP符号化規則の一つで,符号化に際して具体的なXMLスキーマ定義を参照します。この符号化規則を使用する場合,encodingStyle属性は指定せず,use属性には"literal"を指定します。WS-I Basic Profile 1.0a ではSOAPエンコーディングではなく,こちらを使用することが推奨されています。
- SOAP Fault
- SOAPメッセージの処理中に発生したエラーを記述するためのSOAPメッセージを表します。SOAP Faultは,SOAPエンジンが作成するものと,SOAPサービスの開発者が作成するものに分けられます。
- HTTPバインディング
- HTTPを利用したSOAPメッセージの交換について規定しています。ただし,HTTPバインディングはNoteでの規定となっており,SOAPの仕様として,トランスポートに何を使用するかは規定していません。
- RPC構造
- SOAPでRPCを行うための構造化の形式を規定します。
SOAPアプリケーション開発支援機能とSOAP 1.1のサポート範囲の関係については,「12.1 SOAP 1.1との対応」を参照してください。
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.