哪个是更快的xsl:function或xsl:call-template

时间:2018-04-26 06:33:21

标签: xslt comparison xslt-2.0

我必须处理大量数据,并在使用xsl:functionxsl:call-template之间混淆。只是想知道哪个更快更适合使用。

<xsl:variable name="tabledata">
    <xsl:copy-of select="table:table_process(.)"/>            
</xsl:variable>

<xsl:variable name="tabledata">
    <xsl:call-template name="table_process">
        <xsl:with-param name="table_data" select="."/>
    </xsl:call-template>
</xsl:variable>

1 个答案:

答案 0 :(得分:3)

我认为您必须使用特定的XSLT处理器和一组特定的XML输入和XSLT代码来衡量性能。我更喜欢使用<xsl:variable name="tabledata" select="table:table_process(.)"/>作为最紧凑和优雅的XSLT 2表示法,它也可能表现更好或者至少消耗更少的内存,因为你不需要复制函数调用的结果但是直接使用它。这完全取决于函数的确切功能以及是否需要复制其结果。