我已创建XML文件和关联的XSD架构,但在线验证程序表示它仍然是我的XSD架构中的错误。
它显示的确切错误是:
Not well-formed: the end-tag for element type
xs:element" must end with a '>' delimiter.
这是XSD:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3schools.org/2001/XMLSchema/">
<xs:element name="List_Of_Skills" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Skill" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="xs:integer"/>
<xs:element name="Name" type="xs:string"/>
<xs:element name="Description" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element name="Skill">
</xs:sequence>
</xs:complexType>
</xs:element name="List_Of_Skills">
</xs:schema xmlns:xs="http://www.w3schools.org/2001/XMLSchema/">
顺便说一下,我的XML代码格式正确,所以我不明白为什么我的XSD代码无效,即使我认为我理解它是如何工作的。
答案 0 :(得分:2)
您的XSD本身格式不正确。以下是修复XSD所需要做的事情:
xmlns:xs="http://www.w3.org/2001/XMLSchema"
maxOccurs="unbounded"
。以下是适用于您的XSD的更正:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="List_Of_Skills">
<xs:complexType>
<xs:sequence>
<xs:element name="Skill" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="xs:integer"/>
<xs:element name="Name" type="xs:string"/>
<xs:element name="Description" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>