我想寫一個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」屬性表示「顏色」,則「值」只能包含「紅色」,「黃色」,「綠色」而不是「虛線」。 '虛線'值僅與名稱'樣式'相關聯。那麼如何定義可接受的屬性值集?
感謝您的幫助!