Inicjowanie zmiennych XML

Flash Player 9 i nowsze wersje, Adobe AIR 1.0 i nowsze wersje

Do obiektu XML można przypisać literał XML, w następujący sposób:

var myXML:XML =  
    <order> 
        <item id='1'> 
            <menuName>burger</menuName> 
            <price>3.95</price> 
        </item> 
        <item id='2'> 
            <menuName>fries</menuName> 
            <price>1.45</price> 
        </item> 
    </order>

Z kolei poniższy fragment kodu ilustruje użycie konstruktora new do utworzenia instancji obiektu XML na podstawie ciągu znaków zawierającego dane XML:

var str:String = "<order><item id='1'><menuName>burger</menuName>" 
                            + "<price>3.95</price></item></order>"; 
var myXML:XML = new XML(str);

Jeśli dane XML w ciągu znaków nie będą poprawnie sformatowane (np. brakowało w nich będzie znacznika zamykającego), w czasie wykonywania zostanie zgłoszony błąd.

Możliwe jest także przekazanie danych do obiektu XML przez odwołanie (z innych zmiennych), co ilustruje poniższy przykład:

var tagname:String = "item";  
var attributename:String = "id";  
var attributevalue:String = "5";  
var content:String = "Chicken";  
var x:XML = <{tagname} {attributename}={attributevalue}>{content}</{tagname}>;  
trace(x.toXMLString()) 
    // Output: <item id="5">Chicken</item>

Aby załadować dane XML spod adresu URL, należy użyć klasy URLLoader, co ilustruje poniższy przykład:

import flash.events.Event; 
import flash.net.URLLoader; 
import flash.net.URLRequest; 
 
var externalXML:XML; 
var loader:URLLoader = new URLLoader(); 
var request:URLRequest = new URLRequest("xmlFile.xml"); 
loader.load(request); 
loader.addEventListener(Event.COMPLETE, onComplete); 
 
function onComplete(event:Event):void 
{ 
    var loader:URLLoader = event.target as URLLoader; 
    if (loader != null) 
    { 
        externalXML = new XML(loader.data); 
        trace(externalXML.toXMLString()); 
    } 
    else 
    { 
        trace("loader is not a URLLoader!"); 
    } 
}

Do odczytywania danych XML z połączenia realizowanego przez gniazdo służy klasa XMLSocket. Więcej informacji zawiera opis klasy XMLSocket w Skorowidzu języka ActionScript 3.0 dla platformy Adobe Flash .