[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Defining a key on a RTF inside a Template


Subject: Re: [xsl] Defining a key on a RTF inside a Template
From: Mukul Gandhi <mukul_gandhi@xxxxxxxxx>
Date: Wed, 8 Dec 2004 05:43:51 -0800 (PST)

Hi David,
  Thanks for your insightful comments.. You have
provided the most accurate definition of the scope of
xsl:key (i.e. the document node over which it
operates).. 

But please consider this.., if for instance, the main
XML document also contained the <projectsum> nodes,
then the key definition -
<xsl:key name="countDetail" match="projectsum"
use="@id"/>
would include those nodes also in the scope.. So
introducing the <temp> tag would be neccessary to
enforce the scope to RTF..

But I was wrong that <temp> was neccessary to enforce
scope to RTF(as you have clarified).. But using
<temp>(or any other name which does'nt exist in source
XML) would accurately enforce the scope of xsl:key to
RTF.. Am I right..?

Regards,
Mukul

--- David Carlisle <davidc@xxxxxxxxx> wrote:
> 
> 
> > It is this use
> > of a temporary tag(temp), which makes the scope of
> > xsl:key the RTF..
> 
> No. The extra element isn't needed, you could just
> as well go
> 
> <xsl:key name="countDetail" match="projectsum"
> use="@id"/>
> <xsl:variable name="projectSum">
>    <xsl:for-each select="//project">
>      <!-- other code -->
>    </xsl:for-each>
> </xsl:variable>
> 
> The scope of a key is always the document containg
> the current node at
> the point use use key(). xx:node-set makes a new
> document node when it
> generates a node set from a result tree fragment, so
> the key is always
> scoped to this generated document.
> 
> xsl:key by specification indexes all documents used
> in a stylesheet,
> but in practice a system will only build an index
> for documents for
> which key() is actually used.
> 
> 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
 


		
__________________________________ 
Do you Yahoo!? 
Read only the mail you want - Yahoo! Mail SpamGuard. 
http://promotions.yahoo.com/new_mail 


Current Thread
Keywords
xml