[xsl] The evaluate function

Subject: [xsl] The evaluate function
From: Mark Feblowitz <mfeblowitz@xxxxxxxxxxxxxxxx>
Date: Wed, 2 Jan 2002 16:32:19 -0500
A few questions on xsl "evaluate" functions 

First, I noticed the following in the 20 December 2001 XSLT Version 2.0
working draft
<http://www.w3.org/TR/2001/WD-xslt20-20011220/#dynamic-evaluation> ):
		Issue (evaluate-function): There is at present no consensus
within the working group that such a function should be provided, as it has
significant implications on the run-time architecture of the processor, as
well as the ability to do static optimization.
Are there leanings in either direction, or is this particular issue in

It seems that many questions on this list involve solutions that require use
of an evaluate function. So the need is clearly there. 

Not having built an XSL processor, I'll take it on faith that such a
capability could alter the architecture. It would seem that there would have
to be two separate XPath evaluators if a processor were to support both the
evaluation of static (optimized) XPath expressions and dynamic XPath

What I don't understand is why there is an issue regarding static
optimization. It would seem that those expressions that were to be
dynamically evaluated could be flagged as such (e.g., using an explicit
evaluate function) and not adversely affect optimized processing of static
expressions. What am I missing?

Other questions:

Both Saxon and Xalan support evaluate functions. Are there widely used XSL
processors that do not provide such a capability? Does MSXML provide an
equivalent? How is it invoked?

Do all of the existing implementations perform the evaluations uniformly?
Could I expect Xalan and Saxon to evaluate the same XPath expression and get
a different result (barring, of course, any bugs).



Mark Feblowitz                                   [t] 617.715.7231
Frictionless Commerce Incorporated     [f] 617.495.0188 
XML Architect                                     [e]
400 Technology Square, 9th Floor 
Cambridge, MA 02139 

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

Current Thread