Desmitificando el manejo de XML en flash
21 09 2008Algunos tipos rápidos para cargar data de un xml en un objeto XML en flash.
1. Para cargarlo, necesitamos valernos de la clase Loader, la cual debemos usar mediante un URLRequest(no pongo código porque en internet esta lleno).
2. Cuando tenemos la instancia del objeto XML con la información cargada, debemos tener en cuenta lo siguiente:
a. El objeto XML representa la etiqueta raíz del XML. Por lo que si tenemos un xml de la forma:
-
<xml_raiz>
-
<objeto tipo="cadorna">mi objeto</objeto>
-
<objeto tipo="sarlanga">mi objeto2</objeto>
-
</xml_raiz>
Nuestra instancia del XML hará referencia al tag "xml_raiz", esto es muy importante, ya que a los tags los podemos acceder como propiedades de clase, lo cual significa que si queremos obtener el valor del objeto tipo cadorna(que en este caso es "mi objeto"), hacemos:
-
var xmlObj:XML;
-
-
/*
-
aca cargamos la data del XML, puede ser un string.
-
*/
-
-
trace(xmlObj.objeto[0]); //tracea "mi objeto"
b. Si queremos acceder a la propiedad "tipo" de un objeto, hacemos lo siguiente
-
//Retomando del ejemplo anterior
-
trace(xmlObj.objeto[0].@tipo); //tracea "cadorna"
3. Accediendo a ramas particulares con E4X
E4X es forma de acceder a ciertas ramas del XML con una lógica que podemos comparar con SQL. Supongamos que queremos acceder a los tags del XML cuyo tipo sea igual a "cadorna":
-
trace( xml.objeto.(@tipo=="cadorna"));//tracea "mi objeto"
Espero haberlos iluminado. Gracias y vuelvan pronto.







