了解XSD

时间:2017-05-25 16:21:20

标签: xml xsd wsdl

我获得了一个包含以下定义的WSDL

<xsd:element name="expireDate" type="xsd:date"></xsd:element>

当我致电Web服务时,我会回来

<expireDate xsi:nil="true"/>

从我对schema / wsdl的理解(有限),我坚持认为Web服务的响应没有确认到模式定义,因为如果模式定义包含{{xsi:nil="true",则返回nillable="true"是合法的。 1}}。

所以,我的问题是

  • 是我的理解正确
  • 如果未填充元素并且未打开架构验证,则Web服务可以返回nill元素。

维护服务器代码的第三方坚持认为他们有从这个wsdl生成的客户端工作 - 我的客户端失败,因为它无法解析日期字段。

我的客户端是由cxf生成的 - 服务器代码是从IBM Web服务工具wsdl2java生成的(显然)

1 个答案:

答案 0 :(得分:1)

您向我们展示的实例(使用xsi:nil)对您向我们展示的元素声明无效。

当然,完全有可能存在可以处理这些数据的软件,但这不能用作数据有效的证据。