Schema中基于值的共现约束
利用XML Schema 1.1的断言机制,实现元素或属性的值变化时强制要求其他元素必须出现或禁止出现的复杂业务规则。 · 难度:入门 · +10XP
Schema中基于值的共现约束
传统DTD无法表达“当type为‘advanced’时,必须包含
<xs:element name="device">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="config" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="mode" type="xs:string"/>
<xs:assert test="if (@mode='advanced') then exists(config) else true()"/>
</xs:complexType>
</xs:element>