【问题标题】:XSLT-2.0: Output to fileXSLT-2.0:输出到文件
【发布时间】:2017-02-03 12:00:49
【问题描述】:

使用 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>

【问题讨论】:

    标签: xpath xslt-2.0 saxon


    【解决方案1】:

    使用

    <xsl:template match="/">
      <xsl:result-document href="Output.xml">
        <xsl:apply-templates/>
      </xsl:result-document>
    </xsl:template>
    

    加上正常的身份转换模板,样式表创建的输出将转到Output.xml。您当前的代码匹配任何节点,并且对于每个匹配的节点都尝试打开同一个文件,这是不允许的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-12
      • 2010-11-10
      • 2018-05-17
      • 1970-01-01
      相关资源
      最近更新 更多