Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.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 异常:src resolve.4.2:在xsd中解析组件时出错_Xml_Xsd - Fatal编程技术网

Xml 异常:src resolve.4.2:在xsd中解析组件时出错

Xml 异常:src resolve.4.2:在xsd中解析组件时出错,xml,xsd,Xml,Xsd,我正在根据xsd验证xml。以下是xsd <?xml version="1.0" encoding="utf-8"?> <xsd:schema xmlns="http://www.w3schools.com" targetNamespace="http://www.xxxxxxxxxxxxx/xxxxxxxx" xmlns:cl="http://www.xxxxxx/contactlist" xmlns:xsd="http://www.w3.org/2001/XMLSchema

我正在根据xsd验证xml。以下是xsd

<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns="http://www.w3schools.com" targetNamespace="http://www.xxxxxxxxxxxxx/xxxxxxxx" xmlns:cl="http://www.xxxxxx/contactlist" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

    <xsd:complexType name="contactNumberType">
        <xsd:all>
            <xsd:element name="type" type="xsd:string" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="number" type="xsd:integer" minOccurs="1" maxOccurs="1"/>
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="contactNumbersType">
        <xsd:sequence>
            <xsd:element name="contact_number" type="contactNumberType" minOccurs="1" maxOccurs="2"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="contactType">
        <xsd:all>
            <xsd:element name="name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="company" type="xsd:string" minOccurs="0" maxOccurs="1"/>
            <xsd:element name="jobtitle" type="xsd:string" minOccurs="0" maxOccurs="1"/>
            <xsd:element name="emailadress" type="xsd:string" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="addresses" type="addressesType" minOccurs="0" maxOccurs="1"/>
            <xsd:element name="contact_numbers" type="contactNumbersType" minOccurs="1" maxOccurs="1"/>
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="addressType">
        <xsd:all>
            <xsd:element name="type" type="xsd:string" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="street_address1" type="xsd:string" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="street_address2" type="xsd:string" minOccurs="0" maxOccurs="1"/>
            <xsd:element name="suburb" type="xsd:string" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="postcode" type="xsd:integer" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="state" type="xsd:string" minOccurs="1" maxOccurs="1"/>
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="contacts">
        <xsd:sequence>
            <xsd:element name="contact" type="contactType" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="addressesType">
        <xsd:sequence>
            <xsd:element name="address" type="addressType" minOccurs="1" maxOccurs="2"/>
        </xsd:sequence>
    </xsd:complexType>

</xsd:schema>

我得到以下例外情况。请帮助我理解我错过了什么


异常:src resolve.4.2:解析组件“contactNumberType”时出错

根据创作方法,必须确保默认名称空间(xmlns属性的值)与targetNamespace属性的值匹配

按名称引用类型、属性、属性组、元素或组时,该名称是限定名称。如果引用的名称没有前缀,则假定它位于默认命名空间(如果指定)中,或者根本没有命名空间。具有默认名称空间
http://www.w3schools.com
,处理器正在查找{}contactNumberType;XSD定义了一个{}contactNumberType,它显然不匹配。修复默认名称空间,修复引用


xmlns=”http://www.xxxxxxxxxxxxx/xxxxxxxx“targetNamespace=”http://www.xxxxxxxxxxxxx/xxxxxxxx“

谢谢你的帮助。我有新问题。我的xsd是,xml是。现在错误是异常:cvc elt.1:找不到元素“contacts”的声明我找到并修复了该问题,同时我的xsd缺少xsd:element规范。所有元素都被命名为complexType,但没有实际的元素。谢谢你的帮助