stormd

          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 on 2009-03-28 17:45 stormd 閱讀(205) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 高青县| 平利县| 大理市| 浦城县| 阿拉善右旗| 麻栗坡县| 泰顺县| 汕头市| 华容县| 旬邑县| 澎湖县| 尚志市| 双鸭山市| 方城县| 阳春市| 汤阴县| 柳江县| 谷城县| 固镇县| 蚌埠市| 哈密市| 湘阴县| 孝昌县| 沧州市| 南溪县| 高阳县| 潍坊市| 灵石县| 长寿区| 宣武区| 乐昌市| 托克逊县| 苍南县| 平顶山市| 丰台区| 龙井市| 潜江市| 南溪县| 宝兴县| 深圳市| 江北区|