 			// startRequest(url);
 			// but then, also the onDataLoaded has to be adjusted (e.target.data contains loaded data then)			
 		};
+
 		protected function startRequest(s : String) : void {
-			Logger.info("loading", s);
+			Logger.info("loading", s);
+			if(loader) {
+				loader.removeEventListener(Event.COMPLETE, onDataLoaded);
+			}
 			try {
-				var loader : URLLoader = new URLLoader();
+				loader = new URLLoader();
 				loader.load(new URLRequest(s));
 			} catch (e : Error) {
 				Logger.error(e.message);
 			}
 			loader.addEventListener(Event.COMPLETE, onDataLoaded);
-		}
+		}
+
 		protected function onDataLoaded(e : Event) : void {
 
 			var xml : XML;

			Logger.info("onContentItemsLoaded");						
			dispatchEvent(new Event(DATA_LOADED));
		};		
		private function parseFacetValue(facet : Facet, facetValue : FacetValue, xml : XML) : void {
			facetValue.label = xml.label.toString();
			facetValue.name = xml.name.toString();

			return contentItem;
		};

		protected function parseContentItemFromObject(o : Object) : ContentItem {
			var id : String;
			if(o.id) {
