1
我正試圖在XML模式中進行限制的某種形式的組合。如何將complexType限制爲XML Schema中的特定值?
我有一個complexType
這是在其他幾個complexTypes
重複使用。我想指定在FullTypeA
中包含PartialType
時,FieldA
必須爲一個值,當包含在FullTypeB
中時,其值不同。
<xs:complexType name="PartialType">
<xs:sequence>
<xs:element name="FieldA" type="xs:unsignedShort" />
<xs:element name="FieldB" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
<!-- FieldA must be 1 for FullTypeA-->
<xs:complexType name="FullTypeA">
<xs:sequence>
<xs:element ref="PartialType" />
<xs:element name="FieldC" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
<!-- FieldA must be 2 for FullTypeB-->
<xs:complexType name="FullTypeB">
<xs:sequence>
<xs:element ref="PartialType" />
<xs:element name="FieldD" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
我該如何構建我的XML模式以適應這種情況?
謝謝你,對我很有幫助! –