Re: [xsl] // expanding to descendant-or-self::node()

Subject: Re: [xsl] // expanding to descendant-or-self::node()
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Tue, 16 Sep 2008 14:47:43 +0100
> currently // expands to /descendant-or-self::node()/ which is not owhat
> one would first think of, but it works consistently without depending on
> the following step. And that expansion is at the level of expression
> terms not syntax fragments.
>
> one might expect // to expand to descendant::  but descendant:: itself
> isn't really an expression, just part of the syntax for an axis step and
> that causes problems..
>
> //foo could have been defined to be /descendant::foo
> but you can not define
> //@foo to be descendant::@foo as that's a syntax error, wheras
>  /descendant-or-self::node()/@foo is all foo attributes in the document,
> which is the desired meaning.
>
> similarly any other axis, including child::
> //child::foo can't expand to /descendant::child::foo

//@foo and //child:: would both be errors -  //@* would need to be
//*/@foo and //child:: doesn't make sense anyway

I think that's a better situation than we have now...




-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/

Current Thread