| 網際網路套組 |
| --- |
| 應用層 |
| * BGP
* DHCP
* DNS
* FTP
* HTTP
* HTTPS
* IMAP
* LDAP
* MGCP（英语：）
* MQTT
* NNTP
* NTP
* POP
* ONC/RPC
* RTP
* RTSP
* SIP
* SMTP
* SNMP
* Telnet
* TLS／SSL
* SSH
* XMPP
* *更多...*
 |
| 傳輸層 |
| * TCP
* UDP
* DCCP
* SCTP
* RSVP
* *更多...*
 |
| 網路層 |
| * IP
	+ IPv4
	+ IPv6
* ICMP
* ICMPv6
* ECN
* IGMP
* OSPF
* IPsec
* RIP
* *更多...*
 |
| 連結層 |
| * ARP
* NDP
* Tunnels
	+ L2TP
* PPP
* MAC
	+ Ethernet
	+ DSL
	+ ISDN
	+ FDDI
* *更多...*
 |
| * 
* 论
* 编
 |

**SOAP**（原为**Simple Object Access Protocol**的首字母缩写，即**简单对象访问协议**）是交换数据的一种协议规范，使用在计算机网络Web服务（web service）中，交换带结构的信息。SOAP为了简化网页服务器（Web Server）从XML資料庫中提取資料時，节省去格式化頁面時間，以及不同應用程序之間按照HTTP通信协议，遵从XML格式执行资料互换，使其抽象于语言实现、平台和硬件。此標準由IBM、Microsoft、UserLand和DevelopMentor在1998年共同提出，並得到IBM、蓮花（Lotus）、康柏（Compaq）等公司的支持，於2000年提交給全球資訊網聯盟（World Wide Web Consortium，W3C），目前SOAP 1.1版是業界共同的標準，屬於第二代的XML協定（第一代具主要代表性的技術為XML-RPC以及WDDX）。

用一个简单的例子来说明SOAP使用过程，一个SOAP消息可以发送到一个具有Web Service功能的Web站点，例如，一个含有房价信息的数据库，消息的参数中标明这是一个查询消息，此站点将返回一个XML格式的信息，其中包含了查询结果（价格，位置，特点，或者其他信息）。由于数据是用一种标准化的可分析的结构来传递的，所以可以直接被第三方站点所利用。

相关定义
----

* SOAP封装（envelope）：定义了一个框架，描述消息中的内容是什么、是谁发送的、谁应当接受并处理它以及如何处理它们；
* SOAP编码规则（encoding rules）：定义了一种序列化的机制，用于表示应用程序需要使用的数据类型的实例；
* SOAP RPC表示（RPC representation）：定义了一个协定，用于表示远程过程调用和应答；
* SOAP绑定（binding），它定义了SOAP使用哪种协议交换信息。使用HTTP/TCP/UDP协议都可以。

把SOAP绑定到HTTP的方式，同时利用了SOAP的样式和分散的灵活性特点以及HTTP的丰富特征库的优点。在HTTP上传送SOAP并不意味着SOAP会覆盖现有的HTTP语义，而是HTTP上的SOAP语义会自然地映射到HTTP语义。在使用HTTP作为协议绑定的场合中，RPC请求映射到HTTP请求上，而RPC应答映射到HTTP应答。然而，在RPC上使用SOAP并不仅限于HTTP协议绑定。

历史
--

SOAP曾经代表"Simple Object Access Protocol"，但是这种缩写已经在标准的1.2版后被废止了。1.2版在2003年6月24日成为W3C的推荐版本。这种缩写容易与SOA——Service-Oriented Architecture产生歧义，即使它们之间存在非常大的差异。

SOAP由Dave Winer、Don Box、Bob Atkinson、 Mohsen Al-Ghosein於1998年设计，當時只作为一种对象访问协议。现在，SOAP规范 （页面存档备份，存于）由万维网联盟 （页面存档备份，存于）的XML工作组 （页面存档备份，存于）维护。

传输方式
----

SOAP使用因特网应用层协议作为其传输协议。SMTP以及HTTP协议都可以用来传输SOAP消息，但是由于HTTP在如今的因特网结构中工作得很好，特别是在网络防火墙下仍然正常工作，所以被广泛采纳。SOAP亦可以在HTTPS上传输。

SOAP的消息格式采用XML。

语法规则
----

* SOAP消息必须用XML来编码
* SOAP消息必须使用SOAP Envelope命名空间
* SOAP消息必须使用SOAP Encoding命名空间
* SOAP消息不能包含DTD引用
* SOAP消息不能包含XML处理指令

SOAP消息实例
--------

### 请求

```
<soapenv:Envelope
 xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <soapenv:Body>
 <req:echo xmlns:req="http://localhost:8080/wxyc/login.do">
 <req:category>classifieds</req:category>
 </req:echo>
 </soapenv:Body>
</soapenv:Envelope>

```

### 回应

```
<soapenv:Envelope
 xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
 xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">
 <soapenv:Header>
 <wsa:ReplyTo>
 <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
 </wsa:ReplyTo>
 <wsa:From>
 <wsa:Address>http://localhost:8080/axis2/services/MyService</wsa:Address>
 </wsa:From>
 <wsa:MessageID>ECE5B3F187F29D28BC11433905662036</wsa:MessageID>
 </soapenv:Header>
 <soapenv:Body>
 <req:echo xmlns:req="http://localhost:8080/axis2/services/MyService/">
 <req:category>classifieds</req:category>
 </req:echo>
 </soapenv:Body>
</soapenv:Envelope>

```

参见
--

* XML
* XML-RPC
* WDDX
* WSDL
* UDDI
* WS-Security

外部链接
----

* W3C的SOAP页面 （页面存档备份，存于）
* SOAP1.2版说明书 （页面存档备份，存于）
* 教學網站

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| * 
* 论
* 编
（W3C） |
| --- |
|  |
| 產品及標準 | 

|  |  |
| --- | --- |
| 推薦 | 
* ActivityPub
* ARIA（英语：）
* Canonical XML
* CDF（英语：）
* CSS
* DOM
* 地理位置API（英语：）
* HTML（HTML5）
* ITS（英语：）
* MathML
* OWL
* P3P
* PLS（英语：）
* RDF
* RDF Schema（英语：）
* SISR（英语：）
* SKOS
* SMIL
* SOAP
* SRGS（英语：）
* SSML
* SVG
* SPARQL
* Timed Text
* VoiceXML
* 网页存储
* WSDL
* XForms
* XHTML
* XHTML+RDFa（英语：）
* XInclude（英语：）
* XLink
* XML
* XML Base
* XML Encryption
* XML Events（英语：）
* XML信息集
* XML命名空间
* XML Schema
* XML Signature
* XOP（英语：）
* XPath
* XPath 2.0（英语：）
* XPointer（英语：）
* XProc（英语：）
* XQuery（英语：）
* XSL
* XSL-FO
* XSLT（元素（英语：））

 |
|  |
| 记录 | 
* XAdES（英语：）
* XHTML+SMIL（英语：）
* XUP

 |
|  |
| 工作草案 | 
* CCXML（英语：）
* CURIE（英语：）
* EME
* InkML
* JSON-LD
* MSE
* RIF
* SCXML（英语：）
* SMIL時間表（英语：）
* sXBL（英语：）
* WICD（英语：）
* XFDL（英语：）
* XFrames（英语：）
* XBL
* XMLHttpRequest

 |
|  |
| 檢測 | 
* 無障礙網頁檢測

 |
|  |
| 倡議 | 
* 多通道交互活動（MMI）（英语：）
* 驗証服務
* 無障礙網頁倡議（英语：）
* 網絡平台（英语：）

 |
|  |
| 棄用 | 
* C-HTML
* HDML（英语：）
* JSSS（英语：）
* PGML（英语：）
* VML
* XHTML+MathML+SVG（英语：）

 |

 |
|  |
| 機構 | 

|  |
| --- |
| 
* 萬維網基金會（英语：）

 |
|  |
| 工作小組 | 
* SVG（英语：）
* CSS（英语：）
* HTML（英语：）
* WebOnt（語義網活動）（英语：）
* 設備描述（DDWG）（英语：）
* 網頁超文本技術工作小組（WHATWG）

 |

 |
|  |
| 軟件 | 

|  |
| --- |
| 
* CERN httpd
* Libwww

 |
|  |
| 瀏覽器 | 
* Line Mode （1990年－）
* Arena （1993年－1998年）
* Agora （1994年－1997年）（英语：）
* Argo （1994年－1997年）（英语：）
* Amaya （瀏覽器及編輯器，1996年－2012年）

 |

 |
|  |
| 會議 | 
* 國際萬維網大會（WWW大會）（英语：）
	+ 督導委員會（IW3C2）（英语：）
	+ 第一屆（WWW1，1994年）（英语：）

 |

 |