Subject: RE: [xsl] Grouping of irregular XML From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Tue, 21 Feb 2006 09:11:20 -0000 |
Simplest answer is to use XSLT 2.0 with <xsl:for-each-group select="*" group-adjacent="node-name(.)"> <xsl:choose> <xsl:when test="current-group[1] instance of element(aaa)"> <ol> <xsl:copy-of select="current-group()"/> </ol> </xsl:when> <xsl:otherwise> <xsl:copy-of select="current-group()"/> </ </ </ For XSLT 1.0 solutions, search under "XSLT positional grouping". Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Paul Clarke [mailto:pclarke@xxxxxxxxxxxxxxxx] > Sent: 21 February 2006 07:02 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Grouping of irregular XML > > Hi All, > > I'm just coming back to XSLT after a long lay off doing other > things and am > struggling with grouping irregular xml content from a converter. > > I have this as an input. > > <body> > <aaa> > .. > </aaa> > <aaa> > .. > </aaa> > <bbb> > .. > </bbb> > <aaa> > .. > </aaa> > <aaa> > .. > </aaa> > </body> > > And I need to put the groups of <aaa> elements in a deeper structure > > <body> > <ol> > <aaa> > .. > </aaa> > <aaa> > .. > </aaa> > </ol> > <bbb> > .. > </bbb> > <ol> > <aaa> > .. > </aaa> > <aaa> > .. > </aaa> > </ol> > </body> > > Should I be using xsl:key here or another method? > > Thanks > > Paul Clarke
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Grouping of irregular XML, Paul Clarke | Thread | [xsl] RSS transform, THUFIR HAWAT |
Re: [xsl] problem in xsl:value-of, António Mota | Date | Re: [xsl] problem in xsl:value-of, Andrew Franz |
Month |