|
Subject: RE: [xsl] Filtering out duplicates in current-group() From: Don Smith <dtsmithisogen@xxxxxxxxx> Date: Wed, 29 Mar 2006 12:24:21 -0800 (PST) |
OK. I got it with:
<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:value-of select="current-grouping-key()"/>
</p>
</xsl:for-each-group>
</xsl:for-each-group>
Why is "value-of" required and "apply-templates"
illegal?
--- 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 , Wendell Piez | Thread | Re: [xsl] Filtering out duplicates , David Carlisle |
| Re: [xsl] XSL template "namespace" , Wendell Piez | Date | RE: [xsl] Fw: pdf file using xsl, Michael Kay |
| Month |