找不到针对xsd的元素xml的声明

时间:2018-09-07 16:31:11

标签: java xml soap xsd

在尝试针对xsd验证xml时出现此错误。 Cannot find the declaration of element Transactions。知道XSD存在元素Transactions。 您可以在下面找到XML和XSD。 --------------- XML --------------------------------

<Transactions>
    <User>userId</User>
    <RequestDate>2018-04-04T11:05:16+01:00</RequestDate>
    <Language>en_US</Language>
</Transactions>

--------------- XSD --------------------------------- --     注意:我的文件包含许多xsd,如下所示。

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <xs:schema version="1.0" targetNamespace="..." xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns2="imported xsd1" xmlns:ns1="imported xsd1">
      <xs:import namespace="..." schemaLocation="schema5.xsd"/>
      <xs:import namespace="..." schemaLocation="schema4.xsd"/>
      <xs:complexType name="Transactions">
        <xs:complexContent>
          <xs:extension base="ns2:...">
            <xs:sequence>
              <xs:element name="User" type="ns1:User" minOccurs="0"/>
              <xs:element name="RequestDate" type="xs:string" minOccurs="0"/>
              <xs:element name="Language" type="xs:string" minOccurs="0"/>
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
<xs:complexType name="Other Element">
    <xs:complexContent>
      <xs:extension base="ns2:...">
        <xs:sequence>
          <xs:element name="..." type="ns1:..." minOccurs="0"/>
          <xs:element name="..." type="xs:string" minOccurs="0"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
     </xs:schema>

请提供任何帮助。

1 个答案:

答案 0 :(得分:0)

您显示的XSD具有类型声明,但缺少诸如以下的元素声明:

<xs:element name="Transactions" type="Transactions"/>

如果在具有目标名称空间的XSD中,您可能还必须在Transactionstype="Transactions"之前的名称空间前缀之前。