У меня возникла проблема с проверкой XML-файла по схеме XSD с помощью xmllint
: xmllint сообщает с ошибкой проверки, что такой тег, как <foobar/>
, не ожидается, хотя foobar
определен в схеме XSD следующим образом:
<xs:element name="foobar" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:positiveInteger">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="9999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Для сравнения:
<foobar>123</foobar>
действителен в соответствии с xmlint. xmlint также не жалуется, если я полностью удаляю тег foobar
из файла XML.
Вопрос:
Итак, какой смысл отрицать <foobar/>
?
Спасибо!
P.S.: Фактическое сообщение об ошибке:
myfile.xml:135298: element foobar: Schemas validity error : Element '{http://www.foobaz.com/namespace}foobar': '' is not a valid value of the local atomic type.
P.P.S.: версия xmlint 20901