1

是否可以为 XSD 属性定义选项?我希望元素“where”具有属性“logic”,并且只能具有值“OR”或“AND”。

例子:

<where logic="OR"> <!-- valid -->
    ...
</where>

<where logic="XPTO"> <!-- invalid -->
    ...
</where>

这可能吗?

4

1 回答 1

2

是的,这是可能的。

首先你必须定义一个简单的类型:

<xs:simpleType name="boolString">
   <xs:restriction base="xs:string">
      <xs:enumeration value="AND"/>
      <xs:enumeration value="OR"/>
   </xs:restriction>
</xs:simpleType>

然后你必须定义一个where包含logictype 属性的元素boolString

<xs:element name="where">
   <xs:complexType>
      <xs:attribute name="logic" type="boolString" />
   </xs:complexType>
</xs:element>
于 2012-05-16T15:05:18.763 回答