如何在XML Schema中强制非空内容元素

时间:2014-12-10 15:00:59

标签: xml xsd

我有一个带有可选元素的XML Schema。当这个元素出现时,我想避免一个空元素。这在XML Schema中是否可行?

示例:

  <xsd:complexType name="example">
    <xsd:simpleContent>
      <xsd:extension base="basetype>
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>

如何防止这种情况发生:

<example />

1 个答案:

答案 0 :(得分:2)

您可以限制其长度:

            <xs:simpleType>
                <xs:restriction base="baseType">
                    <xs:minLength value="1"/>
                </xs:restriction>
            </xs:simpleType>

这当然只适用于简单类型。对于复杂类型,您应该确保至少有一个嵌套元素不是可选的。