小编Soi*_*shi的帖子

xsd:boolean element type接受"true"但不接受"True".我怎么能让它接受呢?

我正在使用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或架构不是我的选择.

谢谢!

xml xsd boolean

52
推荐指数
2
解决办法
12万
查看次数

标签 统计

boolean ×1

xml ×1

xsd ×1