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

发布于 2024-11-14 17:24:01 字数 818 浏览 2 评论 0原文

即使没有明确的文本输出,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>

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

可能是什么问题?

XSLT parsers should produce an empty file even if there is no explicit text output. However, I have a situation where Saxon-HE 9.3 does not produce any file output at all.

I compiled the files using this command:

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

Whereby the contents of 1.xml is:

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

And the contents of 2.xsl is:

<?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>

However, there is no output (not even an empty file). Neither is there any error message.

What could have been the problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

紙鸢 2024-11-21 17:24:01

转换完全有可能 100% 正确但不产生任何输出。下面是一个示例样式表,它就是这样做的:

<xsl:template match="/"/>

因此推测您的代码中存在错误,如果您希望我们帮助您找到它,您需要向我们展示您的代码。

It's perfectly possible for a transformation to be 100% correct and yet produce no output. Here's an example stylesheet that does just that:

<xsl:template match="/"/>

So the conjecture is that there's a bug in your code, and if you want us to help you find it, you'll need to show us your code.

邮友 2024-11-21 17:24:01

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

当文件 1.xml2.xslTransform.exe 位于桌面时,输出没有问题。

但是当文件位于 C:\ 中时,它会给出错误消息:

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

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

It's likely to be a bug or an "insufficient privileges" problem.

When the files 1.xml, 2.xsl, and Transform.exe are located in the desktop, there are no problems with the output.

But when the files are in C:\, it gives an error message:

Failed to create output file file:/c://3.html: Access to the path 'c:\3.html' is denied.

Yet for some reason, when the files are in C:\Program Files\Saxonica\SaxonHE9.3N\bin, there's no output and no error message.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文