我有一个包含多个参数链接的xhtml文件:
index.jsp?foo=bar&foo2=bar2&foo3=bar3.
Saxon 9.5试图将& foo2解释为一个实体,但显然失败了。 我无法更改我的xml(这是一个来自互联网的网页),我可以使用一些正则表达式对其进行预处理,但是如果可能的话,我希望避免编程。
java -jar %SAXON_HOME%\saxon9he.jar -xsl:transfo.xsl -s:pageWeb.xml -o:result.html -dtd:off --recognize-uri-query-parameters:false
不起作用。 是否可以不修改xml?
谢谢
答案 0 :(得分:1)
如果您将某些内容提供给XML格式不是格式良好的XML解析器,那么解析器就会拒绝它,这就是为什么有一个规范。 Saxon只依靠XML解析器来处理其输入文档和样式表。
如果您的输入格式不正确,那么您可以尝试使用其他解析器,例如TagSoup或HTML5 parser,您需要告诉Saxon使用-x
来使用它选项例如java -jar %SAXON_HOME%\saxon9he.jar -x:org.ccil.cowan.tagsoup.Parser ...
或java -jar %SAXON_HOME%\saxon9he.jar -x:nu.validator.htmlparser.sax.HtmlParser ...
。