This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: XSL Abbreviations
- To: xsl-list at mulberrytech dot com
- Subject: Re: XSL Abbreviations
- From: Matt Sergeant <matt at sergeant dot org>
- Date: Mon, 3 Jul 2000 13:50:13 +0100 (BST)
- cc: benjaminpickering at hotmail dot com
- Reply-To: xsl-list at mulberrytech dot com
On Mon, 3 Jul 2000, Ben Pickering wrote:
> Hi
>
> I have a really quick question. What is the abbreviated equivalent of:
>
> ../descendant-or-self::node()[generate-id(.) = $node]
>
> The XPath docs say that '//' is equivalent to 'descendant-or-self::node()',
> but if I try
>
> ..//[generate-id(.) = $node]
>
> I get an error, and
>
> ..//*[generate-id(.) = $node]
>
> is nearly there, but produces a different effect. What do I use to replace
> the '*', as I don't want to select the children of '..'s descendants, I want
> the descendants themselves. '.' doesn't work.
>
> It seems to be that '//' is equivalent to 'descendant::node()', ie, 'self'
> is not included. What am I doing wrong?
Just reading the XPath docs wrong, that's all. // is equivalent to
/descendant-or-self::node()/ - note the leading and trailing slashes. You
could try ..//.[generate-id(.) = $node]
--
<Matt/>
Fastnet Software Ltd. High Performance Web Specialists
Providing mod_perl, XML, Sybase and Oracle solutions
Email for training and consultancy availability.
http://sergeant.org | AxKit: http://axkit.org
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list