[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: XSLT2/Saxon: How to group by distinct element valu

Subject: RE: XSLT2/Saxon: How to group by distinct element values?
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 17 Oct 2008 11:30:36 +0100
RE:  XSLT2/Saxon: How to group by distinct element valu
<xsl:template match="root">
  <root>
    <xsl:for-each-group select="data" group-by="group1">
      <group1 name="{current-grouping-key()}">
        <xsl:for-each-group select="current-group()" group-by="group2">
          <group2 name="{current-grouping-key()}">
            <xsl:for-each select="current-group()">
              <group3 name="{group3}"/>
            </
          </
        </
      </
    </
  </
</

Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: "Robert Svsemann" [mailto:rsoese@xxxxxx]
> Sent: 17 October 2008 11:10
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject:  XSLT2/Saxon: How to group by distinct element values?
>
> Hi, even after reading for one hour about grouping in XSLT2,
> I could not find out how to transform my Source XML to my Result XML.
> Can anybody help me?
>
> Source XML
> ----------
> <?xml version="1.0" encoding="UTF-8"?>
> <root>
>   <data>
>     <group1>MERCEDES</group1>
>     <group2>CLK</group2>
>     <group3>CLK 320 CDI Coupe</group3>
>   </data>
>   <data>
>     <group1>MERCEDES</group1>
>     <group2>CLK</group2>
>     <group3>CLK 320 CDI Sedan</group3>
>   </data>
>   <data>
>     <group1>MERCEDES</group1>
>     <group2>SLK</group2f>
>     <group3>SLK Limousine</group3>
>   </data>
>   <data>
>     <group1>AUDI</group1>
>     <group2>A2</group2>
>     <group3>A2 Coupe</group3>
>   </data>
> </root>
>
> Result XML
> ----------
> <?xml version="1.0" encoding="UTF-8"?>
> <root>
>   <group1 name="MERCEDES">
>     <group2 name="CLK">
>       <group3 name="CLK 320 CDI Coupe"/>
>       <group3 name="CLK 320 CDI Sedan"/>
>     </leve2>
>     <group2 name="SLK">
>       <group3 name="SLK Limousine"/>
>     </group>
>   </group1>
>   <group1 name="AUDI">
>     <group2 name="A2">
>       <group3 name="A2 Coupe" />
>     </group2>
>   </group1>
> </root>
>
> Thanks in advance
> --
> Ist Ihr Browser Vista-kompatibel? Jetzt die neuesten
> Browser-Versionen downloaden: http://www.gmx.net/de/go/browser

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.