Subject: Re: 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
|