我正在使用xmllint --schema选项来验证我看起来像这样的XML
<XML>
<Active>True</Active>
</XML>
Run Code Online (Sandbox Code Playgroud)
在我的模式文件中,我有以下描述Active元素的行.
<xsd:element name="Active" type="xs:boolean" />
Run Code Online (Sandbox Code Playgroud)
当我运行xmllint时,我会收到错误消息
/tmp/schema_validation.xml:73:element Active:架构有效性错误:元素'Active':'True'不是原子类型'xs:boolean'的有效值.
当我将XML更改为
<Active>true</Active>
Run Code Online (Sandbox Code Playgroud)
然后错误消息消失.
所以,它看起来像xsd:boolean意味着它全部小写为"true/false"而不是xmllint的"True/False".我的问题是,如何使xmllint接受xsd:boolean类型的"True"?或者我可以使用哪些工具来验证这个XML?此时更改XML或架构不是我的选择.
谢谢!