如果 xml 不符合标准,则显示 xsd:annotation 注释:
有没有办法做到这一点。希望显示 xsd 中记录的自定义消息,以便在违反限制规则时显示
如果 xml 不符合标准,则显示 xsd:annotation 注释:
有没有办法做到这一点。希望显示 xsd 中记录的自定义消息,以便在违反限制规则时显示
如果我正确理解您想要什么,您应该使用 CDATA(未解析字符数据)块。例如:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" ... >
<xs:annotation>
<xs:documentation>
<![CDATA[
Here you write anything you want and don't care about XML syntax at all
...
]]>
</xs:documentation>
</xs:annotation>
...
</xs:schema>
<![CDATA[
和之间的任何内容]]>
都将完全按照所写的方式解析为单个字符串(文本)。
CDATA 块不是 XSD 特性,而是整个 XML 的特性。
更新:
我再次阅读了您的问题,看来您在问一些不同的问题。
当 XML 文件在针对该模式的验证期间未通过这些限制时,您可能希望在模式中为特定限制指定的一些自定义消息显示。
换句话说,您希望改进 XML 验证器发出的诊断消息,使它们对您的用户更容易理解。
好吧,在 XSD 1.0 中这是完全不可能的。
在 XSD 1.1 中有更多关于测试各种限制和条件的控制。但即使在那里,我也看不到如何指定任何自定义错误消息......