Проверка Xml-файла (с дополнительными элементами) на соответствие Xsd-схеме - PullRequest
0 голосов
/ 02 декабря 2011

У меня есть файл Xml-Schema для проверки XML-файлов.

Xml-Schema:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:element name="Person">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="Firstname"/>
                <xs:element name="Surename"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Я хочу иметь возможность успешно проверять XML-файлы, которые имеют дополнительныеэлементы, подобные этому:

<?xml version="1.0" encoding="UTF-8"?>
<Person xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Test.xsd">
    <Firstname>Jane</Firstname>
    <Surename>Doe</Surename>
    <City>Berlin</City>
</Person>

В этом примере я добавил элемент 'Город'.

Проверка не пройдена, поскольку она не ожидала больше элементов.

Что мне нужно добавить в мою схему, чтобы она принимала дополнительные элементы?

Я хочу это сделать, потому что иногда новые элементы добавляются вXML-файлы.Но я не хочу определять их в схеме, потому что я не хочу распространять более новую схему, даже если добавлен только один элемент.

То, что я ищу, - это что-то вроде заполнителя.для бесконечного числа дополнительных элементов.

1 Ответ

2 голосов
/ 02 декабря 2011

добавить xs:any в вашей последовательности, возможно, с неограниченным maxOccurs.Для получения дополнительной информации: http://www.w3.org/TR/xmlschema-1/#element-any.

...