Here's what I use:
My example creates an array containing 3 items. Each item is an object that has 
3 properties (vidpath, otherAttribute, description). It creates properties from 
the xml attributes and the value of the child nodes.

Given an xml file such as:

<media>
        <video vidpath ="video1.flv" otherAttribute="oa1">Text description 
1</video>
        <video vidpath ="video2.flv" otherAttribute="oa2">Text description 
2</video>
        <video vidpath ="video3.flv" otherAttribute="oa2">Text description 
3</video>
</media>

The ActionScript:

var flv_data_xml:XML = new XML();
flv_data_xml.ignoreWhite = true;
flv_data_xml.onLoad = function(success:Boolean) {
        var theList:Array = Array();
        if (success) {
                AllNodeAtts = Array();
                for (var theNode:XMLNode = this.firstChild.firstChild; theNode 
!= null; theNode=theNode.nextSibling) {
                        var IndivNodeAtts:Object = new Object();
                        //create a propertay called "description" and insert 
the value of the child node.
                        IndivNodeAtts.description = theNode.firstChild;
                        for (attr in theNode.attributes) {
                                IndivNodeAtts[attr] = theNode.attributes[attr];
                        }
                        AllNodeAtts.push(IndivNodeAtts);
                }
                trace(AllNodeAtts[0].vidpath);
                trace(AllNodeAtts[1].otherAttribute);
                trace(AllNodeAtts[2].description);
                //  output:
                //  video1.flv
                //  oa2
                //  Text description 3
        } else {
                // error loading xml
        }
};
flv_data_xml.load("flv_data_example.xml");



Norm C

-----Original Message-----
From: Johan Nyberg [mailto:[EMAIL PROTECTED]
Sent: Thursday, May 03, 2007 10:15 AM
To: flashcoders@chattyfig.figleaf.com
Subject: [Flashcoders] Any good XML api out there?


Hi, what I need is basically a class that puts all the data in an 
associative array, or numeric, depending on if I'm storing values for 
individual nodes, or a "mothernode".

Now I find there is a lot of looping going on every time I have to parse 
a XML, and XPath seems more like the thing you want to use if you're 
looking for specific data inside the XML - I just want to put all the 
data in an Array or Object...

For example:
<root>

<track>
    <name></name>
    <artist></artist>
</track>

<track>
    <name></name>
    <artist></artist>
</track>

</root>

I would like it like this: root[track[n]["artist"]]

Regards,

/Johan

-- 
Johan Nyberg

Web Guide Partner
Sergels Torg 12, 8 tr
111 57 Stockholm 
070 - 407 83 00


_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com

Reply via email to