Re: [xsl] An observation on the performance of fn:transform

Subject: Re: [xsl] An observation on the performance of fn:transform
From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 3 Jul 2020 09:19:01 -0000
> Perhaps a argument for something akin to fn:compile-transform($options as
map(*)) as function($options), which does the compilation once and returns an
exectuable function. Before XSLT3 and xsl:evaluate, Saxon had (and still has)
something similar for XPath: saxon:expression() and saxon:evaluate()
>

We still offer saxon:compile-stylesheet() followed by saxon:transform(),
though it doesn't have all the options that fn:transform() provides. I would
like to think that fn:transform() with cache=yes achieves the same benefits.

We currently honour cache="yes" in all cases provided that no static
parameters are supplied. If there are static parameters, we don't attempt to
check that they are consistent with previous uses, we just bypass the cache.

Michael Kay
Saxonica

Current Thread