元素'元素'无效,错位或过于频繁发生

时间:2014-12-11 15:51:07

标签: xml xsd schema

我只是想用xsd文件做一个小的xmll文件,但我不明白我在w3c代码验证器中得到的错误。 我的xml代码有效。我的xsd代码是有效的,但是当我一起检查代码时,我遇到了错误,我发现我的错误是因为我只使用了1个元素。我纠正了这个。现在我的xsd代码不再有效(只是通过erasng),我找不到为什么我得到这个错误。

这是我的xml代码:

<?xml version="1.0" encoding="UTF-8"?>
<List_Of_Skills>
<Skill>
<Name> PHP </Name>
<ID> 1 </ID>
<Description> Able to code in PHP </Description> 
</Skill>

<Skill>
<Name> XML </Name> 
<ID> 2 </ID>
<Description> Able to code in XML </Description>
</Skill>

<Skill> 
<Name> C# </Name > 
<ID> 3 </ID>
<Description> Able to code applications windows or web in C#</Description>
</Skill>

<Skill> 
<Name> JavaScript </Name>
<ID> 4 </ID> 
<Description> Able to create web applications and animations in JavaScript </Description>
</Skill>

<Skill>
<Name> Python </Name>
<ID> 5 </ID>
<Description> Able to code applications in Python </Description>
</Skill>

<Skill>
<Name> Ajax </Name>
<ID> 6 </ID>
<Description> Able to code web applications in Ajax </Description>
</Skill>


</List_Of_Skills>

这是我的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:element name="Skill">
    <xs:complexType>
    <xs:sequence>
        <xs:element name="Name" type="xs:string"/> 
        <xs:element name="ID" type="xs:integer"/> 
        <xs:element name="Description" type="xs:string"/> 
    </xs:sequence>
    </xs:complexType>
    </xs:element>

</xs:complexType>
</xs:element>

</xs:schema>

这是错误: 错误 - 第8行,第27行:org.xml.sax.SAXParseException; lineNumber:8; columnNumber:27; s4s-elt-invalid-content.1:'#AnonType_List_Of_Skills'的内容无效。元素'元素'无效,错位或过于频繁发生。

如果有人有任何信息,谢谢

Mayeul

1 个答案:

答案 0 :(得分:4)

确保你有xs:sequence或其他东西

<?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="Name" type="xs:string"/>
                            <xs:element name="ID" type="xs:integer"/>
                            <xs:element name="Description" type="xs:string"/>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>