Subject: Re: Connecting the Source and Destination fields
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Mon, 20 Aug 2007 09:51:31 +0100
|
On 8/20/07, Yaswanth <yaswanth.mtrx@xxxxxxxxx> wrote:
>
> Hi Ronan and Andrew,
> Thanks for the Help.
> I am able to get the exact result .
> I am working on it . I think I need to understand XSL:Key ..
> I will look into it..
> Ronan , Thanks for the brilliant solution !
If you did want to use a key then all you need to do is define the key:
<xsl:key name="conn-by-source" match="connection" use="@source"/>
then put this wherever you want your output:
<xsl:text>event.0</xsl:text>
<xsl:apply-templates select="key('conn-by-source', 'event.0')"/>
and have this template:
<xsl:template match="connection">
<xsl:text> -> </xsl:text>
<xsl:value-of select="@destination"/>
<xsl:apply-templates select="key('conn-by-source', @destination)"/>
</xsl:template>
and thats it - no need for recursive named templates: the "recursion"
stops when the key doesn't return an element for a given string.
--
http://andrewjwelch.com
|