AS3 XML gallery problems

Hi all, first post here - have posted the same topic over at goto forums, but thought i would see if I could get some more feedback here…

Currently I am working on a gallery that generates x15 thumbnails onto the stage, through a loader & URL request. (returns product search results from a database) This works great & I have 15 ‘items’ from the search display randomly on the stage, all scripted in the baseClass.

The idea originally was to have these ‘items’ load into a thumbnail movieclip I have created in my library, but have no idea how to do this.
I have another class called PostElement that adds interactivity to the thumbnail movieclip which I applied through the linkage menu.

So the question is whether I should attempt to load these ‘items’ into my thumbnail mc & if this is even possible in AS3.
(as seen in AS2 XML galleries: _root.Frame.Pic.load(images_path[0].attributes.title); …)
OR should I try (which I have, see below) and instantiate the PostElement class in the baseClass in the hope to give the loaded images the interactivity of that class? (although I still have no visual holder for the images)

I’ve attached both classes, when I run the code i’m getting the error:
// Error #1009:The access to a attribute or a method of a null-object reference is not possible.
// at baseClass/::onLoadComplete()
// at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
// at flash.events::EventDispatcher/dispatchEvent()
// at flash.net::URLLoader/flash.net:URLLoader::onComplete()

Here is the full code for the baseClass (the document class)

package 
{
   import PostElement;      // <--- do i need to import this class?
   import flash.display.*;
   import flash.net.*;
   import flash.events.*;
   
   public class baseClass extends MovieClip 
   {
      var myLoader:URLLoader = new URLLoader();
      var myURL = new URLRequest("http://itemsearchexample....");
      var myXML:XML;
      
      public function baseClass() 
      {
      myLoader.load(myURL);
      myLoader.addEventListener(Event.COMPLETE, onLoadComplete);
      }
      
      function onLoadComplete(e:Event):void 
      {
         myXML.ignoreComments = true;
         myXML.ignoreWhitespace = true;
         
         myXML = new XML(e.target.data);
               
         var i:Number;
         var url:String;
               
         for (i = 0; i < myXML.Items.Item.length(); i++) 
            
         {
            var loader:Loader = new Loader();
                       
            url = myXML.Items.Item*.SmallImageExtracted.URL.text();
            loader.load(new URLRequest(url));
                  
            // instantiating postelement --> correct?
            var thumbnail:PostElement = new PostElement();
                  
            // syntax for stage.stageWidth & stage.stageHeight updated
            thumbnail.x = Math.random() * (stage.stageWidth - 10);
            thumbnail.y = Math.random() * (stage.stageHeight - 10);
            thumbnail.rotation = 78;
                  
            //adding the thumbnail with the loader inside
            thumbnail.addChild(loader);
            stage.addChild(thumbnail);
                                             
            // trace(loader);
            // trace(this.x);
         }
      }
   }
}

And the full (simplified) code for the PostElement

package 
{
   import flash.display.*;
   import flash.events.*;
   
   public class PostElement extends MovieClip 
   {
   
      public function PostElement() 
      {
         addEventListener(MouseEvent.MOUSE_DOWN, downHandler);
         stage.addEventListener(MouseEvent.MOUSE_UP, upHandler);
      }
      
      public function downHandler(event:MouseEvent):void 
      {
         startDrag();            
      }
      public function upHandler(event:MouseEvent):void 
      {
         stopDrag();
      }
   }
}

Hope this is easy to understand, i’m still very new at this programming business
thanks in advance!