我无法弄清楚如何用Xsd来表达以下内容:具有simpleType限制的元素(值的枚举)并且需要该元素的属性。例如:
<myElement some_id_value="1">Apples</myElement>
简单类型定义为:
<xs:simpleType name="simpleType_Fruit">
<xs:restriction base="xs:string">
<xs:enumeration value="Apples" />
<xs:enumeration value="Bananas" />
<xs:enumeration value="Oranges" />
</xs:restriction>
</xs:simplType>
我现在的元素定义为:
<xs:element name="myElement" type="simpleType_Fruit"/>
在这里提出类似的问题,可能会得到回答,但我不确定(答案中只有一个加号投票)
答案 0 :(得分:1)
您可以在元素声明中使用“simpleType_Fruit”作为基本类型,并使用必需属性扩展一个。
<xs:element name="myElement">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="simpleType_Fruit">
<xs:attribute name="some_id_value" type ="xs:byte"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:simpleType name="simpleType_Fruit">
<xs:restriction base="xs:string">
<xs:enumeration value="Apples"/>
<xs:enumeration value="Bananas"/>
<xs:enumeration value="Oranges"/>
</xs:restriction>
</xs:simpleType>