异常:cvc-elt.1.a 找不到元素'company'的声明



在此处输入图像描述

我的XML:

<?xml version="1.0" encoding="UTF-8"?>
<company xmlns="urn:company.Namespace"
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xs:schemaLocation="urn:company.Namespace companyxsd.xsd">    
<companyname>ABC company</companyname>
<address>xyz street, India.</address>
<department>
<dname>Marketing</dname>
<deptphoneno>9876543210</deptphoneno>
<deptfaxno>0442456879</deptfaxno>
<deptemail>marketing@abc.com</deptemail>
<employee>
<empid>101</empid>
<ename>Rishie</ename>
<emailid>rishie@abc.com</emailid>
<phoneno>9876543211</phoneno>
</employee>
<contractemployee>
<name>Ravi</name>
<phoneno>9874563214</phoneno>
</contractemployee>
</department>
</company>    

我的 xsd 文件:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
elementFormDefault="qualified" 
targetNamespace="urn:company.Namespace" >
<xs:element name="company">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="companyname"/>
<xs:element type="xs:string" name="address"/>
<xs:element name="department">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="dname"/>
<xs:element type="xs:short" name="deptphoneno"/>
<xs:element type="xs:short" name="deptfaxno"/>
<xs:element type="xs:string" name="deptemail"/>
<xs:element name="employee">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:short" name="empid"/>
<xs:element type="xs:string" name="ename"/>
<xs:element type="xs:string" name="emailid"/>
<xs:element type="xs:short" name="phoneno"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="contractemployee">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="name"/>
<xs:element type="xs:short" name="phoneno"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>    
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

我对XML模式等仍然有点陌生,并且一直在努力开发一些XML和XML模式。

该架构代表了我真正的XML的结构。

现在,当我尝试验证我的 XML 时,出现此错误:

cvc-elt.1:找不到元素"公司"的声明。[注7]

我认为这与公司元素上的命名空间问题有关,但我不确定。

我做错了什么?

您的 XML 对 XSD 无效:我收到许多错误,例如

Description: cvc-maxInclusive-valid: Value '9876543210' is not facet-valid with respect to maxInclusive '32767' for type 'short'.
Start location: 10:46

但是,您还没有走得那么远。这必须与您运行架构验证的方式有关,因此您需要告诉我们您正在运行哪个架构处理器以及如何运行它。

(顺便说一下,切勿对电话号码使用 xs:integer 等数字类型,因为数字类型假定前导零不重要。

最新更新