Subject: RE: Grouping
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 7 Dec 2005 13:45:12 -0000
|
This is a classic grouping problem (you've even identified it as such!), and
the classic response is, go see
http://www.jenitennison.com/xslt/grouping
Grouping is a bit tortuous in XSLT 1.0 (as witness the rather confused
thread that followed your question). It becomes very easy in 2.0 with the
new xsl:for-each-group construct.
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: Phillip B Oldham [mailto:phillip.oldham@xxxxxxxxxx]
> Sent: 07 December 2005 08:44
> To: Mailing List: XSL
> Subject: Grouping
>
> Hi all
>
> I've the following xml doc:
>
> <recordset>
> <row>
> <question_id>1</question_id>
> <answer>blah blah blah...</answer>
> </row>
> <row>
> <question_id>1</question_id>
> <answer>blah blah blah...</answer>
> </row>
> <row>
> <question_id>2</question_id>
> <answer>blah blah blah...</answer>
> </row>
> <row>
> <question_id>2</question_id>
> <answer>blah blah blah...</answer>
> </row>
> ...etc...
> </recordset>
>
> I'd like to be able to group the output so I get the following:
>
> Answers to question 1:
> - blah blah blah...
> - blah blah blah...
> Answers to question 2:
> - blah blah blah...
> - blah blah blah...
> ...etc...
>
> There isn't a fixed number of answers to each question, so
> grouping on a
> set of say 10 isn't possible. I've tried using preceeding-sibling, but
> can't seem to get anywhere with it.
>
> Any ideas?
>
> Phill
|