Subject: Re: [xsl] build group of elements From: henry human <henry_human@xxxxxxxx> Date: Fri, 22 Jun 2012 14:53:22 +0100 (BST) |
Thank you! your script gets the output I am looking for! Now in other place three is similar node which is more complecated and I could not use your template to create the desired output! Here is a sample. In this sample each group have 3 elements and the name of elemnts are more complex dann befrore: <fooGroup> <frirst_elment> <1st_elment></1st_elment> <_2nd_element>aa</_2nd_element> <_3rd_element>aa</_3rd_element> </frirst_element> <_2nd_elment> <1st_elment></1st_elment> <_2nd_element>aa</_2nd_element> <_3rd_element>aa</_3rd_element> </_2nd_element> <3rd_elment> <1st_elment></1st_elment> <_2nd_element>aa</_2nd_element> <_3rd_element>aa</_3rd_element> </3rd_element> </fooGroup> hh --- Martin Honnen <Martin.Honnen@xxxxxx> schrieb am Fr, 22.6.2012: > Von: Martin Honnen <Martin.Honnen@xxxxxx> > Betreff: Re: [xsl] build group of elements > An: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Datum: Freitag, 22. Juni, 2012 15:16 Uhr > henry human wrote: > > The input file was just a sample to show the xml data > has more foo elements. > > <myxmlfile> > > > <ss></ss>...<foo></foo>.................<foo></foo> > </myxmlfile> > > //presume there are 100 foo elements in the xml file > > My sample output which is created througth xslt > > has groups of foo elment. Each group > consists of three foo elements. > > (each three foo elments build a > group). example > > <fooGroup>= foo[1], foo[2]. > foo[3] > > <fooGroup>= foo[4], foo[5]. > foo[6] > > <fooGroup>= foo[7], foo[8]. > foo[9] > > Do you use XSLT 2.0 or 1.0? With 2.0 you could do e.g. > <xsl:param name="size" select="3"/> > > <xsl:template match="xmlfile"> > <xsl:for-each-group select="foo" > group-by="(position() - 1) idiv $size"> > <fooGroup> > <xsl:apply-templates > select="current-group()"/> > </fooGroup> > </xsl:for-each-group> > </xsl:template> > > <xsl:template match="foo"> > <xsl:element name="foo{position()}"> > <xsl:copy-of > select="node()"/> > </xsl:template> > </xsl:template> > > > > > -- > Martin Honnen --- MVP Data Platform > Development > http://msmvps.com/blogs/martin_honnen/ > > > > --~------------------------------------------------------------------ > 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@xxxxxxxxxxxxxxxxxxxxxx> > --~--
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] build group of elements, Martin Honnen | Thread | Re: [xsl] build group of elements, Martin Honnen |
Re: [xsl] build group of elements, Martin Honnen | Date | Re: [xsl] build group of elements, Martin Honnen |
Month |