XSD代码:获取错误 - 复杂类型定义'anonymous'的内容模型含糊不清
<xs:element name="data">
<xs:complexType>
<xs:choice>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="A"/>
<xs:element name="B"/>
<xs:element name="C"/>
<xs:element name="D"/>
<xs:element name="EE"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="A"/>
<xs:element name="B"/>
<xs:element name="C"/>
<xs:element name="D"/>
<xs:element name="FF"/>
</xs:choice>
</xs:choice>
</xs:complexType>
</xs:element>
答案 0 :(得分:1)
<xs:choice>
在众多中选择一个。你有嵌套的选择。解析器抱怨存在歧义,因为您在neste选项中声明了重复元素,违反了Unique Particle Attribution约束。
示例:如果第一个嵌套choice
选择A
,第二个嵌套选择A
,则您的外部choice
会出现这种非法情况:
<xs:choice>
<xs:element name="A"/>
<xs:element name="A"/>
</xs:choice>
你 可以一个嵌套选项并接受多个A
元素,但不能接受两个相同的元素声明。
如果替换choice
的外部sequence
,您的代码将有效。
如果您在问题中添加更多详细信息,可以改进此答案,以向您展示更好的选择。