什么是WSDL?
WSDL(Web Service Description Language)Web服务器描述语言是用XML文档来描述Web服务的标准,是Web服务的接口定义语言,由Ariba、Intel、IBM、MS等共同提出,通过WSDL,可描述Web服务的三个基本属性:
·服务做些什么——服务所提供的操作(方法)
·服务做些什么——服务所提供的操作(方法)
·如何访问服务——和服务交互的数据格式以及必要协议
·服务位于何处——协议相关的地址,如URL
WSDL文档以端口集合的形式来描述Web服务,WSDL 服务描述包含对一组操作和消息的一个抽象定义,绑定到这些操作和消息的一个具体协议,和这个绑定的一个网络端点规范。WSDL 文档被分为两种类型:服务接口(service interface )和 服务实现(service implementations),文档基本结构框架如下:
服务接口文档中的主要元素作用分别为:
types:定义了Web服务使用的所有数据类型集合,可被元素的各消息部件所引用。它使用某种类型系统(一般地使用XML Schema中的类型系统)。
-message:通信消息数据结构的抽象类型化定义。使用Types所定义的类型来定义整个消息的数据结构。
operation:对服务中所支持操作的抽象描述。一般单个operation描述了一个访问入口的请求/响应消息对。
portType:对于某个访问入口点类型所支持操作的抽象集合。这些操作可以由一个或多个服务访问点来支持。
binding:包含了如何将抽象接口的元素(portType)转变为具体表示的细节,具体表示也就是指特定的数据格式和协议的结合;特定端口类型的具体协议和数据格式规范的绑定。
port:定义为协议/数据格式绑定与具体Web访问地址组合的单个服务访问点。
service:这是一个粗糙命名的元素,代表端口的集合;相关服务访问点的集合。
可见,portType(与message和type元素的细节相结合)描述了Web服务是什么,binding元素描述了如何使用Web服务,port及service元素描述了Web服务的位置。