XSD求改错
这是已经验证通过的 XSD 文件 test1.xsd:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="sandyxl001@163.com" xmlns="sandyxl001@163.com" elementFormDefault="qualified">
<xs:element name="contact">
<xs:complexType>
<xs:sequence>
<xs:element name="basicInformations">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="email" type="xs:string"/>
<xs:element name="phonenumber" type="xs:string"/>
<xs:element name="birthday" type="xs:string"/>
<xs:element name="group" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:choice>
<xs:element name="School">
<xs:complexType>
<xs:sequence>
<xs:element name="province" type="xs:string"/>
<xs:element name="city" type="xs:string"/>
<xs:element name="address" type="xs:string"/>
<xs:element name="school" type="xs:string"/>
<xs:element name="college" type="xs:string"/>
<xs:element name="postcode" type="xs:string"/>
<xs:element name="phonenumber" type="xs:string"/>
<xs:element name="fax" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Company">
<xs:complexType>
<xs:sequence>
<xs:element name="province" type="xs:string"/>
<xs:element name="city" type="xs:string"/>
<xs:element name="address" type="xs:string"/>
<xs:element name="school" type="xs:string"/>
<xs:element name="college" type="xs:string"/>
<xs:element name="postcode" type="xs:string"/>
<xs:element name="phonenumber" type="xs:string"/>
<xs:element name="fax" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:element name="family">
<xs:complexType>
<xs:sequence>
<xs:element name="nation" type="xs:string"/>
<xs:element name="province" type="xs:string"/>
<xs:element name="city" type="xs:string"/>
<xs:element name="address" type="xs:string"/>
<xs:element name="postcode" type="xs:string"/>
<xs:element name="phonenumber" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="network">
<xs:complexType>
<xs:sequence>
<xs:element name="personnelHomepage" type="xs:string"/>
<xs:element name="communicationTools" type="xs:string"/>
<xs:element name="mailbox" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
这是引用该 XSD 文件验证的 XML:
<?xml version="1.0" encoding="UTF-8"?>
<contact xmlns="sandyxl001@163.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:SchemaLocation="test1.xsd">
<basicInformations>
<name>
</name>
<email>
</email>
<phoneNumber>
</phoneNumber>
<birthday>
</birthday>
<group>
</group>
</basicInformations>
<School>
<province>
</province>
<city>
</city>
<address/>
<school/>
<college/>
<position/>
<postcode/>
<phonenumber/>
<fax/>
</School>
<family>
<nation/>
<province/>
<city/>
<address/>
<postcode/>
<phonenumber/>
</family>
<network>
<personnelHomepage/>
<communicationTools/>
<mailbox/>
</network>
</contact>
不能验证通过。两个文件在同一文件夹下。
[解决办法]
没问题啊,我试过了。
你用什么验证的?
请注意IE是不是会做验证的。
你可以采用XMLSPY。
[解决办法]
前面路径错了,所以没测出问题。格式是有问题。
如,你的XMLSPY里面定义<xs:element name="phonenumber" type="xs:string"/>,
但是你的文档里面却有一段是这样<phoneNumber></phoneNumber>;
还有你多了一个<position/>。
这两个改掉就没有问题了。