Я использую опцию xmllint --schema для проверки моего XML, который выглядит следующим образом
<XML>
<Active>True</Active>
</XML>
В моем файле схемы есть следующая строка, описывающая активный элемент.
<xsd:element name="Active" type="xs:boolean" />
Когда я запускаю xmllint, я получаю сообщения об ошибках с надписью
/ tmp / schema_validation.xml: 73: element
Активен: Ошибка достоверности схемы:
Элемент «Активный»: «Истина» не является
действительное значение атомарного типа
'Хз: логическое значение'
.
Когда я меняю XML на
<Active>true</Active>
Тогда сообщение об ошибке исчезает.
Итак, это выглядит как xsd: boolean означает, что все это строчные буквы "true / false", но не "True / False" для xmllint .. Мой вопрос, как я могу заставить xmllint принимать "True" для типа xsd: boolean ? Или есть другие инструменты, которые я могу использовать для проверки этого XML? На данный момент я не могу изменить XML или схему.
Спасибо!