WebService WSDL详解(下)

WSDL的Types栏和Messages栏中的XML Schema

WSDL数据类型是基于"XML Schema: Datatypes"(XSD)的,现在已经被W3C推荐。这一文档共有三个版本(1999,2000/10,2001),因此必须在namespace属性的<definitions>元素中指明所使用的是哪一个版本。
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
在本文中,我将只考虑2001版本。WSDL标准的推荐者强烈建议使用2001版。

 

complex类型

XML schema允许complex类型的定义,就像C里是struct。例如,为了定义类似如下的C的struct类型:
typedef struct {

 string firstName;

 string lastName; long ageInYears;

 float weightInLbs;

 float heightInInches;

 } PERSON;
我们可以写XML schema:

不过,complex类型可以表达比struct更多的信息。除了<sequence>以外,它还可以有其他的子元素,比如<all>

总结

本文中我描述了WSDL文档关于SOAP方面的最显著的特点。不过应该说明的是WSDL并不仅限于HTTP上的SOAP。WSDL用来描述HTTP-POST、HTTP-GET、SMTP及其他协议时非常清晰。使用了WSDL,SOAP更加容易处理了,无论是开发者还是使用者。我相信WSDL和SOAP一起将会开创网络应用程序世界的新时代。 WSDL的namespace里有一系列的XML元素。下表概述了那些元素、它们的属性和内容。

 

posted on 2010-10-31 23:43  海南一哥  阅读(167)  评论(0编辑  收藏  举报

导航