This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: grouping question
- To: "'xsl-list at lists dot mulberrytech dot com'" <xsl-list at lists dot mulberrytech dot com>
- Subject: RE: [xsl] grouping question
- From: Patrick Moore <patrickm at rioport dot com>
- Date: Thu, 12 Apr 2001 18:33:36 -0700
- Reply-To: xsl-list at lists dot mulberrytech dot com
Hi All --
Addendum to my earlier question. This xsl seems to be a good start but I am
having problems with use of "following-sibling". I am operating under the
assumption that I can get the database to tell me how many tracks are in
each product. I am hoping that this will help me.
-Pat Moore-
<?xml version="1.0"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:sql="org.apache.xalan.lib.sql.XConnection"
xmlns:rioport="com.rioport.util.xsl.XSLUtil"
xmlns:jDate="java.util.Date"
extension-element-prefixes="sql rioport jDate" >
<xsl:output method="xml" indent="yes" />
<xsl:template match="/" >
<results>
<xsl:apply-templates
select="document/row[not(preceding-sibling::row[1]/album = album)]" />
</results>
</xsl:template>
<xsl:template match="row">
<product>
<xsl:for-each select="current() | following-sibling::row[1]" >
<track>
<xsl:copy-of select="."/>
</track>
</xsl:for-each>
</product>
</xsl:template>
</xsl:stylesheet>
~
~
~
> -----Original Message-----
> From: Patrick Moore [mailto:patrickm@rioport.com]
> Sent: Thursday, April 12, 2001 5:45 PM
> To: Xsl List (E-mail)
> Subject: [xsl] grouping question
>
>
> Hi there --
>
> I have looked through the email about grouping withput
> finding this question
> being answered.
>
> I am using Xalan sql extension to generate the data that will
> be processed
> by the xsl stylesheet. Because it is a database query I have
> constructed the
> query so the results are sorted based on the element that I
> wish to group
> by. Because this extension lets me look at only one row at a
> time, and I
> cannot go back, the Mueschean method is not possible. (Or at least not
> prefered).
>
> I was wondering if anyone had some thoughts on a way I can
> take advantage of
> the ordering that SQL can do to come up with a simpler
> method. Some sample
> data:
>
> <rowset>
>
> <row><album>1</album><track_id>1</track_id><artist>Rush</artist></row>
>
> <row><album>1</album><track_id>2</track_id><artist>Rush</artist></row>
>
> <row><album>2</album><track_id>1</track_id><artist>Rush</artist></row>
>
> <row><album>2</album><track_id>2</track_id><artist>Rush</artist></row>
> </rowset>
>
> As soon as I see the "Album 2" I know that there are no more
> <album>1</album>'s Can I take advantage of this in any manner?
>
> My preliminary conclusion is no... but I am new enough to xsl
> to wonder if
> this is indeed the case.
>
> -Patrick Moore
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list