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>