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

Nested grouping question

Subject: Nested grouping question
From: Andrew Kirkpatrick <ncam_tech@xxxxxxxx>
Date: Fri, 02 Jan 2004 16:29:38 -0500
awk grouping
Hi,
I've been grappling with this for a while and hope someone can offer some
suggestions.

I've got an XML file organized in one way that I'm trying to convert to
match the organization of other files that I deal with.  I want the file
hierarchy to be:

<game>
    <state>
        <user/>
    </state>
</game>

There are many games, states, and users.

The file that I'm trying to convert is organized by user.  I can do grouping
to determine the states and games, but it seems like I need to do redundant
grouping to do the conversion.  Has anyone does anything similar?  I've got
samples of the input XML and the desired XML below.  Any suggestions are
appreciated...

Thanks in advance,
AWK


INPUT XML:
<?xml version="1.0" encoding="UTF-8"?>
<report>
    <user>
        <name>Bill</name>
        <state>MT</state>
        <game>Halo</game>
    </user>
    <user>
        <name>Joe</name>
        <state>NJ</state>
        <game>Halo</game>
    </user>
    <user>
        <name>Joe</name>
        <state>NJ</state>
        <game>PGR 2</game>
    </user>
    <user>
        <name>Joe</name>
        <state>MT</state>
        <game>Halo</game>
    </user>
    <user>
        <name>Jim</name>
        <state>AZ</state>
        <game>PGR 2</game>
    </user>
    <user>
        <name>Bill</name>
        <state>IN</state>
        <game>XIII</game>
    </user>
    <user>
        <name>Sue</name>
        <state>IN</state>
        <game>Halo</game>
    </user>
    <user>
        <name>Kim</name>
        <state>AZ</state>
        <game>PGR 2</game>
    </user>
    <user>
        <name>Pat</name>
        <state>AZ</state>
        <game>XIII</game>
    </user>
    <user>
        <name>Ed</name>
        <state>AZ</state>
        <game>PGR 2</game>
    </user>
    <user>
        <name>Neo</name>
        <state>MT</state>
        <game>Halo</game>
    </user>
    <user>
        <name>Mary</name>
        <state>IN</state>
        <game>Halo</game>
    </user>
    <user>
        <name>Jen</name>
        <state>MT</state>
        <game>XIII</game>
    </user>
    <user>
        <name>Thor</name>
        <state>NJ</state>
        <game>XIII</game>
    </user>
</report>


DESIRED OUTPUT XML:
<?xml version="1.0"?>
<report>
  <game title="Halo">
    <state name="MT">
        <user name="Bill"/>
        <user name="Joe"/>
        <user name="Neo"/>
    </state>
    <state name="NJ">
        <user name="Joe"/>
    </state>
    <state name="IN">
        <user name="Sue"/>
    <user name="Mary"/>
    </state>
  </game>
  <game title="PGR 2">
    <state name="AZ">
        <user name="Jim"/>
        <user name="Kim"/>
        <user name="Ed"/>
    </state>
    <state name="NJ">
        <user name="Joe"/>
    </state>
  </game>
  <game title="XIII">
    <state name="MT">
        <user name="Jen"/>
    </state>
    <state name="NJ">
        <user name="Thor"/>
    </state>
    <state name="IN">
        <user name="Bill"/>
    </state>
    <state name="AZ">
        <user name="Pat"/>
    </state>
  </game>
</report>



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


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.