[xsl] xsl:function vs. xsl:template

Subject: [xsl] xsl:function vs. xsl:template
From: "Felix Geller" <fgeller@xxxxxxxxx>
Date: Wed, 19 Nov 2008 13:38:02 +0100
Hi all,

   how does the experienced XSLT 2.0 programmer decide on whether to
use a xsl:function or a (named) xsl:template? Are any performance
issues involved (the processor I'm using is Saxon)?

When trying to comprehend a stylesheet, I find it easier if the
control-flow is managed by explicit function calls.
Using functions imposes the additional "burden" of passing the node to
work on, when compared to xsl:call-template. However, passing the node
brings the benefit of making the "context" explicit.
Being able to use a function in XPath expression also offers a less
verbose invocation of functionality.

What are other benefits/shortcomings of either side? I haven't found
any documentation on this issue but would appreciate any hints as to
where to find some.


-- Felix

Current Thread