My question is this though. If it is found that using 'keys'
is a helpful
optimisation, if I keep a copy of the XSLT processor in a cache (the
messages are requests to a web service), does this include
any internal
structure/indexes created for said keys (I don't know how these work
internally so I could be completely wrong ?).
This is entirely processor-dependent.
Saxon tries to keep a copy of the hash table that supports the key provided
you use both (a) the same compiled stylesheet (JAXP Templates object) and
(b) the same source document (Saxon NodeInfo object) - in this case, the
lookup document. To achieve this, make sure the lookup document is prebuilt
by the application and supplied as a parameter, rather than building it from
within the stylesheet using document().
You might find that it's easier to get index reuse by using the id()
function rather than key() - but again this is processor-dependent.
Michael Kay
http://www.saxonica.com/
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--