解析Web接口描述语言WSDL(6)

web

3、 MIME 绑定

  WSDL包含了以某种MIME格式将抽象类型与具体消息绑定在一起的方式。为下列MIME类型定义了绑定:

  multipart/related
  text/XML
  application/x-www-form-urlencoded (此格式用于替代HTML中的表单)
  其它 ( 由MIME类型字符串指定)

  对MIME类型的定义的工作量很大,且是发展的,因此为每种MIME类型费力地定义XML语法不是WSDL的目标。在需要时,不排除增加额外的语法以定义另外的MIME类型。如果MIME类型字符串提供的信息足够描述内容,那么就可以使用下面定义的mime元素。

  MIME绑定使用下列元素扩展WSDL:(注意黑体标注)

<mime:content part="nmtoken"? type="string"?/>…1
<mime:multipartRelated>…2
<mime:part> * …3
<-- mime element -->
</mime:part>
</mime:multipartRelated>
<mime:mimeXMLpart="nmtoken"?/> …4

  1)mime:content

  为了避免为每个MIME格式定义新的元素,如果不需要传送格式(而不是MIME类型字符串)的附加信息,就可以使用mime:content元素。

  <mime:content part="nmtoken"? type="string"?/>

  属性part用于指定消息part的名字。如果只有一个part,那么它的属性是可选的。属性type包含MIME类型的字符串。类型的值是由斜杠(/),每个值可以是一个通配符(*)。如果没有指定类型属性,就表示所有的MIME类型是可选的。

  如果返回格式是XML,但模式事先并不知道,通用mime元素可用于指示text/XML:

  <mime:content type="text/XML"/>

  通配符可用于指定某类MIME类型,对所有文本类型如下例所示:

  <mime:content type="text/*"/>

  下面两个例子都指定了所有的mime类型:

  <mime:content type="*/*"/>
  <mime:content/>

  2)mime:multipartRelated

  multipart/related MIME类型任意的MIME格式化部分聚集为一个使用MIME 类型"multipart/related"的消息。

  3)mime:part

  元素mime:part描述了multipart/related消息的各个部分。在mime:part元素中出现的MIME元素用于为各部分指定具体的MIME类型。如果在一个mime:part元素中出现多个MIME元素,那么它们是可相互替换的。

  4)mime:mimeXML为了指定与SOAP不兼容(没有SOAP封装)的XML负荷,但存在一个特殊的模式,就可以使用mime:mimeXml元素指定具体的模式。属性part引用定义了根XML元素具体模式的消息part。如果消息只有一个part,那么就可以忽略part属性。part使用element属性为单个part引用具体模式,或者使用type 属性为组合part进行引用。

  5)soap:body

  当SOAP请求使用MIME绑定时,将元素soap:body作为MIME元素使用是合法的。这指出内容的类型是"text/XML",并且存在SOAP封装。

时间: 2024-10-30 02:32:36

解析Web接口描述语言WSDL(6)的相关文章

解析Web接口描述语言WSDL(1)

web Web服务定义语言(Web Services Definition Language,WSDL)是一个建议性标准,用于描 述Web服务的技术调用语法.WSDL定义了一套基于 XML的语法,将Web服务描述为能够进行消息交换的服务访问点的集合,从而满足了这种需求.WSDL服务定义为分布式系统提供了可机器识别的SDK文档,并且可用于描述自动执行应用程序通信中所涉及的细节.WSDL的当前版本是1.1,规范可以从http://www.w3.org/TR/wsdl获得. WSDL就是描述XMLWe

解析Web接口描述语言WSDL(3)

web WSDL文档被分为两种类型:服务接口(service interface )和服务实现(service implementations).(如下图3所示) 图3 WSDL文档类型 服务接口由 WSDL文档来描述,这种文档包含服务接口的 types.import.message.portType 和 binding 等元素.服务接口包含将用于实现一个或多个服务的 WSDL服务定义.它是 Web 服务的抽象定义,并被用于描述某种特定类型的服务. 通过使用一个 import 元素,一个服务接口

解析Web接口描述语言WSDL(4)

web WSDL设计继承了以XML为基础的当代Web技术标准的开放设计理念.它允许通过扩展使用其它的类型定义语言(不光是XMI Schema),允许使用多种网络传输协议和消息格式(不仅是在规范中定义的SOAP/HTTP.HTTP-GET/POST及MIME等).WSDL也应用了当代软件工程中的复用理念,分离了抽象定义层和具体部署层,使得抽象定义层的复用性大大增加. 1. SOAP绑定 WSDL包括用于SOAP 1.1终端的绑定,此绑定支持下列协议信息规范: 需要指示出此绑定是针对SOAP 1.1

解析Web接口描述语言WSDL(2)

web 2.WSDL对象结构图 从图2所示的WSDL对象结构图可知,一个WSDL文档中可以包含一个Types,多个Message.PortType.Binding和Service. 图2 WSDL对象结构图 其中,Types是一个数据类型定义的容器,包含了所有在消息定义中需要的XML元素的类型定义. Message具体定义了在通信中使用的消息的数据结构,Message元素包含了一组Part元素,每个Part元素都是最终消息的一个组成部分,每个Part都会引用一个DataType来表示它的结构.P

Web Service描述语言 WSDL 详解

http://www.blogjava.net/libin2722/articles/159469.html 为什么使用WSDL? 像Internet协议之类的标准有没有为权威所利用,或者人们这样看待它是因为顺之所获的好处远远超出了代价?曾经有许多试图建立的标准都流产了.有时候,那些还没有普遍使用的标准甚至由法令或政府规定强行推出:Ada语言就是一例. 我相信正是跟随标准所带来的好处使它广泛接受.例如,对于铁路服务来说,真正重要的是,不同公司所铺设的铁路结合到一起,或者是来自好几个公司的产品协调

Web Service描述语言 WSDL 详解(1)--为什么使用WSDL?[转]

web|详解 像Internet协议之类的标准有没有为权威所利用,或者人们这样看待它是因为顺之所获的好处远远超出了代价?曾经有许多试图建立的标准都流产了.有时候,那些还没有普遍使用的标准甚至由法令或政府规定强行推出:Ada语言就是一例. 我相信正是跟随标准所带来的好处使它广泛接受.例如,对于铁路服务来说,真正重要的是,不同公司所铺设的铁路结合到一起,或者是来自好几个公司的产品协调的工作在一起.几家大的企业合力建立了SOAP标准.Web Service描述语言(WSDL)向这种Web Servic

Web Service描述语言 WSDL 详解(1)--为什么使用WSDL?[转]-Web_Serv

像Internet协议之类的标准有没有为权威所利用,或者人们这样看待它是因为顺之所获的好处远远超出了代价?曾经有许多试图建立的标准都流产了.有时候,那些还没有普遍使用的标准甚至由法令或政府规定强行推出:Ada语言就是一例. 我相信正是跟随标准所带来的好处使它广泛接受.例如,对于铁路服务来说,真正重要的是,不同公司所铺设的铁路结合到一起,或者是来自好几个公司的产品协调的工作在一起.几家大的企业合力建立了SOAP标准.Web Service描述语言(WSDL)向这种Web Service的提供商和用

Web Service描述语言 WSDL 详解(2)--WSDL文件示例[转]

web|示例|详解 让我们来研究一下WSDL文件,看看它的结构,以及如何工作.请注意这是一个非常简单的WSDL文档实例.我们的意图只是说明它最显著的特征.以下的内容中包括更加详细的讨论. <?xml version="1.0" encoding="UTF-8" ?><definitions name="FooSample" targetNamespace="http://tempuri.org/wsdl/"

Web Service描述语言 WSDL 详解(2)--WSDL文件示例[转]-Web_Servic

让我们来研究一下WSDL文件,看看它的结构,以及如何工作.请注意这是一个非常简单的WSDL文档实例.我们的意图只是说明它最显著的特征.以下的内容中包括更加详细的讨论.<?xml version="1.0" encoding="UTF-8" ?><definitions name="FooSample" targetNamespace="http://tempuri.org/wsdl/" xmlns:wsdln