Re: [xsl] can the Muenchian method do this?

Subject: Re: [xsl] can the Muenchian method do this?
From: dan@xxxxxxxxxxxxx
Date: Tue, 3 Jan 2006 22:31:15 -0500 (EST)
Hi Andrew,

Thanks for the help but unfortunately this is not giving me the results I
desire. When I run that, it returns an empty set. It also takes a long
time to run. There is no way to use the Muenchian method but base it on
another value in the node?

Dan

> On 1/3/06, dan@xxxxxxxxxxxxx <dan@xxxxxxxxxxxxx> wrote:
>> Hi,
>>
>> I would like to select a distinct value based on a sibling. I know that
>> the Muenchian method is used to select distinct values, but can I give
>> it
>> another variable to look at?
>>
>> Here is my xml:
>> <songlist>
>> <song>
>> <Artist>J-Live</Artist>
>> <Genre>Rap</Genre>
>> </song>
>> <song>
>> <Artist>Phish</Artist>
>> <Genre>Rock</Genre>
>> </song>
>> <song>
>> <Artist>J-Live</Artist>
>> <Genre>Rap</Genre>
>> </song>
>> <song>
>> <Artist>Jay-Z</Artist>
>> <Genre>Rap</Genre>
>> </song>
>> </songlist>
>>
>> I would like to select all the artists whose Genre is 'Rap' but not have
>> duplicates. So my return set would be 'J-Live, Jay-Z'
>>
>> Is this possible? I know I can do this with recursion, but obviously the
>> Muenchian method is preferred.
>
> Normal xpath will do:
>
> <xsl:stylesheet version="1.0"
>   xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
>
> <xsl:template match="/">
> 	<xsl:apply-templates select="/songlist/song[Genre = 'Rap'][Artist
> !preceding-sibling::song/Artist]"/>
> </xsl:template>
>
> <xsl:template match="song">
> 	<xsl:value-of select="Artist"/>
> 	<xsl:if test="position() != last()">, </xsl:if>
> </xsl:template>
>
> </xsl:stylesheet>
>
> cheers
> andrew
>
>


http://www.streampad.com
username - dan

Current Thread