Changing array to hold xml data

OK, so I have an array that’s pulling movieclips from my libraray using Linkage IDs. How do I change this so that it’s pulling the images from an xml file instead in order to reduce file size?

XML file:

<?xml version="1.0" encoding="utf-8"?>
<gallery>
<item>
        <image>images/a2.jpg</image>
        <thumbnail>images/a2big.jpg</thumbnail>
</item>
<item>
        <image>images/al.jpg</image>
        <thumbnail>images/albig.jpg</thumbnail>
</item>
<item>
        <image>images/at.jpg</image>
        <thumbnail>images/atbig.jpg</thumbnail>
</item>
<item>
        <image>images/bc.jpg</image>
        <thumbnail>images/bcbig.jpg</thumbnail>
</item>

etc...    
    
</gallery>

Actionscript for my array:

import com.greensock.TweenMax;
import com.greensock.easing.*;

var linkageID_array:Array = new Array();
var numRows:Number = 6;
var numColumns:Number = 8;
var counter:Number = 0;


//put linkage string references in array
for (m=1; m<49; m++) {
    linkageID_array.push("pic"+m);
    
}
// shuffle function
shuffle = function (targetArray) {
    for (i=0; i<targetArray.length; i++) {
        
        var tmp = targetArray*;
        var randomNum = random(targetArray.length);
        targetArray* = targetArray[randomNum];
        targetArray[randomNum] = tmp;
        
    }
};
// shuffle linkage array
shuffle(linkageID_array);
// attach mc in grid
var _MAIN = this;
var maxAmt = ((Stage.width>Stage.height) ? Stage.width : Stage.height)+100;
var minAmt = -100;


for (k=0; k<numColumns; k++) {
    for (i=0; i<numRows; i++) {
        var mc:MovieClip = _MAIN.attachMovie(linkageID_array[counter], linkageID_array[counter], _MAIN.getNextHighestDepth());
        counter++;
        
        mc._x = 199*i;
        mc._y = 199*k;
        
        mc.onRollOver = function() {
            
            TweenMax.from(this.pc.ovr,0.4,{colorMatrixFilter:{contrast:2, brightness:1.7}});

        };
        mc.onRollOut = function() {
            TweenMax.to(this.pc.ovr,0.2,{colorMatrixFilter:{amount:0}});
        };
        mc.onRelease = function() {
            TweenMax.to(_root.mgrid,1.5,{_y:-2000, delay:.3, ease:Quad.easeOut});
        
            attachMovie(this+"big", this+"new", this.getNextHighestDepth);
        };
    }
}