一條 SOAP 消息就是一個普通的 XML 文檔,包含下列元素:
必需的 Envelope 元素,可把此 XML 文檔辨別為一條 SOAP 消息
可選的 Header 元素,包含頭部資訊
必需的 Body 元素,包含所有的調用和響應資訊
可選的 Fault 元素,提供有關在處理此消息所發生錯誤的資訊
所有以上的元素均被聲明于針對 SOAP 封裝的預設命名空間中:
http://www.w3.org/2001/12/soap-envelope
以及針對 SOAP 編碼和資料類型的預設命名空間:
http://www.w3.org/2001/12/soap-encoding
這裡是一些重要的文法規則:
SOAP 消息必須用 XML 來編碼
SOAP 消息必須使用 SOAP Envelope 命名空間
SOAP 消息必須使用 SOAP Encoding 命名空間
SOAP 消息不能包含 DTD 引用
SOAP 消息不能包含 XML 處理指令
<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
<soap:Header>
...
</soap:Header>
<soap:Body>
<soap:Fault>
</soap:Fault>
</soap:Body>
</soap:Envelope>