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

Subject: [xsl] // expanding to descendant-or-self::node()
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Tue, 16 Sep 2008 14:23:33 +0100
Why does // expand to descendant-or-self::node() rather than to
descendant::x where x is the next item in the path?

It seems like because of the implicit child:: axis, // had to expand
to descendant-or-self, even though it doesn't make sense to include
the self axis... In other words, the self axis is only included
because of the implicit child axis - if that wasn't there, it wouldn't
be needed.

For example:

/foo//bar/baz

Why is the // is a step in its own right, rather than "//bar" being a
single step - why can't the above expand to:

/child::foo/descendant::bar/child::baz

?



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

Current Thread