Subject: RE: [xsl] Filtering out duplicates in current-group() From: Don Smith <dtsmithisogen@xxxxxxxxx> Date: Wed, 29 Mar 2006 11:21:09 -0800 (PST) |
I tried this: <xsl:for-each-group select="Song" group-by="substring(Year, 1, 3)"> <p>Decade: <xsl:value-of select="current-grouping-key()"/>0's</p> <xsl:for-each-group select="current-group()" group-by="Title"> <p style="margin-left: 1pc;"> <xsl:apply-templates select="current-group()/Title"/> </p> </xsl:for-each-group> </xsl:for-each-group> but still get two "Strangers in the Night". I've also tried every other permutation of this I can think of. Same result. --- Michael Kay <mike@xxxxxxxxxxxx> wrote: > Just do another level of grouping: > > <xsl:for-each-group select="current-group()" > group-by="Title"> > .. output details of this title .. > > Michael Kay > http://www.saxonica.com/ > > > -----Original Message----- > > From: Smith, Donald > [mailto:DSmith@xxxxxxxxxxxxxxxxxxx] > > Sent: 29 March 2006 17:32 > > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > Subject: [xsl] Filtering out duplicates in > current-group() > > > > Given this source: > > > > <Playlist> > > <Song order="5" id="c95"> > > <Title>Maneater</Title> > > <Artist>Hall and Oates</Artist> > > <Album>H20</Album> > > <Year>1982</Year> > > </Song> > > <Song order="13" id="c49"> > > <Title>Strangers In The Night</Title> > > <Artist>Frank Sinatra</Artist> > > <Album>Reprise Collection Boxed Set</Album> > > <Year>1966</Year> > > </Song> > > <Song order="8" id="c22"> > > <Title>Strangers In The Night</Title> > > <Artist>Frank Sinatra</Artist> > > <Album>Your Hit Parade - '60s > Instrumentals</Album> > > <Year>1960</Year> > > </Song> > > </Playlist> > > > > And given the following templates from my > stylesheet: > > > > <xsl:template match="Playlist"> > > <h1>Songs By Decade</h1> > > <xsl:for-each-group select="Song" > group-by="substring(Year, 1, 3)"> > > <p>Decade: <xsl:value-of > select="current-grouping-key()"/>0's</p> > > <p style="margin-left: 1pc;"> > > <xsl:apply-templates > select="current-group()/Title" /> > > </p> > > </xsl:for-each-group> > > </xsl:template> > > > > <xsl:template match="Title"> > > <xsl:apply-templates select="." /><br/> > > </xsl:template> > > > > How do I filter the current group so that the same > song doesn't occur > > more than once for a decade (that is, so I don't > get "Strangers In the > > Night" more than once for the 60's)? > > > > Thanks, > > > > Don > > __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Filtering out duplicates , Michael Kay | Thread | RE: [xsl] Filtering out duplicates , Michael Kay |
Re: [xsl] XSL template "namespace" , Jon Gorman | Date | Re: [xsl] XSL template "namespace" , Wendell Piez |
Month |