Video list from XML

I have to create a video list from my XML and have it play the videos one after the other for a specific menu button. The XML file looks something like this were there is a CategoryName, type and loadUrl.


<page>
            <categoryName>Our Services</categoryName>
            <pageName>Application Development</pageName>
            <type>Video</type>
            <order>3-1</order>
            <content>
                <loadUrl>http://pegasus.dev.webriverinteractive.com/API/Resource.ashx?ResourceID=72</loadUrl>
            </content>
        </page>
        <page>
            <categoryName>Our Services</categoryName>
            <pageName>Project Planning</pageName>
            <type>Video</type>
            <order>3-2</order>
            <content>
                <loadUrl>http://pegasus.dev.webriverinteractive.com/API/Resource.ashx?ResourceID=71</loadUrl>
            </content>
        </page>
        <page>
            <categoryName>Our Services</categoryName>
            <pageName>Systems Integration</pageName>
            <type>Video</type>
            <order>3-3</order>
            <content>
                <loadUrl>http://pegasus.dev.webriverinteractive.com/API/Resource.ashx?ResourceID=74</loadUrl>
            </content>
        </page>

In my flash code I create a menu using the CategoryName and now for each of those CategoryNames were type equals video I need to build a list and have them play. Currently, I hard coded one of the urls for testing but how do I make a list for each menu item and have them videos play?:ponder:


//create menu
function createMenu():void {
    //get info
    for each (var node:XML in navData) {
        //trace(node.name.toString());
        infoName=node.info.name.toString();
        infoClient=node.info.client.toString();
        infoCreator=node.info.creator.toString();
        //
        infoContactCompany=node.info.contactCompany.toString();
        infoContactName=node.info.contactName.toString();
        infoContactEmail=node.info.contactEmail.toString();
        //
        infoSalesName=node.info.salesName.toString();
        infoSalesEmail=node.info.salesEmail.toString();
        infoSalesPhone=node.info.salesPhone.toString();

        //place text in text fields
        pname.text=infoName;
        client.text=infoClient;
        creator.text=infoCreator;
    }


    //Determine unique category names 
    var categoryNames:Array=[];
    var categories:XMLList=navData..categoryName;
    for (var i:int = 0; i < categories.length(); i++) {
        var categoryName:String=categories*;
        if (categoryNames.indexOf(categoryName)==-1) {
            categoryNames.push(categoryName);
        }
    }    

    // Build menu based on categories 
    for (i = 0; i < categoryNames.length; i++) {
        trace("Top level:", categoryNames*);
        var pages:XMLList = navData..page.(categoryName == categoryNames*);
        for (var p:int = 0; p < pages.length(); p++) {
            //trace(" -> Subpage:", pages[p].pageName);
            if (pages[p].type=="Video") {                
                trace(" -> video:", pages[p].content.loadUrl);
            }            
        }
        buildButtons(categoryNames*, pages.pageName);
        videoList(categoryNames*, pages.content.loadUrl);
    }
}

function videoList(categoryName:String,loadUrl:String):void {
    //trace(categoryName);
    trace(loadUrl);    
}

// Set the function for what happens when that button gets clicked
function clipClick(e:Event):void {
    //var targetURL:String=e.target.clickToPage;
    //var urlRequest:URLRequest=new URLRequest(targetURL);
    //navigateToURL(urlRequest);
    outText.text=e.target.clickToPage;
    //trace(e.target.clickToPage);
    if (e.target.clickToPage=="Introduction") {
        //load animation
    }
    if (e.target.clickToPage=="Making It So") {
        //play make it so video list
        stream_ns.play(vidSource);
        container.visible=true;
    }

}
//
// video controls and code below this line
var vidSource:String;
vidSource="http://pegasus.dev.webriverinteractive.com/API/Resource.ashx?ResourceID=16";