XML-schema:等同于属性的nullable =“true”?

时间:2009-06-11 05:17:51

标签: xml xsd jaxb

我一直遇到在我的架构中添加type =“date”的问题,因为只要它为null就会抛出编组错误。我发现对于元素我们可以添加一个属性,如nullable =“true”,并摆脱这个问题。但是,无法找到属性的类似方式。有没有办法避免属性的这个问题?

谢谢!

2 个答案:

答案 0 :(得分:2)

不知道这是否是你所需要的,但是我有空日期的问题(在xml:date =“”中)并且我应对它:

<xs:simpleType name="mydatetype">
  <xs:union>
 <xs:simpleType>
  <xs:restriction base="xs:date">
  </xs:restriction>
 </xs:simpleType>
 <xs:simpleType>
  <xs:restriction base="xs:string">
   <xs:minLength value="0" />
   <xs:maxLength value="0" />
  </xs:restriction>
 </xs:simpleType>
  </xs:union>
</xs:simpleType>

答案 1 :(得分:1)

遗憾的是,属性没有“nillable”选项。

然而,您可以使用use="optional"说明符来装饰属性,该属性应该处理属性不存在的情况(不应该导致错误)。

马克