This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Transitive closure for XPath
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