Re: [xsl] Connecting the Source and Destination fields

Subject: Re: [xsl] 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

Current Thread