Re: AW: [xsl] xsl:key function help

Subject: Re: AW: [xsl] xsl:key function help
From: "Joris Gillis" <roac@xxxxxxxxxx>
Date: Thu, 04 Aug 2005 09:40:01 +0200
Tempore 08:22:25, die 08/04/2005 AD, hinc in xsl-list@xxxxxxxxxxxxxxxxxxxxxx scripsit David Preuss <d.preuss@xxxxxxxxxxx>:

That is OK so far because I can understand. Regarding the Muenchian method
which is described on Jenis site I tried the following:

<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
<xsl:key name="Categories" match="Tip" use="@Topic" />
<xsl:output method="xml"/>
	
	<xsl:template match="/">		
		<xsl:apply-templates select="Tip[generate-id(.) =
generate-id(key('Categories',@Topic)[1])]"/>
	</xsl:template>

	<xsl:template match="Tip" >
		<xsl:for-each select="key('Categories', @Topic)">
			<xsl:value-of select="@Subtopic"/>
		</xsl:for-each>
	</xsl:template>

The usage of the 'key()' function and the implementation of the Muenchian grouping is 100% correct. The problem is really much easier: You do not want <xsl:template match="/"> but instead: <xsl:template match="TipDatabase">

regards,
--
Joris Gillis (http://users.telenet.be/root-jg/me.html)
B+N N1N;N.N8N5N9N1 N:N1N9 ON? N;N,N4N9 ON,N=ON1 N2N3N1N/N=N?ON= N1OO ON,N=O	B;

Current Thread