繁体   English   中英

XML 模式可以在单个 complexType 中有多个选择?

[英]XML schema can have multiple choices in a single complexType?

是否可以在 XML 模式中执行类似的操作?

<xsd:complexType name="ItemsType">
  <xsd:choice minOccurs="0" maxOccurs="unbounded">
    <xsd:element ref="shirt"/>
    <xsd:element ref="hat"/>
    <xsd:element ref="umbrella"/>
  </xsd:choice>
  <xsd:choice minOccurs="1" maxOccurs="3">
    <xsd:element ref="apple"/>
    <xsd:element ref="banana"/>
    <xsd:element ref="strawberry"/>
  </xsd:choice>
</xsd:complexType>

这显然是无效的。 我想要的是可以有 0 个或更多的第一选择。例如,可能有衬衫元素和帽子元素,或者可能根本没有衣服元素(因为 minOccurs="0"),然后至少有 1 个水果元素(我想做它,所以必须至少有一个,因为 minOccurs="1")。

有办法吗?

谢谢你的帮助。

<xsd:complexType>期望只有一个子元素。 将您的两个选择包装在一个<xsd:sequence>中。

例子

<xsd:complexType name="ItemsType">
  <xsd:sequence>
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      ... clothes ...
    </xsd:choice>
    <xsd:choice minOccurs="1" maxOccurs="3">
      ... fruits ...
    </xsd:choice>
  </xsd:sequence>
</xsd:complexType>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM