WebService描述语言WSDL详解(4)

发表于:2007-05-25来源:作者:点击数: 标签:WebServiceWSDL描述详解语言
WSDL的Types栏和Messages栏中的XML Schema WSDL数据类型是基于"XML Schema: Datatypes"(XSD)的,现在已经被W3C推荐。这一文档共有三个版本(1999,2000/10,2001),因此必须在namespace属性的<definitions>元素中指明所使用的是哪一个版本。 xmlns:xsd="h

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版。

  在本栏和以后各部分,需使用以下简缩或前缀

前缀 代表的Namespace 描述
Soapenc http://schemas.xmlsoap.org/soap/encoding SOAP 1.1 encoding
Wsdl http://schemas.xmlsoap.org/wsdl/soap WSDL 1.1
Xsd http://www.w3.org/2001/XMLSchema XML Schema

  XSD基类型

  下表是直接从MSTK2文档中取出的,列举了MSTK2所支持的所有XSD基类型。它也告诉在客户端或服务器端的WSDL读取程序如何把XSD类型映射到在VBC++和IDL中相应的类型。

XSD (Soap)类型 变量类型 VB C++ IDL Comments
anyURI VT_BSTR String BSTR BSTR  
base64Binary VT_ARRAY | VT_UI1 Byte() SAFEARRAY SAFEARRAY(unsigned char)  
Boolean VT_BOOL Boolean VARIANT_BOOL VARIANT_BOOL  
Byte VT_I2 Integer short short 转换时验证范围有效性
Date VT_DATE Date DATE DATE 时间设为 oo:oo:oo
DateTime VT_DATE Date DATE DATE  
Double VT_R8 Double double double  
Duration VT_BSTR String BSTR BSTR 不转换和生效
ENTITIES VT_BSTR String BSTR BSTR 不转换和生效
ENTITY VT_BSTR String BSTR BSTR 不转换和生效
Float VT_R4 Single float float  
GDay VT_BSTR String BSTR BSTR 不转换和生效
GMonth VT_BSTR String BSTR BSTR 不转换和生效
GMonthDay VT_BSTR String BSTR BSTR 不转换和生效
GYear VT_BSTR String BSTR BSTR 不转换和生效
GYearMonth VT_BSTR String BSTR BSTR 不转换和生效
ID VT_BSTR String BSTR BSTR 不转换和生效
IDREF VT_BSTR String BSTR BSTR 不转换和生效
IDREFS VT_BSTR String BSTR BSTR 不转换和生效
Int VT_I4 Long long long  
Integer VT_DECIMAL Variant DECIMAL DECIMAL 转换时范围生效
Language VT_BSTR String BSTR BSTR 不转换和生效
Long VT_DECIMAL Variant DECIMAL DECIMAL 转换时范围生效
Name VT_BSTR String BSTR BSTR 不转换和生效
NCName VT_BSTR String BSTR BSTR 不转换和生效
negativeInteger VT_DECIMAL Variant DECIMAL DECIMAL 转换时范围生效
NMTOKEN VT_BSTR String BSTR BSTR 不转换和生效
NMTOKENS VT_BSTR String BSTR BSTR 不转换和生效
nonNegativeIntege VT_DECIMAL Variant DECIMAL DECIMAL 转换时范围生效
nonPositiveInteger VT_DECIMAL Variant DECIMA DECIMAL 转换时范围生效
normalizedString VT_BSTR String BSTR BSTR  
NOTATION VT_BSTR String BSTR BSTR 不转换和生效
Number VT_DECIMAL Variant DECIMAL DECIMAL  
positiveInteger VT_DECIMAL Variant DECIMAL DECIMAL 转换时范围生效
Qname VT_BSTR String BSTR BSTR 不转换和生效
Short VT_I2 Integer short short  
String VT_BSTR String BSTR BSTR  
Time VT_DATE Date DATE DATE 日设为1899年12月30日
Token VT_BSTR String BSTR BSTR 不转换和生效
unsignedByte VT_UI1 Byte unsigned char unsigned char  
UnsignedInt VT_DECIMAL Variant DECIMAL DECIMAL 转换时范围生效
unsignedLong VT_DECIMAL Variant DECIMAL DECIMAL 转换时范围生效
unsignedShort VT_UI4 Long Long Long 转换时范围生效

  XSD定义了两套内建的数据类型:原始的和派生的。在下文中查阅内建数据类型的层次十分有益:

http://www.w3.org/TR/2001/PR-xmlschema-2-20010330

原文转自:http://www.ltesting.net

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)