【发布时间】:2013-11-25 16:33:48
【问题描述】:
我有一个包含以下内容的 xsd:
<xs:complexType name="MyDataType">
<xs:simpleContent>
<xs:extension base="xs:boolean">
<xs:attribute name="id" type="xs:int" fixed="9999" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="MessageType">
<xs:all>
<xs:element name="Data" type="MyDataType"/>
</xs:all>
</xs:complexType>
所以这个片段是有效的:
<Message>
<Data>true</Data>
</Message>
其中 Message 被定义为 MessageType 类型。但我想做的是让客户能够省略 Data 元素:
<Message></Message>
(或等效的自闭元素)
语义上,有点像:
<xs:complexType name="MyDataType">
<xs:simpleContent>
<xs:extension base="xs:boolean" default="true">
<xs:attribute name="id" type="xs:int" fixed="9999" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
默认添加到扩展。还是不行....
【问题讨论】: