草庐IT

XML Schema minOccurs

coder 2024-07-04 原文

我有以下架构:(摘录)

<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>

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

<oof>
 <id>123</id>
 <part>
  <id>134</id>
 </part>
 <part>
  <id>454</id>
 </part>
 <asdf>234123.0</asdf>
</oof>

但是,xmllint 指出,第二个不是预期的,而是预期的。我错过了什么?

最佳答案

因为您没有指定 maxOccurs,它被假定为 1 因此第二次出现的部分导致 xmllint 显示的消息

关于XML Schema minOccurs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4787807/

有关XML Schema minOccurs的更多相关文章

随机推荐