【问题标题】:XML Schema validation containing ASSERT Tag包含 ASSERT 标记的 XML 模式验证
【发布时间】:2014-06-26 02:21:49
【问题描述】:

我正在尝试使用其中包含 assert 标记的 XML 架构来验证 XML 实例。验证器抛出包含以下消息的异常:

“#AnonType_message”的内容无效。元素 'assert' 无效、放错位置或频繁出现。

这是我的代码:

//xmlData is a xml string
Source xmlFile = new StreamSource(new StringReader( xmlData ));

SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);

Schema schema = schemaFactory.newSchema(schemaFile);
Validator validator = schema.newValidator();

validator.validate(xmlFile);

这是解析器的错误信息:

org.xml.sax.SAXParseException

【问题讨论】:

    标签: java xml xsd xsd-validation


    【解决方案1】:

    <assert> 标记在 XSD 1.1 架构中有效。

    要验证您的架构,您需要一个兼容 XSD 1.1 的解析器。请参阅this question 以及有关如何在应用程序中配置它的示例的答案。

    您可能还想检查您的 XSD 文档是否在 <xs:schema> 开始标记中具有这两个属性:

    <xs:schema ...
           xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" vc:minVersion="1.1" ...>
    

    【讨论】:

    猜你喜欢
    • 2020-04-01
    • 2011-06-02
    • 2010-11-22
    • 2013-05-22
    • 1970-01-01
    • 2011-07-23
    • 1970-01-01
    • 2010-10-25
    • 2010-12-07
    相关资源
    最近更新 更多