Re: Designs for XSLT functions (Was: Re: RE: syntax su
Hi Joe, > > Yes, but the conditional construct cannot be an extension function since > > a function call in XPath evaluates all its parameter *before* entering > > the function. > > Not necessarily; XSLT and XPATH give implementors considerable > latitude wrt evaluation strategies. I suspect that most XSLT > processors already use lazy evaluation to some degree. It's true that implementors can choose to evaluate expressions in any fashion they like as long as the result is the same as if evaluated by the process described in the spec. However, this doesn't help much in this situation. The only thing a user can rely on is (from 3.2 in the spec): "A FunctionCall expression is evaluated by using the FunctionName to identify a function in the expression evaluation context function library, evaluating each of the Arguments, converting each argument to the type required by the function, and finally calling the function, passing it the converted arguments." By this definition a recusive function written with an exsl:if () extension function would recurse for ever. It could work in some implementations that for example utilize lazy evaluation, but it would be implementation dependent hence you can't count on it. Cheers, </David> David Rosenborg Pantor Engineering AB XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format