XML to multidimensional array

Hi,
I need a little help about a dynamic array from an xml file. I have an issue put dynamic number of nodes into an array and then populate another array. Don’t know if i’m really clear so here’s what I do so far.
Here’s my xml file:


    <services>
        <service menu="MENU 1">
            <title>Title.</title>
            <txt><![CDATA[Content here.]]></txt>
            <projects>
                <project Uid="1" thumbnail="image1-tb.jpg"/>
                <project Uid="2" thumbnail="image2-tb.jpg"/>
                <project Uid="3" thumbnail="image3-tb.jpg"/>
            </projects>
        </service>    
        <service menu="MENU 2">
            <title>Title.</title>
            <txt><![CDATA[Content here.]]></txt>
            <projects>
                <project Uid="4" thumbnail="image1-tb.jpg"/>
                <project Uid="5" thumbnail="image2-tb.jpg"/>
            </projects>
        </service>    
</services

Now the code:


//load the XML file
xmlContent = new XML();
xmlContent.ignoreWhite = true;
xmlContent.load(_root.XML_FOLDER+_root.SERVICES_FILE);
xmlContent.onLoad = function(success) {
    if (success) {
        var startServices:XMLNode = xmlContent.firstChild;
        var nbServices:Number = xmlContent.firstChild.childNodes.length;
        var totalServicesComplete:Number = nbServices-1;
        var menuArray:Array = new Array();
        var titleArray:Array = new Array();
        var contentArray:Array = new Array();
        var thumbArray:Array = new Array();            
        for (var i:Number = 0; i<nbServices; i++) {
            menuArray.push(startServices.childNodes*.attributes.menu);
            titleArray.push(startServices.childNodes*.childNodes[0].childNodes);
            contentArray.push(startServices.childNodes*.childNodes[1].firstChild.nodeValue);
            for (var j:Number = 0; j<startServices.childNodes*.childNodes[2].childNodes.length; j++) {
                //?????
            }
        }
    } else {
        contentTxt.htmlText = "<br /> XML file failed to load!";
    }
};

I’m not sure about how I can have an array that’s gonna look like:

id:1 thumbnail:th1.jpg, id:2 thumbnail:th2.jpg, id:3 thumbnail:th3.jpg
for every node. So basically an array of arrays. My main problem is how then I can retrieve the length of each array and its elements.
I tried something like:


            for (var j:Number = 0; j<startServices.childNodes*.childNodes[2].childNodes.length; j++) {
                var tileObject:Object = {Uid:startServices.childNodes*.childNodes[2].childNodes[j].attributes.Uid, thumbnail:startServices.childNodes*.childNodes[2].childNodes[j].attributes.thumbnail};
                thumbArray.push(tileObject);
            }


Thanks for your help.