XML Schema minOccurs / maxOccurs默认值

我想知道XML Schema规范如何处理这些情况:


<xsd:element minOccurs="1" name="asdf"/>

没有给出maxOccurs - >这是基数[1..1]吗?


<xsd:element minOccurs="5" maxOccurs="2" name="asdf"/>

我想这简直无效了?


<xsd:element maxOccurs="2" name="asdf"/>

这是基数[0..2]还是[1..2]?


是否有关于XML Schema规范如何处理这些情况的“官方”定义?


翻翻过去那场雪
浏览 2035回答 3
3回答

饮歌长啸

一个旧的,常见问题的新的,扩展的答案......默认值发生约束minOccurs并maxOccurs 默认为1。常见案例解释<xsd:element name="A"/>手段A是必需的,必须只出现一次。<xsd:element name="A" minOccurs="0"/>means A是可选的,最多可以出现一次。&nbsp;<xsd:element name="A" maxOccurs="unbounded"/>手段A是必需的,可以重复无限次。&nbsp;<xsd:element name="A" minOccurs="0" maxOccurs="unbounded"/>手段A是可选的,可以重复无限次。也可以看看W3C XML Schema第0部分:入门通常,当minOccurs的值为1或更大时,需要出现一个元素。元素可能出现的最大次数由其声明中maxOccurs属性的值确定。该值可以是正整数,例如41,或者术语无界,表示没有最大出现次数。minOccurs和maxOccurs属性的默认值为1.因此,当声明没有maxOccurs属性的注释等元素时,该元素可能不会出现多次。请确保如果仅为minOccurs属性指定值,则它小于或等于默认值maxOccurs,即它是0或1.同样,如果仅为maxOccurs属性指定值,则必须为大于或等于minOccurs的默认值,即1或更多。W3C XML Schema第1部分:结构第二版<element&nbsp; maxOccurs = (nonNegativeInteger | unbounded)&nbsp; : 1&nbsp; minOccurs = nonNegativeInteger : 1&nbsp; ></element>

哆啦的时光机

简短回答:正如xsd中所写:<xs:attribute name="minOccurs" type="xs:nonNegativeInteger" use="optional" default="1"/><xs:attribute name="maxOccurs" type="xs:allNNI" use="optional" default="1"/>如果提供带数字的属性,则数字为边界。否则属性应该只出现一次。
打开App,查看更多内容
随时随地看视频慕课网APP