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/3/2006 9:32:00 AM 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 | ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
