【发布时间】:2016-01-27 17:52:17
【问题描述】:
我正在尝试使用 JAXB 编组为 xml。
我的要求
如果任何元素的值为 null,则 xml 应该将该元素的属性设置为 nullable="true"。
我尝试将 minoccurs="1", nillable="true" 放在 XSD 中,但它在我的 xml 中给了我 nil="true",但我想显示为 nullable ="true" 完全在我的 xml 中。
<xs:sequence>
<xs:element name="itemName" type="xs:string" />
<xs:element name="purchasedOn" type="xs:date" minOccurs="1" nillable="true"/>
<xs:element name="amount" type="xs:decimal" />
</xs:sequence>
在我的 XML 中:
<purchasedOn xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
如果我错了,请纠正我。
【问题讨论】:
-
你想让属性说元素 可以是 null 还是 is null ?
-
可为空意味着该元素可以为空。听起来您需要为此目的定义自己的定制属性。请问,空元素标签有什么问题?
-
如果你有一个 null 属性,如果它不能为空,它所属的元素里面会是什么?
标签: xml xsd jaxb schema marshalling