指定范围mininclusive和maxinclusive xsd

时间:2015-01-28 07:46:01

标签: xml xsd

我是为xml架构定义自己的xsd的初学者。我只是想知道是否有一种方法可以指定min和max包含属性值,而不是每次都写入数字。这只是我在想什么在xsd:

中可能的假例子
    <xs:complexType name="postNumberRang">
        <xs:simpleContent>
            <xs:extension base="rangePostNr">
                <xs:attribute name="minimum" type="xs:nonNegativeInteger"/>
                <xs:attribute name="maximum" type="xs:nonNegativeInteger" />
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>

  <xs:simpleType name="rangePostNr">
      <xs:restriction base="xs:integer">
          <xs:minInclusive value="minimum"/>
          <xs:maxInclusive value="maximum"/>
      </xs:restriction>
  </xs:simpleType>

1 个答案:

答案 0 :(得分:0)

目前还不完全清楚你要做什么。 (通过发明您希望不言自明的语法来表达您的要求不是推荐的技术。)

我怀疑您正在尝试根据同一元素上其他属性的值来定义一个属性的约束。这被称为“共现约束”,在XSD 1.0中是不可能的。可以使用断言或使用条件类型赋值在XSD 1.1中完成。因此,您需要确定您的项目是否能够利用XSD 1.1。