stormd

          2009年3月28日 #

          WSDL文檔結構(轉載)

          WSDL 文檔結構

          WSDL 文檔是利用這些主要的元素來描述某個 web service 的:

          元素 定義
          <portType> web service 執行的操作
          <message> web service 使用的消息
          <types> web service 使用的數據類型
          <binding> web service 使用的通信協議

          一個 WSDL 文檔的主要結構是類似這樣的:

          <definitions>
          <types>
             definition of types........
          </types>
          <message>
             definition of a message....
          </message>
          <portType>
             definition of a port.......
          </portType>
          <binding>
             definition of a binding....
          </binding>
          </definitions>

          WSDL 文檔可包含其它的元素,比如 extension 元素,以及一個 service 元素,此元素可把若干個 web services 的定義組合在一個單一的 WSDL 文檔中。

          如需完整的語法概述,請訪問 WSDL 語法 這一節。

          WSDL 端口

          <portType> 元素是最重要的 WSDL 元素。

          它可描述一個 web service、可被執行的操作,以及相關的消息。

          可以把 <portType> 元素比作傳統編程語言中的一個函數庫(或一個模塊、或一個類)。

           

          WSDL 消息

          <message> 元素定義一個操作的數據元素。

          每個消息均由一個或多個部件組成??梢园堰@些部件比作傳統編程語言中一個函數調用的參數。

           

          WSDL types

          <types> 元素定義 web service 使用的數據類型。

          為了最大程度的平臺中立性,WSDL 使用 XML Schema 語法來定義數據類型。

           

          WSDL Bindings

          <binding> 元素為每個端口定義消息格式和協議細節。

           

          WSDL 實例

          這是某個 WSDL 文檔的簡化的片段:

           

          <message name="getTermRequest">
          <part name="term" type="xs:string"/>
          </message>
          <message name="getTermResponse">
          <part name="value" type="xs:string"/>
          </message>
          <portType name="glossaryTerms">
          <operation name="getTerm">
          <input message="getTermRequest"/>
          <output message="getTermResponse"/>
          </operation>
          </portType>
          

          在這個例子中,<portType> 元素把 "glossaryTerms" 定義為某個端口的名稱,把 "getTerm" 定義為某個操作的名稱。

          操作 "getTerm" 擁有一個名為 "getTermRequest" 的輸入消息,以及一個名為 "getTermResponse" 的輸出消息

          <message> 元素可定義每個消息的部件,以及相關聯的數據類型。

          對比傳統的編程,glossaryTerms 是一個函數庫,而 "getTerm" 是帶有輸入參數 "getTermRequest" 和返回參數 getTermResponse 的一個函數。

          posted @ 2009-03-28 17:45 stormd 閱讀(205) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 清流县| 玉山县| 旬邑县| 岳普湖县| 拜泉县| 库尔勒市| 如东县| 遵义市| 吉木乃县| 西林县| 山西省| 砀山县| 兴山县| 秭归县| 洛宁县| 登封市| 晴隆县| 武宣县| 虞城县| 闵行区| 根河市| 特克斯县| 铁岭市| 福贡县| 阳东县| 通河县| 温宿县| 嘉善县| 宁晋县| 河源市| 佛教| 来宾市| 潞城市| 资阳市| 城步| 上虞市| 安远县| 陆丰市| 京山县| 遂宁市| 岗巴县|