xml – 由XSD验证空的xs:date元素
我在XSD中有这个:
<xs:element name="End_Date" type="xs:date" minOccurs="0"/> 如果有日期或者有一个空节点,我想验证通过 < END_DATE> 2011-05-31T00:00:00.000< / END_DATE> 我怎样才能修改XSD来实现它呢? 我尝试了不同的东西: 的nillable = “真” 和 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true" 和 <xs:element name="End_Date"> <xs:simpleType> <xs:union memberTypes="xs:date"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value=""/> </xs:restriction> </xs:simpleType> </xs:union> </xs:simpleType> </xs:element> 他们都没有工作. 错误:
解决方法
也许你对xs:date和xs:dateTime之间的区别感到困惑.您在架构中使用了xs:date,但您的示例是xs:dateTime.
有三种方法可以达到你想要的效果: (a)定义一个类型,它是(xs:dateTime和(xs:string allow only only“”)的联合) (b)定义一个类型,它是xs的列表:dateTime,minLength = 0,maxLength = 1 (c)将要素定义为可归零.在这种情况下,实例将不得不说xsi:nil =“true”,这在我看来使得设施相当无用. 如果您尝试其中之一并且它不起作用,请告诉我们您的确切操作以及确切失败的原因. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |