我想写一个XML Schema用于验证通过以下XML代码描述的线路特性:XML架构集
<linecharacteristics>
<characteristic name = "color" value = "red" />
<characteristic name = "style" value = "dashed" />
...
<characteristic name = "thickness" value = "medium" />
</linecharacteristics>
有多种特性,这是XML架构的代码,我到目前为止:
<xs:element name="linecharacteristics">
<xs:complexType>
<xs:sequence>
<xs:element name="characteristic" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
我想弄清楚的是如何检查属性是否正确。例如,“名称”属性可以说'颜色','风格'和'厚度',但不是'形状'。此外,如果“name”属性表示“颜色”,则“值”只能包含“红色”,“黄色”,“绿色”而不是“虚线”。 '虚线'值仅与名称'样式'相关联。那么如何定义可接受的属性值集?
感谢您的帮助!