SOAP 語法
SOAP 構建模塊
一條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 處理指令
SOAP 消息的基本結構
<?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>
<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>