为什么Saxon不会产生任何文件输出?

时间:2011-06-10 09:01:03

标签: xml xslt saxparser saxon

即使没有明确的文本输出,XSLT解析器也应该生成一个空文件。但是,我的情况是Saxon-HE 9.3根本不会产生任何文件输出。

我使用此命令编译了文件:

Transform -s:1.xml -xsl:2.xsl -o:3.html

因此 1.xml 的内容为:

<?xml version="1.0"?>
<!-- greeting.xml -->
<x>
<greeting>1</greeting><greeting>2</greeting>
</x>

2.xsl 的内容是:

<?xml version="1.0"?>
<!-- greeting3.xsl -->
<xsl:stylesheet version="2.0" 
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="html"/>

  <xsl:template match="/"/>
</xsl:stylesheet>

但是,没有输出(甚至没有空文件)。 也没有任何错误消息。

可能是什么问题?

2 个答案:

答案 0 :(得分:2)

转换完全有可能100%正确但不产生输出。下面是一个示例样式表:

<xsl:template match="/"/>

所以猜想你的代码中存在一个错误,如果你希望我们帮你找到它,你需要向我们展示你的代码。

答案 1 :(得分:1)

这可能是一个错误或“权限不足”的问题。

当文件 1.xml 2.xsl Transform.exe 位于桌面时,没有任何问题输出。

但是当文件位于C:\时,会显示错误消息:

  

无法创建输出文件文件:/ c://3.html:拒绝访问路径“c:\ 3.html”。

但由于某种原因,当文件位于C:\Program Files\Saxonica\SaxonHE9.3N\bin时,没有输出 没有错误消息。

相关问题