Altova Mailing List Archives>Archive Index >xsl-list Archive Home >Recent entries >Thread Prev - [xsl] can the Muenchian method do this? [Thread Next] Re: [xsl] can the Muenchian method do this?To: Date: 1/4/2006 3:31:00 AM 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 | ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
