使用SaxonHE 9.7 / XPath-2.0
为什么此标识模板返回"不能将多个结果文档写入同一个URI"何时将其输出发送到文件?没有xsl:result-document
,它会按预期将其发送到标准输出。
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:template match="@*|node()">
<xsl:result-document href="Output.xml">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:result-document>
</xsl:template>
</xsl:stylesheet>
答案 0 :(得分:2)
使用
<xsl:template match="/">
<xsl:result-document href="Output.xml">
<xsl:apply-templates/>
</xsl:result-document>
</xsl:template>
加上正常的身份转换模板,这样样式表创建的输出就会转到Output.xml
。您当前的代码与任何节点匹配,并且每个匹配的节点尝试打开同一个文件,这是不允许的。