TypeError: Error #1034: Type Coercion failed: cannot convert XMLList@59dc17f1 to XML

Why does the trace work, and the statement does not? (please see code comments)


import fl.controls.*;

var info_txt:TextArea = panel_mc.main_mc.info_txt;

var gallery_xml:XML;
var xmlReq:URLRequest = new URLRequest("dataevents.xml");
var xmlLoader:URLLoader = new URLLoader();

function xmlLoaded(event:Event):void
{
    var query:XML;
    var queryText:String = "";
    gallery_xml = new XML(xmlLoader.data);
    
    query = (gallery_xml..profile.(profilename == "Sebastian Homann")); // This gives error TypeError: Error #1034: Type Coercion failed: cannot convert XMLList@59dc27f1 to XML.
    
    trace(gallery_xml..profile.(profilename == "Sebastian Homann")); /// This works
    
    for each(var elements:XML in query.*)
    {
        if(elements.*.length() <= 1)
        {
            queryText += elements.name() + ": " + elements + "
";
        }
        else
        {
            for each(var info:XML in elements.*)
            {
                queryText += info.name() + ": " + info + "
";
            }
        }
    }
    queryText += "file: " + query.@file;

    info_txt.htmlText = queryText;
}

xmlLoader.load(xmlReq);
xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);

Full error:

TypeError: Error #1034: Type Coercion failed: cannot convert XMLList@59dc17f1 to XML.
at 06_Looping_XML_Final_fla::MainTimeline/xmlLoaded()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()