xsl-list
[Top] [All Lists]

[xsl] Filter duplicates in current-group()

2006-03-29 10:27:51
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 

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>
  • [xsl] Filter duplicates in current-group(), Don Smith <=