发现以元素开头的无效内容



我在编写xml和xsd时出错。我写了学生.xsd:

<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema attributeFormDefault="unqualified"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="qualified">
    <xs:element name="students">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="student">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="name">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element name="firstName" type="xs:string"/>
                                        <xs:element name="lastName" type="xs:string"/>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="faculty">
                                <xs:simpleType>
                                    <xs:restriction base="xs:string">
                                        <xs:enumeration value="fkp"/>
                                        <xs:enumeration value="fitu"/>
                                        <xs:enumeration value="fre"/>
                                        <xs:enumeration value="fksis"/>
                                        <xs:enumeration value="ftk"/>
                                        <xs:enumeration value="fnido"/>
                                    </xs:restriction>
                                </xs:simpleType>
                            </xs:element>
                            <xs:element name="address">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element name="country">
                                            <xs:simpleType>
                                                <xs:restriction base="xs:string">
                                                    <xs:minLength value="2"/>
                                                    <xs:maxLength value="20"/>
                                                </xs:restriction>
                                            </xs:simpleType>
                                        </xs:element>
                                        <xs:element name="city">
                                            <xs:simpleType>
                                                <xs:restriction base="xs:string">
                                                    <xs:minLength value="2"/>
                                                    <xs:maxLength value="20"/>
                                                </xs:restriction>
                                            </xs:simpleType>
                                        </xs:element>
                                        <xs:element name="street">
                                            <xs:simpleType>
                                                <xs:restriction base="xs:string">
                                                    <xs:minLength value="2"/>
                                                    <xs:maxLength value="30"/>
                                                </xs:restriction>
                                            </xs:simpleType>
                                        </xs:element>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="phone">
                                <xs:simpleType>
                                    <xs:restriction base="xs:positiveInteger">
                                        <xs:length value="6"/>
                                        <xs:pattern value="[0-9]"/>
                                    </xs:restriction>
                                </xs:simpleType>
                            </xs:element>
                        </xs:sequence>
                        <xs:attribute name="id" type="xs:int" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

我有档案学生.xml:

<?xml version="1.0" encoding="utf-8" ?>
<students xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:noNamespaceSchemaLocation="students.xsd">
    <student id="1">
        <name>
            <firstName>Ivan</firstName>
            <lastName>Ivanov</lastName>
        </name>
        <faculty>fksis</faculty>
        <address>
            <country>Belarus</country>
            <city>Minsk</city>
            <street>Rokossovskogo 24</street>
        </address>
        <phone>6677088</phone>
    </student>
    <student id="2">
        <name>
            <firstName>Petr</firstName>
            <lastName>Petrov</lastName>
        </name>
        <faculty>fre</faculty>
        <address>
            <country>Belarus</country>
            <city>Mogilev</city>
            <street>Leninskaya 25</street>
        </address>
        <phone>5467043</phone>
    </student>
</students>

在学生中.xml我有错误(发现以元素"学生"开头的无效内容。此时不需要子元素。部分地:

<student id="2">
        <name>
            <firstName>Petr</firstName>
            <lastName>Petrov</lastName>
        </name>
        <faculty>fre</faculty>
        <address>
            <country>Belarus</country>
            <city>Mogilev</city>
            <street>Leninskaya 25</street>
        </address>
        <phone>5467043</phone>
    </student>

问题是什么?如何纠正此错误?谢谢!

架构的设置方式,它默认只允许"学生"中的一个"学生"元素。如果需要一个或多个学生元素,则应将 maxHappen 设置为无界。

<xs:element name="student" maxOccurs="unbounded">

(如果省略,则 maxOccurs 默认为 1)

相关内容

最新更新