Re: [xsl] Selecting a Element by ID

Subject: Re: [xsl] Selecting a Element by ID
From: Andreas Grytz <agrytz@xxxxxxxxxxxxx>
Date: Fri, 6 Feb 2004 14:54:26 +0100
On Fri, Feb 06, 2004 at 12:43:46PM +0000, David Carlisle wrote:
> 
> <xsl:copy-of (or apply-templates, depending on what you want)
>   select="/article/answer[@ref=current()/@id]"/>
That works. I tried 
/article/answer[@ref=self::node()/@id]
and also
/article/answer[@ref=@id]

Both didn't work.
> 
> If the ref attribute is of declared in a DTD to be of type ID it's
> simpler
> 
> select="id(@ref)
> 
> but I guess that isn't the case.
Yes, it isn't. But it would be possible to do.
> 
[..]
> which is equivalent to the first but may be faster (well that bit is
> almost certainly faster but you pay the price of building the key table
> in memory which takes time and space so it depends a lot on the size of
> the document and how often you are doing the lookup)
I keep this in mind. Up to here there only a few data sets, so it would
not be very slow.

Thanks for the enlightment.

Andreas
-- 
Andreas Grytz		| http://www.linuxnewmedia.de
Stefan-George-Ring 24	| Tel:	+49 (0) 89 993411-0
D-81929 München		| Fax:	+49 (0) 89 993411-99

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread