错误:元素“xsd:schema”的前缀“xsd”未绑定

时间:2016-10-16 23:19:03

标签: xml xsd xsd-validation xml-validation

我收到错误消息

  

元素“xsd:element”的前缀“xsd”未绑定。

我的XSD文件如下:

<?xml version="1.0"?>
<!--XSD schema for file companylist.xml-->

<CompanyList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:noNamespaceSchemaLocation="companies.xsd"> 
    <xsd:element name="CompanyList">
      <xsd:complexType>
      <xsd:sequence>
      <xsd:element name="Company"
                 maxOccurs="unbounded">
          <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="CompanyID"
                    type="xsd:integer"/>
            <xsd:element name="contactname"
                    type="xsd:string"/>
          </xsd:sequence>
          </xsd:complexType>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
    </xsd:element>
</xsd:schema>

如何解决此错误?

1 个答案:

答案 0 :(得分:0)

要解决错误,

  

元素“xsd:schema”的前缀“xsd”未绑定

在XSD的根xsd元素上定义schema名称空间前缀如下:

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

另请注意,XSD的第一个标记似乎来自XML文档实例。

以下是解决了上述问题的整个XSD:

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="CompanyList">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="Company" maxOccurs="unbounded">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="CompanyID" type="xsd:integer"/>
              <xsd:element name="contactname" type="xsd:string"/>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>