我有以下架構,我用它來確保一個人的PhoneNumber
和PhoneNumberType
(家庭,工作等)不超過10個字符。但是,我想改進此架構,因此如果未提供PhoneNumber
,則不需要PhoneNumberType
,但如果提供PhoneNumber
,則需要PhoneNumberType
。有沒有辦法在XML Schema 1.0中做到這一點?XML模式限制一個字段基於另一個
我知道這可以在XML Schema 1.1中使用<xs:assert/>
來完成,但不幸的是我被XML Schema 1.0卡住了。
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xs:element name="PhoneNumber">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PhoneNumberType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xsd:schema>
我不能改變的XML文檔的結構,因爲它來自外部來源。 –