xsl-list
[Top] [All Lists]

Re: how to estimate speed of a transformation

2003-12-11 07:19:01
XSLT is almost soley specified by expected result, not assuming any
processing model, and given that, it is very hard to make the kind of
assurances that you are seeking. I'm not sure if you can even really
specify what it means to do tail recursion elimination unless you have
some explict stack model for implementing template calls.

I see. How to specify computational complexity for XSLT constructs is 
a question I don't have  an answer to.

In practice though, systems are not at
either extreme, and the hint given by xsl:key that the system might like
to optimise that Xpath  appears to speed things up on most processors, i
don't think you can say more than that.

Can I then have hints to trigger other optimisations as well? Is using a global
variable an optimisation hint? Can I somehow give processor a hint that I want
to access a nodeset by position, not by key?

Putting it differently, if xsl:key/key is an optimisation hint, what are other
optimisation hints? In particular, how to hint a particular processor (and 
preferrably,
more than one) that I want 

- a template call to be optimised;
- access to a nodeset by position;
- a particular result to be cached.

I am really trying to understand. What's the difference between, say, existing 
xsl:key/key
and xsl:index/index (the latter is imaginary access to a nodeset by position)?

David

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list