我应该在哪里限制XML模式,元素或序列中类型的出现

时间:2009-10-07 05:55:40

标签: xml xsd

限制element标记或sequence标记中元素的出现之间有什么区别,最好的位置是什么?或者只是风格问题?

示例:

<xs:element name="Provider">
    <xs:complexType>
        <xs:sequence minOcurrs="1" maxOccurs="unbounded">
            <xs:element ref="Distribuitor"/>
        </xs:sequence>
    </xs:complexType>
</xs:element>

<xs:element name="Provider">
    <xs:complexType>
        <xs:sequence>
            <xs:element ref="Distribuitor"  minOcurrs="1" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>
</xs:element>

1 个答案:

答案 0 :(得分:0)

我想把它放在元素上,因为序列指定了元素必须出现的顺序。我相信如果你把它放在元素本身上,你就会更清楚自己想要什么。我不认为在你的情况下它会对1个元素产生影响,但想象一下,如果你有10个元素,例如每个元素可以有不同数量的minOcurrs和maxOccurs,你可能想要在每个元素上指定它然后在序列层面。