Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml &引用;元素';X';具有无效的子元素';Y';。预期的可能元素列表:';Z'&引用;_Xml_Xsd_Schema - Fatal编程技术网

Xml &引用;元素';X';具有无效的子元素';Y';。预期的可能元素列表:';Z'&引用;

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

我对这里有点陌生,正在学习XSD模式。我有一个上载XML文件的函数,它首先上载模式,然后在上载XML文件时引发以下异常:

“元素“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”放在这行:如果你找到了解决方案,请将其作为答案发布:)。消息传来..你没有声誉发布我们自己的答案