Subject: Re: [xsl] Another problem from Flat XML File to Hierarchical From: Abel Braaksma <abel.online@xxxxxxxxx> Date: Mon, 12 Feb 2007 17:18:50 +0100 |
<xsl:template match="/"> <xsl:for-each-group select="$data/*" group-starting-with="level1">
<xsl:copy> <xsl:apply-templates select="current-group()[2]" /> </xsl:copy> </xsl:for-each-group> </xsl:template>
<xsl:template match="*[matches(name(), 'level')]"> <xsl:variable name="currentname" select="name()" /> <xsl:for-each-group select="current-group()[position() > 1]" group-starting-with="*[name() = $currentname]">
<xsl:copy> <xsl:apply-templates select="current-group()[2]" /> </xsl:copy> </xsl:for-each-group> </xsl:template>
Cheers, -- Abel Braaksma http://xslt.metacarpus.com
I have a flat xml like this:
<level2></level2> <level3></level3> <level2></level2> <level1></level1> <level2></level2> <level3></level3> <level3></level3>
and I need to transform in a hierarchy structure like this using the tag name as key:
<level2> <level3></level3> </level2> <level2></level2> <level1> <level2> <level3></level3> <level3></level3> </level2> </level1>
Thanks in advance.
~av
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Another problem from Flat XML, alex v. | Thread | [xsl] persistent ids/hashes from st, Joern Nettingsmeier |
[xsl] Choosing based on current nod, sthomas2 | Date | Re: [xsl] Choosing based on current, Abel Braaksma |
Month |