Xml &引用;元素';X';具有无效的子元素';Y';。预期的可能元素列表:';Z'&引用;
我对这里有点陌生,正在学习XSD模式。我有一个上载XML文件的函数,它首先上载模式,然后在上载XML文件时引发以下异常:Xml &引用;元素';X';具有无效的子元素';Y';。预期的可能元素列表:';Z'&引用;,xml,xsd,schema,Xml,Xsd,Schema,我对这里有点陌生,正在学习XSD模式。我有一个上载XML文件的函数,它首先上载模式,然后在上载XML文件时引发以下异常: “元素“X”的子元素“Y”无效。可能的元素列表应为“Z”。 这是我的XSD文件: <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element nam
“元素“X”的子元素“Y”无效。可能的元素列表应为“Z”。
这是我的XSD文件:
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="survey">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="***"/>
<xs:element name="questions">
<xs:complexType>
<xs:sequence>
<xs:element name="X" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:complexType>
<xs:sequence>
<xs:element name="option" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute type="xs:string" name="***" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Y" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Z">
<xs:complexType>
<xs:sequence>
<xs:element name="***" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:byte">
<xs:attribute type="xs:string" name="***" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute type="xs:string" name="***" use="optional"/>
<xs:attribute type="xs:string" name="***" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="Z" minOccurs="0">
<xs:complexType>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="***">
<xs:complexType>
<xs:sequence>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
我读过类似的帖子,有些人建议将
改为
;我已经这样做了,但不起作用。其他人建议在根元素中添加elementFormDefault=“qualified”
属性,但它也不起作用
我仍然不明白真正的问题是什么
任何建议都会有帮助。至少您的XSD中有一个错误: 声明“Y”元素之前的结束“”不正确。 移除它,我猜它会起作用
<xs:element name="X" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:complexType>
<xs:sequence>
<xs:element name="option" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute type="xs:string" name="***" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element> <------- REMOVE THIS
<xs:element name="Y" minOccurs="0">
好的,我得到了我的解决方案,只需将maxOccurs=“unbounded”放在这行:如果你找到了解决方案,请将其作为答案发布:)。消息传来..你没有声誉发布我们自己的答案