我正在尝试使用 XSD 1.1 创建一个模式定义,其中一个元素的结果依赖于另一个元素。例如,我有国家列表和每个国家的州列表的下拉列表。当一个人选择一个国家时,只能选择那个国家的州。我试图达到的伪代码看起来像这样。
<xs:schema xmlns:ie="http://www.interviewexchange.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="country">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="USA" />
<xs:enumeration value="UK" />
<xs:enumeration value="India" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="state">
<xs:simpleType>
<xs:restriction base="xs:string">
<assert test="if (country eq 'USA')">
<xs:enumeration value="MA" />
<xs:enumeration value="AR" />
<xs:enumeration value="NY" />
</assert">
<assert test="if (country eq 'India')">
<xs:enumeration value="AP" />
<xs:enumeration value="TN" />
<xs:enumeration value="MP" />
</assert">
</xs:restriction>
</xs:simpleType>
</xs:element>
请建议我是否遵循正确的方法,如果我遵循正确的方法,谁能给我如何达到此限制的代码?提前致谢...