Re: [xsl] Fun with xsl:number and a key

Subject: Re: [xsl] Fun with xsl:number and a key
From: David Carlisle <davidc@xxxxxxxxx>
Date: Thu, 14 Oct 2004 23:34:51 +0100
>   <xsl:key name="refentries" match="@title" use="."/>

well, there you are then:-)

you are keying on the attribute itself, so when you for-each to that
xsl:number looks for sibling nodes of the same name and doesn't find any
as attributes don't have siblings, so you get 1.

either you want to use


  <xsl:key name="refentries" match="*[@title]" use="@title"/>

ie key elements taht have a title attribute, and key on their titles,
this is the most common way and mirrors the behaviour of id() and DTD
defined DTD's id() doesn't return the ID attribute, it returns the
element identifed by that attribute.

Or you keep the key as it is but your for-each wants to be
select"=key('refentries',.)/.."
so that you go to the parent element of the attribute, then xsl:number
will be on the same node as it was on before, and gve the same result.

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
________________________________________________________________________

Current Thread