我正在尝试让XML文件清楚地验证我的汽车文件有问题,任何人指出我需要改变的正确方向吗?
xml代码
<?xml version="1.0"?>
<employees> xmlns="http://www.w3schools.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="employees.xsd">
<emp> <first>Bill</first> <last>Johnson</last> </emp> <emp> <first>April</first> <last>Jones</last> </emp> <emp> <first>Chad</first> <last>Becker</last> </emp> <emp> <first>David</first> <last>Jones</last> </emp> </employees>
xsd代码
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="employees"> <xs:simpleType> <xs:restriction base="xs:string"> </xs:restriction> </xs:simpleType> </xs:element>
<xs:element name="emp"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="first|last" /> </xs:restriction> </xs:simpleType> </xs:element>
<xs:element name="first">
答案 0 :(得分:0)
您发布的XSD和XML代码都存在格式问题。我不确定将代码复制/粘贴到SO中是否存在问题,或者您正在编写的代码存在问题。我已经采用了您发布的片段并创建了一个有效的模式和匹配的xml文件。
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="http://www.w3schools.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.w3schools.com">
<xs:element name="last" type="xs:string"/>
<xs:element name="first" type="xs:string"/>
<xs:element name="employees">
<xs:complexType>
<xs:sequence>
<xs:element ref="emp" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="emp">
<xs:complexType>
<xs:sequence>
<xs:element ref="first"/>
<xs:element ref="last"/>
</xs:sequence>
</xs:complexType>
</xs:element>
...和XML文件:
<?xml version="1.0"?>
<employees xmlns="http://www.w3schools.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3schools.com">
<emp>
<first>Bill</first>
<last>Johnson</last>
</emp>
<emp>
<first>April</first>
<last>Jones</last>
</emp>
<emp>
<first>Chad</first>
<last>Becker</last>
</emp>
<emp>
<first>David</first>
<last>Jones</last>
</emp>
</employees>