0

我需要对“是或否”的属性进行限制-但不太确定如何构造它-我正在尝试以下方法,但不确定它是对还是错:(建议将不胜感激)谢谢

<xs:element name="DistinctiveMarks">
  <xs:ComplexType>
    <xs:SimpleContent>
      <xs:extension base="xs:string">
        <xs:attribute name="present" type="xs:string">
          <xs:restriction base="xs:string">
            <xs:pattern value="yes|no"/>
          </xs:restriction>
        </xs:attribute>
      </xs:extension>
    </xs:SimpleContent>
  </xs:ComplexType>
</xs:element>
4

1 回答 1

1

那应该行得通。如果你打算重用它,另一个选项是声明一个简单类型。然后你可以只做 type = MY_YesNoType,如果你有命名空间前缀,请包括命名空间前缀。另一个可能适合的选项是使用枚举。很好,如果你想挖掘然后 xsd 为数据输入建立一个选项列表,而不是针对正则表达式进行验证。

  <xs:simpleType name="MY_YesNoType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="no" />
      <xs:enumeration value="yes" />
    </xs:restriction>
  </xs:simpleType>
于 2012-01-13T15:34:22.283 回答