我的要求是:我需要验证一个 xml,它有一个元素“Term”,其属性为 termType、ValueName、Value。我需要对 termType 添加一个限制,这样,当我将termType属性值设为“表达式”时,ValueName 应该只能是 IF 或 ELSE 或 THEN,如果valueName值为“IF”,则值应该是“1”只要。我怎样才能做到这一点?
xml 看起来像:
<Term termType="Input" value="97397D89-C044-47CC-8153-267CBBE71D29" valueName="PolicyType"/>
**<Term termType="expression" value="1" valueName="IF"/>**
<Term termType="mask" value="" valueName=""/>
我试过的对应XSD是:
<xs:simpleType name="termType">
<xs:restriction base="xs:string">
<xs:enumeration value="expression" />...
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TermType">
<xs:attribute name="termType" use="required" type="termType" />
<xs:attribute name="value" use="required" type="xs:string" />
<xs:attribute name="valueName" use="required" type="xs:string" />
</xs:complexType>