WSDL - <types> 元素

Web 服务需要定义其输入和输出,以及它们如何映射到服务和从服务中映射出来。WSDL <types> 元素负责定义 Web 服务使用的数据类型。类型是 XML 文档或文档部分。

  • types 元素描述了客户端和服务器之间使用的所有数据类型。

  • WSDL 并非专门与特定的类型系统绑定。

  • WSDL 使用 W3C XML Schema 规范作为其定义数据类型的默认选择。

  • 如果服务仅使用 XML Schema 内置的简单类型(例如字符串和整数),则不需要 types 元素。

  • WSDL 允许在单独的元素中定义类型,以便这些类型可在多个 Web 服务中重复使用。

以下是取自 W3C 规范的一段代码。此代码描述了如何在 WSDL 中使用 types 元素。

<types>
   <schema targetNamespace = "http://example.com/stockquote.xsd"
      xmlns = "http://www.w3.org/2000/10/XMLSchema">
		
      <element name = "TradePriceRequest">
         <complexType>
            <all>
               <element name = "tickerSymbol" type = "string"/>
            </all>
         </complexType>
      </element>
		
      <element name = "TradePrice">
         <complexType>
            <all>
               <element name = "price" type = "float"/>
            </all>
         </complexType>
      </element>
		
   </schema>
</types>

数据类型解决了识别您打算在 Web 服务中使用的数据类型和格式的问题。类型信息在发送者和接收者之间共享。因此,消息的接收者需要访问您用于编码数据的信息,并且必须了解如何解码数据。