xsd - XML 模式中的 minOccurs/maxOccurs

标签 xsd sequence minoccurs

鉴于此 XML 模式片段:

<xs:element name="data">
    <xs:complexType>
        <xs:sequence>
            <xs:element name="param" type="param" minOccurs="0" maxOccurs="unbounded" />
            <xs:element name="format" type="format" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attribute name="name" type="xs:string" />
    </xs:complexType>
</xs:element>

预期结果有效<data>元素可能包含 0 个或多个 <param>元素后跟 0 个或多个 <format>元素。我添加了minOccurs吗?/maxOccurs属性是否正确,或者它们应该应用于包含 <xs:sequence> 的?

正确与否,无论选择哪一种方式,结果会是什么?

最佳答案

您做对了,您不能将出现的最小值/最大值添加到序列元素中。使用支持 XML Schema 的 XML 编辑器可能会帮助您在有疑问时验证您的假设。这是一个很好的免费软件,叫做 XMLFox

关于xsd - XML 模式中的 minOccurs/maxOccurs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4564778/

相关文章:

Clojure For Comprehension 示例

c++ - 试图绘制部分巨大源代码的序列图

python - 蛋白质序列模式匹配python

schema - 是否可以通过扩展覆盖 complexType 中元素的 minOccurs 和 maxOccurs 属性?

java - 在 Eclipse XML 编辑器中通过 XSLT 或 Schematron 进行 XML 验证?

c# - XML 的 XSD 验证有多昂贵?

java - UTC 或本地时间与我的模式的区域偏移量?

c# - 在其关联的模式定义类型中查找 xml 元素的注释