是否可以使用 Xerces 解析具有内联模式的 XML 文件?我一直在尽我所能来完成这项工作,但我无法成功。它总是在下面代码的最后一行抛出异常(模式是一个包含 xml 和内联模式的字符串):
private XSModel getXSModel(String schema) throws XNIException, IOException{
XMLGrammarPreparser preparser = new XMLGrammarPreparser();
preparser.registerPreparser(XMLGrammarDescription.XML_SCHEMA, null);
XSGrammar g = (XSGrammar)preparser.preparseGrammar(XMLGrammarDescription.XML_SCHEMA,new XMLInputSource(null, null, null,new ByteArrayInputStream(schema.getBytes()), "ISO-8859-1"));
return g.toXSModel();
}
错误如下:
[错误]:1:9586:s4s-elt-character:除“xs:appinfo”和“xs:documentation”之外的架构元素中不允许使用非空白字符...
该消息出现在属于 XML 的每一行(超出模式标记)
更新:这是一个例子:
<root>
<schema xmlns="http://www.w3.org/2001/XMLSchema">
<element name="age" type="integer"/>
</schema>
<!--HERE THE XML BEGINS-->
<age>35</age>
</root>