0

我想使用 xsd 验证我的 xml。我的要求是我想包含一些元素。

  1. 这些元素可以按任何顺序排列
  2. 一个元素应该只包含一次

它不是 xs:choice 适合我,因为父元素具有多个以上元素

xml 应该如下所示:

<parent>
<child1></child1> // at least one time and only once
<child2></child2> // at least one time and only once //any order
</parent>

所以我的 XSD 应该包含

element type="xs:int" name="....." minOccurs="1" maxOccurs="1"

我不能使用序列标签,因为它需要这些子元素按顺序排列,不能使用只允许一个孩子的选择标签。你能给我一个方法吗

4

1 回答 1

0

I found the answer: the xsd as follows

<xs:element name="parent">

                <xs:complexType>
                    <xs:choice maxOccurs="unbounded">
                        <xs:element type="xs:int" name="child1" minOccurs="1" maxOccurs="1">

                        </xs:element>
                        <xs:element type="xs:string" name="child2" minOccurs="1" maxOccurs="1">

                        </xs:element>

                     </xs:all>
                </xs:complexType>
            </xs:element>
于 2013-09-06T11:49:06.070 回答