| 
 
Subject: Re: [xsl] key with restricting the scope of use attribute From: David Carlisle <davidc@xxxxxxxxx> Date: Fri, 11 May 2001 15:15:52 +0100  | 
I know I've said this before but your key isn't doing anything at all.
 <xsl:for-each select="key('MyKey1',concat(generate-id(),':','1:1'))">
  MyKey1:@id=<xsl:value-of select="@id"/><br/>
 </xsl:for-each>
is just
 <xsl:if test="@x=1 and @y=1">
  MyKey1:@id=<xsl:value-of select="@id"/><br/>
 </xsl:if>
There is no for-each involved really as you are never making any use of
the key. The point of a key is to hash all elements with @x and @y
being 1 so you can find them quickly.
You do that but then don't use it and search the document again the slow
way by going
<xsl:apply-templates select="/root/a[1]/b[1]"/>
Then you use a key lookup that can only ever succeeed on the current
node, so you know whether it will succeed before you do it.
David
_____________________________________________________________________
This message has been checked for all known viruses by Star Internet delivered through the MessageLabs Virus Scanning Service. For further information visit http://www.star.net.uk/stats.asp
 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
| Current Thread | 
|---|
  | 
| <- Previous | Index | Next -> | 
|---|---|---|
| Re: [xsl] key with restricting the , Dan Diebolt | Thread | Re: [xsl] key with restricting the , Jeni Tennison | 
| Re: [xsl] key with restricting the , Dan Diebolt | Date | RE: [xsl] Incrementing a Variable, Jon Wynacht | 
| Month |