function readNode(parentNode:XMLNode):Array { delete outputArray; delete nodeList; var outputArray:Array = new Array(); var nodeList:Array = parentNode.childNodes; for (var i:Number = 0; i < nodeList.length; i++) { var node:XMLNode = nodeList[i]; var nodeName:String = node.nodeName; var val:Array = new Array(); if (node.hasChildNodes()) { if (node.firstChild.nodeValue != null) { val['value'] = node.firstChild.nodeValue; } else { val = readNode(node); } } val['attributes'] = node.attributes; if (outputArray[nodeName] == undefined) { outputArray[nodeName] = val; } else { if (outputArray[nodeName][0] == undefined) { var old:Array = outputArray[node.nodeName]; outputArray[nodeName] = Array(); outputArray[nodeName].push(old); } outputArray[nodeName].push(val); } delete node; } delete i; return outputArray; }; var xmlObject:XML = new XML(); xmlObject.ignoreWhite = true; xmlObject.load('submissions.xml.php'); xmlObject.onLoad = function(success) { if (success) { _root.conf = readNode(xmlObject.firstChild); play(); // and continue with movie } else { trace('cant load xml...'); } };