我写错了xml和xsd。 我写了students.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>
我有文件students.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>
在students.xml中我有错误(从元素&#39开始发现无效内容;学生&#39;。此时不会有子元素。)部分:
<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>
有什么问题?如何更正此错误? 谢谢!
答案 0 :(得分:1)
您的架构设置方式,默认只允许一个&#34;学生&#34;元素&#34;学生&#34;。如果你想要一个或多个学生元素,你应该将maxOccurs设置为unbounded。
<xs:element name="student" maxOccurs="unbounded">
(如果省略,maxOccurs默认为1)