XML Schema minOccurs

Chr*_*ris 2 xml xsd

我有以下架构:(摘录)

<xs:element name= "off" minOccurs="1">
  <xs:complexType>
    <xs:sequence>
      <xs:element name= "id" type = "xs:integer"/>
      <xs:element name= "part" minOccurs="1">
        <xs:complexType>
          <xs:sequence>
            <xs:element name= "id" type = "xs:integer"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name= "asdf" type = "xs:float"/>
     </xs:sequence>
</xs:complexType>
Run Code Online (Sandbox Code Playgroud)

现在,凭借直觉,我猜想,下面的树将被允许:

<oof>
 <id>123</id>
 <part>
  <id>134</id>
 </part>
 <part>
  <id>454</id>
 </part>
 <asdf>234123.0</asdf>
</oof>
Run Code Online (Sandbox Code Playgroud)

然而,xmllint指出,第二个没有被排除,但被排除在外.我错过了什么?

Cha*_*ndu 6

由于您未指定maxOccurs,因此假定为1,因此part的第二次出现导致xmllint显示的消息