Referencia de ActionScript® 3.0 para la plataforma de Adobe® Flash®
Inicio  |  Ocultar lista de paquetes y clases |  Paquetes  |  Clases  |  Novedades  |  Índice  |  Apéndices  |  ¿Por qué hay texto en inglés?
Filtros: Recuperando datos del servidor...
Recuperando datos del servidor...
flash.xml 

XMLNode  - AS3

Paqueteflash.xml
Clasepublic class XMLNode
HerenciaXMLNode Inheritance Object
Subclases XMLDocument

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

La clase XMLNode representa el objeto XML heredado que estaba presente en ActionScript 2.0 y que ahora, en ActionScript 3.0, ha cambiado de nombre. En ActionScript 3.0, puede que le interese utilizar la nueva clase XML de nivel superior y sus clases relacionadas, que admiten E4X (ECMAScript para XML). La clase XMLNode sigue presente para permitir la compatibilidad con versiones anteriores.

Ver los ejemplos

Elementos de API relacionados



Propiedades públicas
 PropiedadDefinido por
  attributes : Object
Objeto que contiene todos los atributos de la instancia XMLNode especificada.
XMLNode
  childNodes : Array
[solo lectura] Conjunto de los elementos secundarios del objeto XMLNode especificado.
XMLNode
 Inheritedconstructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada.
Object
  firstChild : XMLNode
Evalúa el objeto XMLDocument especificado y hace referencia al primer elemento secundario de la lista de elementos secundarios del nodo principal.
XMLNode
  lastChild : XMLNode
Valor XMLNode que hace referencia al último elemento secundario de la lista de elementos secundarios del nodo.
XMLNode
  localName : String
[solo lectura] La parte de nombre local del nombre del nodo XML.
XMLNode
  namespaceURI : String
[solo lectura] Si el nodo XML tiene un prefijo, namespaceURI es el valor de la declaración xmlns para ese prefijo (el URI), que normalmente se denomina URI de espacio de nombres.
XMLNode
  nextSibling : XMLNode
Valor XMLNode que hace referencia al siguiente elemento secundario de la lista de elementos secundarios del nodo principal.
XMLNode
  nodeName : String
Cadena que representa el nombre del nodo del objeto XMLNode.
XMLNode
  nodeType : uint
Un valor de constante nodeType, que puede ser XMLNodeType.ELEMENT_NODE para un elemento XML o XMLNodeType.TEXT_NODE para un nodo de texto.
XMLNode
  nodeValue : String
Valor de nodo del objeto XMLDocument.
XMLNode
  parentNode : XMLNode
Valor de XMLNode que hace referencia al nodo principal del objeto XML especificado o devuelve null si el nodo no tiene elemento principal.
XMLNode
  prefix : String
[solo lectura] La parte de prefijo del nombre del nodo XML.
XMLNode
  previousSibling : XMLNode
Valor XMLNode que hace referencia al elemento secundario anterior de la lista de elementos secundarios del nodo principal.
XMLNode
Métodos públicos
 MétodoDefinido por
  
XMLNode(type:uint, value:String)
Crea un nuevo objeto XMLNode.
XMLNode
  
Añade el nodo especificado a la lista secundaria del objeto XML.
XMLNode
  
Construye y devuelve un nuevo nodo XML del mismo tipo, nombre, valor y atributos que el objeto XML especificado.
XMLNode
  
Devuelve el valor URI de espacio de nombres asociado con el prefijo especificado para el nodo.
XMLNode
  
Devuelve el prefijo de nombre asociado con el valor URI de espacio de nombres especificado para el nodo.
XMLNode
  
Indica si el objeto XMLNode especificado tiene nodos secundarios.
XMLNode
 Inherited
Indica si un objeto tiene definida una propiedad especificada.
Object
  
Inserta un nodo secundario en la lista de secundarios del objeto XML, delante del nodo beforeNode.
XMLNode
 Inherited
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro.
Object
 Inherited
Indica si existe la propiedad especificada y si es enumerable.
Object
  
Quita el objeto XML especificado de su elemento principal.
XMLNode
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
 Inherited
Devuelve la representación de cadena de este objeto, con formato según las convenciones específicas de configuración regional.
Object
  
Evalúa el objeto XMLNode especificado, construye una representación textual de la estructura XML, incluidos el nodo, los elementos secundarios y los atributos, y devuelve el resultado como una cadena.
XMLNode
 Inherited
Devuelve el valor simple del objeto especificado.
Object
Información sobre propiedades

attributes

propiedad
attributes:Object

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Objeto que contiene todos los atributos de la instancia XMLNode especificada. El objeto XMLNode.attributes contiene una variable para cada atributo de la instancia XMLNode. Dado que estas variables se definen como parte del objeto, normalmente se hace referencia a ellas como propiedades del objeto. El valor de cada atributo se almacena en la correspondiente propiedad como una cadena. Por ejemplo, si tiene un atributo denominado color, podrá recuperar el valor del atributo especificando color como nombre de propiedad, como se muestra en el siguiente código:

	 var myColor:String = doc.firstChild.attributes.color
	 



Implementación
    public function get attributes():Object
    public function set attributes(value:Object):void

childNodes

propiedad 
childNodes:Array  [solo lectura]

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Conjunto de los elementos secundarios del objeto XMLNode especificado. Cada elemento del conjunto es una referencia a un objeto XMLNode que representa un nodo secundario. Se trata de una propiedad de sólo lectura que no puede utilizarse para manipular nodos secundarios. Utilice los métodos appendChild(), insertBefore() y removeNode() para manipular nodos secundarios.

Esta propiedad no está definida para los nodos de texto (nodeType == 3).



Implementación
    public function get childNodes():Array

Elementos de API relacionados

firstChild

propiedad 
public var firstChild:XMLNode

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Evalúa el objeto XMLDocument especificado y hace referencia al primer elemento secundario de la lista de elementos secundarios del nodo principal. Esta propiedad tiene el valor null si el nodo no tiene elementos secundarios. Esta propiedad tiene el valor undefined si el nodo es un nodo de texto. Esta es una propiedad de sólo lectura que no puede utilizarse para manipular nodos secundarios; utilice los métodos appendChild(), insertBefore() y removeNode() para manipular nodos secundarios.

Elementos de API relacionados

lastChild

propiedad 
public var lastChild:XMLNode

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Valor XMLNode que hace referencia al último elemento secundario de la lista de elementos secundarios del nodo. La propiedad XMLNode.lastChild es null si el nodo no tiene elementos secundarios. Esta propiedad no puede utilizarse para manipular nodos secundarios; utilice los métodos appendChild(), insertBefore() y removeNode() para manipular nodos secundarios.

Elementos de API relacionados

localName

propiedad 
localName:String  [solo lectura]

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

La parte de nombre local del nombre del nodo XML. Es el nombre de elemento sin el prefijo de espacio de nombres. Por ejemplo, el nodo <contact:mailbox/>bob@example.com</contact:mailbox> tiene el nombre local "mailbox" y el prefijo "contact", que forman el nombre completo del elemento "contact.mailbox".

Puede acceder al prefijo a través de la propiedad prefix del objeto de nodo XML. La propiedad nodeName devuelve el nombre completo (incluidos el prefijo y el nombre local).



Implementación
    public function get localName():String

namespaceURI

propiedad 
namespaceURI:String  [solo lectura]

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Si el nodo XML tiene un prefijo, namespaceURI es el valor de la declaración xmlns para ese prefijo (el URI), que normalmente se denomina URI de espacio de nombres. La declaración xmlns está en el nodo actual o en un nodo de un nivel superior en la jerarquía XML.

Si el nodo XML no tiene un prefijo, el valor de la propiedad namespaceURI depende de si hay un espacio de nombres predeterminado definido (como en xmlns="http://www.example.com/"). Si hay un espacio de nombres predeterminado, el valor de la propiedad namespaceURI es el valor del espacio de nombres. Si no hay un espacio de nombres predeterminado, la propiedad namespaceURI para ese nodo es una cadena vacía ("").

Puede utilizar el método getNamespaceForPrefix() para identificar el espacio de nombres asociado a un prefijo concreto. La propiedad namespaceURI devuelve el prefijo asociado al nombre de nodo.



Implementación
    public function get namespaceURI():String

Elementos de API relacionados

nextSibling

propiedad 
public var nextSibling:XMLNode

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Valor XMLNode que hace referencia al siguiente elemento secundario de la lista de elementos secundarios del nodo principal. Esta propiedad tiene el valor null si el nodo no tiene otro nodo del mismo nivel. Esta propiedad no puede utilizarse para manipular nodos secundarios; utilice los métodos appendChild(), insertBefore() y removeNode() para manipular nodos secundarios.

Elementos de API relacionados

nodeName

propiedad 
public var nodeName:String

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Cadena que representa el nombre del nodo del objeto XMLNode. Si el objeto XMLNode es un elemento XML (nodeType == 1), nodeName es el nombre de la etiqueta que representa al nodo del archivo XML. Por ejemplo, TITLE es el nombre del nodo (nodeName) de una etiqueta HTML TITLE. Si el objeto XMLNode es un nodo de texto (nodeType == 3), nodeName tiene el valor null.

Elementos de API relacionados

nodeType

propiedad 
public var nodeType:uint

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Un valor de constante nodeType, que puede ser XMLNodeType.ELEMENT_NODE para un elemento XML o XMLNodeType.TEXT_NODE para un nodo de texto.

nodeType es un valor numérico de la enumeración NodeType de la recomendación W3C DOM Nivel 1: http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core.html. En la siguiente tabla se enumeran los valores:

Valor enteroConstante definida
1ELEMENT_NODE
3TEXT_NODE
5ENTITY_REFERENCE_NODE
7PROCESSING_INSTRUCTION_NODE
9DOCUMENT_NODE
11DOCUMENT_FRAGMENT_NODE

En Flash Player, la clase XMLNode incorporada sólo admite XMLNodeType.ELEMENT_NODE y XMLNodeType.TEXT_NODE.

Elementos de API relacionados

nodeValue

propiedad 
public var nodeValue:String

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Valor de nodo del objeto XMLDocument. Si el objeto XMLDocument es un nodo de texto, nodeType es 3 y nodeValue es el texto del nodo. Si el objeto XMLDocument es un elemento XML (nodeType es 1), nodeValue es null y de sólo lectura.

Elementos de API relacionados

parentNode

propiedad 
public var parentNode:XMLNode

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Valor de XMLNode que hace referencia al nodo principal del objeto XML especificado o devuelve null si el nodo no tiene elemento principal. Esta es una propiedad de sólo lectura que no puede utilizarse para manipular nodos secundarios; utilice los métodos appendChild(), insertBefore() y removeNode() para manipular nodos secundarios.

Elementos de API relacionados

prefix

propiedad 
prefix:String  [solo lectura]

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

La parte de prefijo del nombre del nodo XML. Por ejemplo, el nodo <contact:mailbox/>bob@example.com</contact:mailbox> tiene el prefijo "contact" y el nombre local "mailbox", que forman el nombre completo del elemento "contact.mailbox".

La propiedad nodeName de un objeto de nodo XML devuelve el nombre completo (incluidos el prefijo y el nombre local). Puede acceder a la parte del nombre local del nombre del elemento utilizando la propiedad localName.



Implementación
    public function get prefix():String

previousSibling

propiedad 
public var previousSibling:XMLNode

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Valor XMLNode que hace referencia al elemento secundario anterior de la lista de elementos secundarios del nodo principal. La propiedad tiene el valor null si el nodo no tiene un nodo del mismo nivel que le preceda. Esta propiedad no puede utilizarse para manipular nodos secundarios; utilice los métodos appendChild(), insertBefore() y removeNode() para manipular nodos secundarios.

Elementos de API relacionados

Información sobre constructores

XMLNode

()Información sobre
public function XMLNode(type:uint, value:String)

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Crea un nuevo objeto XMLNode. Deberá utilizar el constructor para crear un objeto XMLNode antes de llamar a cualquiera de los métodos de la clase XMLNode.

Nota: utilice los métodos createElement() y createTextNode() para añadir elementos y nodos de texto a un árbol de documentos XML.

Parámetros
type:uint — El tipo de nodo: puede ser 1 para un elemento XML o 3 para un nodo de texto.
 
value:String — El texto XML analizado para crear el nuevo objeto XMLNode.

Elementos de API relacionados

Información sobre métodos

appendChild

()método
public function appendChild(node:XMLNode):void

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Añade el nodo especificado a la lista secundaria del objeto XML. Este método opera directamente en el nodo al que hace referencia el parámetro childNode; no añade una copia del nodo. Si el nodo que se va a añadir ya existe en otra estructura de árbol, la adición del nodo a la nueva ubicación lo eliminará de su ubicación actual. Si el parámetro childNode hace referencia a un nodo que ya existe en otra estructura de árbol XML, el nodo secundario añadido se sitúa en la nueva estructura de árbol tras eliminarlo de su nodo principal actual.

Parámetros

node:XMLNode — Un XMLNode que representa el nodo que se va a mover de su ubicación actual a la lista de elementos secundarios del objeto my_xml.

cloneNode

()método 
public function cloneNode(deep:Boolean):XMLNode

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Construye y devuelve un nuevo nodo XML del mismo tipo, nombre, valor y atributos que el objeto XML especificado. Si deep se define como true, todos los elementos secundarios se clonan sucesivamente, lo que da como resultado una copia exacta del árbol de documentos del objeto original.

El clon del nodo que se devuelve ya no está asociado al árbol del elemento clonado. En consecuencia, nextSibling, parentNode y previousSibling tendrán el valor null. Si el parámetro deep se define como false, o el nodo my_xml no tiene nodos secundarios, firstChild y lastChild también son null.

Parámetros

deep:Boolean — Un valor booleano; si es true, los elementos secundarios del objeto XML especificado se clonarán sucesivamente.

Valor devuelto
XMLNode — Objeto XMLNode.

getNamespaceForPrefix

()método 
public function getNamespaceForPrefix(prefix:String):String

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Devuelve el valor URI de espacio de nombres asociado con el prefijo especificado para el nodo. Para determinar el URI, getPrefixForNamespace() busca en la jerarquía de XML desde el nodo y devuelve el URI de espacio de nombres de la primera declaración xmlns para el prefix concreto.

Si no hay espacio de nombres definido para el prefijo especificado, el método devuelve null.

Si especifica una cadena vacía ("") como prefix y hay un espacio de nombres predeterminado definido para el nodo (como xmlns="http://www.example.com/"), el método devuelve el URI de espacio de nombres predeterminado.

Parámetros

prefix:String — Prefijo para el que el método devuelve el espacio de nombres asociado.

Valor devuelto
String — Espacio de nombres asociado con el prefijo especificado.

Elementos de API relacionados

getPrefixForNamespace

()método 
public function getPrefixForNamespace(ns:String):String

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Devuelve el prefijo de nombre asociado con el valor URI de espacio de nombres especificado para el nodo. Para determinar el prefijo, getPrefixForNamespace() busca en la jerarquía de XML desde el nodo y devuelve el prefijo de la primera declaración xmlns para el URI de espacio de nombres correspondiente a ns.

Si no hay asignación de xmlns para el URI, el método devuelve el valor null. Si hay una asignación de xmlns para el URI, pero no hay ningún prefijo asociado a la asignación, el método devuelve una cadena vacía ("").

Parámetros

ns:String — El valor URI de espacio de nombres para el que el método devuelve el prefijo asociado.

Valor devuelto
String — Prefijo asociado al espacio de nombres especificado.

Elementos de API relacionados

hasChildNodes

()método 
public function hasChildNodes():Boolean

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Indica si el objeto XMLNode especificado tiene nodos secundarios. Esta propiedad es true si el objeto XMLNode especificado tiene nodos secundarios; en caso contrario, es false.

Valor devuelto
Boolean — Devuelve el valor true si el objeto XMLNode especificado tiene nodos secundarios; en caso contrario, devuelve false.

insertBefore

()método 
public function insertBefore(node:XMLNode, before:XMLNode):void

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Inserta un nodo secundario en la lista de secundarios del objeto XML, delante del nodo beforeNode. Si el parámetro beforeNode tiene el valor undefined o null, se añadirá el nodo con el método appendChild(). Si beforeNode no es un elemento secundario de my_xml, la inserción generará un error.

Parámetros

node:XMLNode — Objeto XMLNode que se va a insertar.
 
before:XMLNode — El objeto XMLNode antes del punto de inserción para childNode.

Elementos de API relacionados

removeNode

()método 
public function removeNode():void

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Quita el objeto XML especificado de su elemento principal. También elimina todos los descendientes del nodo.

toString

()método 
public function toString():String

Versión del lenguaje: ActionScript 3.0
Versiones de motor de ejecución: AIR 1.0, Flash Player 9, Flash Lite 4

Evalúa el objeto XMLNode especificado, construye una representación textual de la estructura XML, incluidos el nodo, los elementos secundarios y los atributos, y devuelve el resultado como una cadena.

En el caso de objetos XMLDocument de nivel superior (los creados con el constructor), el método XMLDocument.toString() genera la declaración XML del documento (almacenada en la propiedad XMLDocument.xmlDecl), seguida de la declaración DOCTYPE del documento (almacenada en la propiedad XMLDocument.docTypeDecl), seguida de la representación textual de todos los nodos XML del objeto. La declaración XML no se genera si la propiedad XMLDocument.xmlDecl tiene el valor null. La declaración DOCTYPE no se genera si la propiedad XMLDocument.docTypeDecl tiene el valor null.

Valor devuelto
String — Cadena que representa al objeto XMLNode.

Elementos de API relacionados

XMLDocumentExample.as

En el ejemplo siguiente, se utilizan las clases XMLDocument y XMLNode para analizar y dar formato a un documento XML. En lugar de cargar un archivo XML externo, el ejemplo utiliza la clase XML de nivel superior para crear el documento XML y luego lo analiza.
package {
    import flash.display.Sprite;
    import flash.xml.XMLDocument;
    import flash.xml.XMLNode;
    import flash.xml.XMLNodeType;

    public class XMLDocumentExample extends Sprite {
        public function XMLDocumentExample() {
            var result:XMLDocument = new XMLDocument();
            result.ignoreWhite = true;
            result.parseXML(getXMLString());

            var books:Array = parseBooks(result.firstChild);
            trace("books: \n" + books);
        }

        private function parseBooks(node:XMLNode):Array {
            var books:Array = new Array();

            var kids:Array = node.childNodes;
            for each(var item:XMLNode in kids) {
                parseBook(item, books);
            }

            return books;
        }

        private function parseBook(node:XMLNode, books:Array):void {
            var item:Book = new Book();
            item.setPublisher(node.attributes.publisher);
            item.setName(node.attributes.name);
            books.push(item);
        }

        private function getXMLString():String {
            var list:XML = <books>
                                <book publisher="Addison-Wesley" name="Design Patterns" />
                                <book publisher="Addison-Wesley" name="The Pragmatic Programmer" />
                                <book publisher="Addison-Wesley" name="Test Driven Development" />
                                <book publisher="Addison-Wesley" name="Refactoring to Patterns" />
                                <book publisher="O'Reilly Media" name="The Cathedral & the Bazaar" />
                                <book publisher="O'Reilly Media" name="Unit Test Frameworks" />
                            </books>;
            return list.toXMLString();
        }
    }

}
class Book {
    private var publisher:String;
    private var name:String;

    public function setPublisher(publisher:String):void {
        this.publisher = publisher;
    }

    public function setName(name:String):void {
        this.name = name;
    }

    public function toString():String {
        return "[Book name: " + name + " publisher: " + publisher + "]\n";
    }
}




[ X ]¿Por qué hay texto en inglés?
Cierto contenido de la Referencia de ActionScript 3.0 se muestra en inglés

No todo el contenido de la Referencia de ActionScript 3.0 se traduce a todos los idiomas. Si un elemento del lenguaje no se traduce, aparecerá en inglés. Por ejemplo, la clase ga.controls.HelpBox no está traducida en ningún idioma. Por lo tanto, en la versión en español de la referencia, la clase ga.controls.HelpBox aparecerá en inglés.