Subject: Re: [xsl] Creating unique groups From: Mukul Gandhi <mukul_gandhi@xxxxxxxxx> Date: Fri, 3 Dec 2004 23:29:43 -0800 (PST) |
Hi Dave, Please try this XSL. It uses the Muenchian technique. <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:key name="by-group-name" match="group" use="@name" /> <xsl:template match="/root"> <root> <xsl:for-each select="group[generate-id(.) = generate-id(key('by-group-name', @name)[1])]"> <group name="{@name}"> <xsl:for-each select="key('by-group-name', @name)"> <xsl:copy-of select="*"/> </xsl:for-each> </group> </xsl:for-each> </root> </xsl:template> </xsl:stylesheet> Regards, Mukul --- Dave Roe <david_roe@xxxxxxx> wrote: > I have this XML representing 2 groups (spread across > 4 group elements): > > <root> > > <group name="group1"> > <entry name="entry1" /> > <entry name="entry2" /> > </group> > > <group name="group1"> > <entry name="entry3" /> > </group> > > <group name="group2"> > <entry name="entry4" /> > <entry name="entry5" /> > </group> > > <group name="group2"> > <entry name="entry6" /> > </group> > > </root> > > What would be the best approach to turn it into the > following output, > where the name of the group is used as the > identifier of what should be > a unique group element? > > <root> > > <group name="group1"> > <entry name="entry1" /> > <entry name="entry2" /> > <entry name="entry3" /> > </group> > > <group name="group2"> > <entry name="entry4" /> > <entry name="entry5" /> > <entry name="entry6" /> > </group> > > </root> > > Right now, I just need someone to point me in the > right direction to > get me started. > > Thanks, > /dave __________________________________ Do you Yahoo!? Meet the all-new My Yahoo! - Try it today! http://my.yahoo.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Creating unique groups, Dave Roe | Thread | Re: [xsl] Creating unique groups, Dave Roe |
Re: [xsl] Creating unique groups, Marian Olteanu | Date | RE: [xsl] What is the shortest expr, Michael Kay |
Month |