Я пытался спроектировать XML-схему, но я застреваю. Мой XML-файл не будет проверяться по моей схеме. Я подозреваю, что я делаю какую-то ошибку новичка. Кто-нибудь может указать, где я иду не так? Сообщение об ошибке не имеет смысла для меня.
Вот мой xsd файл:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.test.com/teststuff/XMLnamespace" >
<xs:element name="dataCollecFile">
<xs:complexType>
<xs:sequence>
<xs:element name="fileHeader" minOccurs="0" maxOccurs="unbounded">
</xs:element>
<xs:element name="data" minOccurs="0" maxOccurs="unbounded">
</xs:element>
<xs:element name="fileFooter">
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
А вот содержимое XML-файла, который не будет проверяться:
<?xml version="1.0" encoding="UTF-8"?>
<dataCollecFile xmlns="http://www.test.com/teststuff/XMLnamespace" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.test.com/teststuff/XMLnamespace test.xsd">
<fileHeader>heady head header</fileHeader>
<data>data data</data>
<fileFooter>foot feet feeter</fileFooter>
</dataCollecFile>
Наконец, вот сообщение об ошибке, которое я получаю из класса Java javax.xml.validation.Validator:
cvc-complex-type.2.4.a: Invalid content was found starting with element 'fileHeader'. One of '{fileHeader, data, fileFooter}' is expected.