Yeah, i don't touch AS2's xml api any more than I have to. I know there are
other systems out there, but I find XPath does the job for me about 100% of
the time. Here's a little tute I threw together for XPath:

http://criticalpile.com/blog/?p=4

-Scott

On 12/28/06, Mike Dunlop <[EMAIL PROTECTED]> wrote:

Thanks for the input Scott! I simply trying to find the easiest way
to dump a 2D xml structure into an array/object that can be easily
iterated through in a loop.

Do you think there is a better way than what i am trying to do? I'm
an experienced php/sql developer but still learning the ropes in AS 2.0

Your thoughts are much appreciated. Happy New Year.

  - Mike D


.............................................
Mike Dunlop
// Droplab
[ e ] [EMAIL PROTECTED]


On Dec 28, 2006, at 1:49 PM, slangeberg wrote:

>>
>> item.mediums = new Array();
>>
>
> Should be fine, however:
>
> item.mediums[item.mediums.length]['id'] = m[i_m].attributes.id;
>
>
> Looks like you're trying to access a 2D array or Object in array,
> so you
> would have to do something like:
>
> var medium:Object = new Object();
> medium.id = m[i_m].attributes.id;
> medium.name = m[i_m].firstChild.firstChild.nodeValue;
> .
> .
> item.mediums.push( medium );
>
> This doesn't mean that what you're doing is necessarily a best
> practice, but
> I'm not sure what your motivation is to do so. If you simply want
> to access
> xml as a more manageable data object, you can use things like XPath or
> Xml2Object(?).
>
> -Scott
>
> On 12/28/06, Mike Dunlop <[EMAIL PROTECTED]> wrote:
>>
>> Hi gang,
>>
>> I'm having difficulty parsing an xml file into a multidimensional
>> array and was wondering if anyone could see why the following isn't
>> working... My guess is that an object variable can't be an array?
>>
>>
>>
>> XML Sample
>> ---------------------------------------------------------------------
>> -
>>
>> <list>
>>         <cat id="4">
>>                 <name>Art Glass</name>
>>                 <notes></notes>
>>                 <mediums>
>>                         <medium id="18">
>>                                 <name>Drypoint</name>
>>                                 <notes></notes>
>>                                 <img>media/18_medium_tn.jpg</img>
>>                         </medium>
>>                 </mediums>
>>         </cat>
>> </list>
>>
>> ---------------------------------------------------------------------
>> -
>>
>>
>> Actionscript
>> ---------------------------------------------------------------------
>> -
>>
>>
>>         var arr:Array = xml.firstChild.childNodes;
>>
>>         for(var i:Number = 0; i < arr.length; i++) {
>>                 var item:Object = new Object();
>>                 item.id = arr[i].attributes.id;
>>                 item.name = arr[i].firstChild.firstChild.nodeValue;
>>                 item.notes =
>> arr[i].firstChild.nextSibling.firstChild.nodeValue;
>>
>>                 /***** this part isn't working *******/
>>                 item.mediums = new Array();
>>                 if(arr
>> [i].firstChild.nextSibling.nextSibling.hasChildNodes())
>> {
>>                         var m:Array =
>> arr[i].firstChild.nextSibling.nextSibling.childNodes;
>>                         for(var i_m:Number = 0; i_m < m.length; i_m
>> ++) {
>>                                 item.mediums[item.mediums.length]
>> ['id'] =
>> m[i_m].attributes.id;
>>                                 item.mediums[item.mediums.length]
>> ['name']
>> = m
>> [i_m].firstChild.firstChild.nodeValue;
>>                                 item.mediums[item.mediums.length]
>> ['notes']
>> = m
>> [i_m].firstChild.nextSibling.firstChild.nodeValue;
>>                                 item.mediums[item.mediums.length]
>> ['img'] =
>> m
>> [i_m].firstChild.nextSibling.nextSibling.firstChild.nodeValue;
>>                         }
>>                 }
>>                 /***** /this part isn't working *******/
>>         }
>>
>> ---------------------------------------------------------------------
>> -
>>
>>
>> Thanks for your help guys!
>>
>> Best,
>> Mike D
>>
>>
>> _______________________________________________
>> 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
>>
>
>
>
> --
>
> : : ) Scott
> _______________________________________________
> 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

_______________________________________________
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




--

: : ) Scott
_______________________________________________
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