Re: [xsl] Transitive closure for XPath

Subject: Re: [xsl] Transitive closure for XPath
From: Francis Norton <francis@xxxxxxxxxxx>
Date: Fri, 20 Apr 2001 09:25:08 +0100

Christian Nentwich wrote:
> 
> 
> I am not an expert in XPath details, so I wonder how feasible it would be to
> disguise this as an axis: /*/node[1]/closure::id(./@child) ? A function is
> definitely much easier to implement though.
> 
Perhaps we could borrow a trick from physics and represent time as an
axis?

So we would still have a closure() function but have a notation for
delayed evaluation:

	closure(/closure/node[1], delay::key("myKey", @child))

Or if that breaks XPath when you mix it with real axes, something real
simple like a leading "#", eg:

	closure(/closure/node[1], #key("myKey", @child))

meaning "what follows the '#' must be a syntactically evaluatable XPath
expression but must be passed to the function unevaluated."

Does this make enough sense to submit to the XPath 2.0 editors as a
suggestion?

Francis.

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


Current Thread