Subject: Re: characters in xsl
From: David Carlisle <davidc@xxxxxxxxx>
Date: Thu, 11 Nov 2004 22:11:16 GMT
|
> '//stone' is a 'better match' in the sense that it is more specific. It will not match the root
> element if its name would be stone. Thus not all 'stone' elements in the document, but all _child_
> elements (= elements that have a parent) named 'stone'. It works in fact the same as './/stone',
> where the current element will not be included if it happened to be a 'stone' element as well.
No. The top level element is a child of the document root node / (which
is not an element) //stone selects all elements called stone.
> To match or select the root element if it is stone, use '/stone'. To match any element stone, just
> use 'stone'. To access any stone element in the document, even the root, (at any moment during the
> transformation), use '/descendant-or-self::stone'.
If you are talking of match patterns you can't use descendant-or-self::
> In short: it usually doesn't make sense to use // in match patterns. And keep in mind that //stone
> in select patterns don't include the root element.
XPath doesn't have a "root element" only teh document root which encodes
the whole document not its top level element.
David
________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
|