Pacchettoflash.xml
Classepublic class XMLDocument
EreditarietàXMLDocument Inheritance XMLNode Inheritance Object

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

La classe XMLDocument rappresenta l'oggetto XML precedente che era presente in ActionScript 2.0. Il nome è stato cambiato in XMLDocument in ActionScript 3.0 per evitare conflitti di nome con la nuova classe XML di ActionScript 3.0. In ActionScript 3.0, si consiglia di utilizzare la nuova classe XML e le classi correlate, che supportano E4X (ECMAScript for XML).

La classe XMLDocument, così come XMLNode e XMLNodeType, è presente per garantire la compatibilità retroattiva. La funzionalità di caricamento dei documenti XML è ora fornita dalla classe URLLoader.

Vedere gli esempi

Vedere anche

flash.net.URLLoader
XML, classe


Proprietà pubbliche
 ProprietàDefinito da
 Inheritedattributes: Object
Un oggetto che contiene tutti gli attributi dell'istanza XMLNode specificata.
XMLNode
 InheritedchildNodes: Array
[sola lettura] Un array degli elementi secondari dell'oggetto XMLNode specificato.
XMLNode
 Inheritedconstructor: Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto.
Object
  docTypeDecl: Object = null
Specifica le informazioni relative alla dichiarazione DOCTYPE del documento XML.
XMLDocument
 InheritedfirstChild: XMLNode
Valuta l'oggetto XMLDocument specificato e fa riferimento al primo elemento secondario nell'elenco degli elementi secondari del nodo principale.
XMLNode
  idMap: Object
Un oggetto che contiene i nodi dell'XML ai quali è assegnato un attributo id.
XMLDocument
  ignoreWhite: Boolean = false
Quando è impostata su true, i nodi di testo contenenti solo spazi vuoti vengono eliminati durante il processo di analisi.
XMLDocument
 InheritedlastChild: XMLNode
Un valore XMLNode che fa riferimento all'ultimo elemento secondario nell'elenco degli elementi secondari del nodo principale.
XMLNode
 InheritedlocalName: String
[sola lettura] La parte di nome locale del nome del nodo XML.
XMLNode
 InheritednamespaceURI: String
[sola lettura] Se il nodo XML ha un prefisso, namespaceURI è il valore della dichiarazione xmlns per questo prefisso (l'URI), solitamente denominato URI dello spazio dei nomi.
XMLNode
 InheritednextSibling: XMLNode
Un valore XMLNode che fa riferimento al successivo elemento di pari livello nell'elenco degli elementi secondari del nodo principale.
XMLNode
 InheritednodeName: String
Una stringa che rappresenta il nome del nodo dell'oggetto XMLNode.
XMLNode
 InheritednodeType: uint
Un valore nodeType costante: XMLNodeType.ELEMENT_NODE (per un elemento XML) o XMLNodeType.TEXT_NODE (per un nodo di testo).
XMLNode
 InheritednodeValue: String
Il valore node dell'oggetto XMLDocument.
XMLNode
 InheritedparentNode: XMLNode
Un valore XMLNode che fa riferimento al nodo principale dell'oggetto XML specificato, oppure il valore null se per il nodo non esiste un elemento principale.
XMLNode
 Inheritedprefix: String
[sola lettura] La parte del prefisso del nome del nodo XML.
XMLNode
 InheritedpreviousSibling: XMLNode
Un valore XMLNode che fa riferimento al precedente elemento di pari livello nell'elenco degli elementi secondari del nodo principale.
XMLNode
 Inheritedprototype: Object
[statico] Un riferimento all'oggetto prototipo di un oggetto classe o funzione.
Object
  xmlDecl: Object = null
Una stringa che specifica le informazioni relative alla dichiarazione XML di un documento.
XMLDocument
Metodi pubblici
 MetodoDefinito da
  
XMLDocument(source:String = null)
Crea un nuovo oggetto XMLDocument.
XMLDocument
 Inherited
Aggiunge il nodo specificato all'elenco degli elementi secondari dell'oggetto XML.
XMLNode
 Inherited
Crea e restituisce un nuovo nodo XML con tipo, nome, valore e attributi uguali all'oggetto XML.
XMLNode
  
Crea un nuovo oggetto XMLNode con il nome specificato nel parametro.
XMLDocument
  
Crea un nuovo nodo di testo XML con il testo specificato.
XMLDocument
 Inherited
Restituisce l'URI dello spazio dei nomi associato al prefisso specificato per il nodo.
XMLNode
 Inherited
Restituisce il prefisso che è associato all'URI dello spazio dei nomi specificato per il nodo.
XMLNode
 Inherited
Indica che l'oggetto XMLNode specificato ha dei nodi secondari.
XMLNode
 Inherited
Indica se per un oggetto è definita una proprietà specifica.
Object
 Inherited
Inserisce un nuovo nodo secondario nell'elenco degli elementi secondari dell'oggetto XML, prima del nodo beforeNode.
XMLNode
 Inherited
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro.
Object
  
parseXML(source:String):void
Analizza il testo XML specificato nel parametro value e inserisce vari oggetti nell'oggetto XMLDocument specificato con la struttura ad albero XML risultante.
XMLDocument
 Inherited
Indica se la proprietà specificata esiste ed è enumerabile.
Object
 Inherited
Rimuove dall'elemento principale l'oggetto XML specificato.
XMLNode
 Inherited
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche.
Object
  
Restituisce la rappresentazione in formato stringa dell'oggetto XML.
XMLDocument
 Inherited
Restituisce il valore di base dell'oggetto specificato.
Object
Descrizione delle proprietà
docTypeDeclproprietà
public var docTypeDecl:Object = null

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Specifica le informazioni relative alla dichiarazione DOCTYPE del documento XML. Una volta che il documento XML è stato analizzato in un oggetto XMLDocument, la proprietà XMLDocument.docTypeDecl dell'oggetto XMLDocument viene impostata sul testo della dichiarazione DOCTYPE del documento XML (ad esempio <!DOCTYPE greeting SYSTEM "hello.dtd">). Questa proprietà viene impostata mediante una rappresentazione in formato stringa della dichiarazione DOCTYPE, non mediante un oggetto XMLNode.

Il parser XML ActionScript standard non è un parser di convalida. La dichiarazione DOCTYPE viene letta dal parser e memorizzata nella proprietà XMLDocument.docTypeDecl, ma non viene effettuata alcuna convalida del DTD.

Se durante un'operazione di analisi sintattica non è stata trovata alcuna dichiarazione DOCTYPE, la proprietà XMLDocument.docTypeDecl viene impostata su null. Il metodo XML.toString() genera il contenuto di XML.docTypeDecl immediatamente dopo la dichiarazione XML memorizzata in XML.xmlDecl e prima di qualunque altro testo nell'oggetto XML. Se XMLDocument.docTypeDecl è null, non viene generata alcuna dichiarazione DOCTYPE.

idMapproprietà 
public var idMap:Object

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Un oggetto che contiene i nodi dell'XML ai quali è assegnato un attributo id. I nomi delle proprietà dell'oggetto (ciascuno dei quali contiene un nodo) corrispondono ai valori degli attributi id.

Osservare l'oggetto XMLDocument seguente:

  <employee id='41'>
   <name>
    John Doe
   </name>
   <address>
    601 Townsend St.
   </address>
  </employee>
  
  <employee id='42'>
   <name>
    Jane Q. Public
   </name>
  </employee>
  <department id="IT">
   Information Technology
  </department>
  

Nell'esempio sopra riportato, la proprietà idMap di questo oggetto XMLDocument è un oggetto con tre proprietà: 41, 42 e IT. Ciascuna di queste proprietà è un XMLNode con corrispondente valore id. La proprietà IT dell'oggetto idMap sarà ad esempio il nodo seguente:

  <department id="IT">
   Information Technology
  </department>
  

È necessario utilizzare il metodo parseXML() sull'oggetto XMLDocument per creare un'istanza della proprietà idMap.

Se vi è più di un XMLNode con lo stesso valore id, la proprietà corrispondente dell'oggetto idNode è quella dell'ultimo nodo analizzato. Ad esempio:

  var x1:XML = new XMLDocument("<a id='1'><b id='2' /><c id='1' /></a>");
  x2 = new XMLDocument();
  x2.parseXML(x1);
  trace(x2.idMap['1']);
  
Viene generato il seguente nodo <c>:
  <c id='1' />
  

ignoreWhiteproprietà 
public var ignoreWhite:Boolean = false

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Quando è impostata su true, i nodi di testo contenenti solo spazi vuoti vengono eliminati durante il processo di analisi. I nodi di testo con interlinea o spazi bianchi finali rimangono invariati. L'impostazione predefinita è false.

È possibile impostare la proprietà ignoreWhite per singoli oggetti XMLDocument, come mostra il codice seguente:

  my_xml.ignoreWhite = true;
  

xmlDeclproprietà 
public var xmlDecl:Object = null

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Una stringa che specifica le informazioni relative alla dichiarazione XML di un documento. Una volta che il documento XML è stato analizzato in un oggetto XMLDocument, questa proprietà viene impostata sul testo della dichiarazione XML del documento. Questa proprietà viene impostata mediante una rappresentazione in formato stringa della dichiarazione XML, non mediante un oggetto XMLNode. Se durante un'operazione di analisi sintattica non è stata trovata alcuna dichiarazione XML, la proprietà viene impostata su null. Il metodo XMLDocument.toString() genera il contenuto della proprietà XML.xmlDecl prima di qualunque altro testo nell'oggetto XML. Se la proprietà XML.xmlDecl contiene null, non viene generata alcuna dichiarazione XML.

Descrizione della funzione di costruzione
XMLDocument()Funzione di costruzione
public function XMLDocument(source:String = null)

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Crea un nuovo oggetto XMLDocument. È necessario utilizzare la funzione di costruzione per creare un oggetto XMLDocument prima di chiamare i metodi della classe XMLDocument.

Nota: utilizzare i metodi createElement() e createTextNode() per aggiungere elementi e nodi di testo a una struttura ad albero di documenti XML.

Parametri
source:String (default = null) — Il testo XML analizzato per creare il nuovo oggetto XMLDocument.

Vedere anche

Descrizione dei metodi
createElement()metodo
public function createElement(name:String):XMLNode

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Crea un nuovo oggetto XMLNode con il nome specificato nel parametro. Inizialmente il nuovo nodo non ha elementi principali, secondari o di pari livello. Il metodo restituisce un riferimento all'oggetto XMLNode appena creato che rappresenta l'elemento. Questo metodo e il metodo XMLDocument.createTextNode() sono i metodi delle funzioni di costruzione utilizzati per creare i nodi di un oggetto XML.

Parametri

name:String — Il nome del tag dell'elemento XMLDocument creato.

Restituisce
XMLNode — Un oggetto XMLNode.

Vedere anche

createTextNode()metodo 
public function createTextNode(text:String):XMLNode

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Crea un nuovo nodo di testo XML con il testo specificato. Inizialmente il nuovo nodo non ha elementi principali; inoltre, i nodi di testo non possono avere elementi secondari o di pari livello. Questo metodo restituisce un riferimento all'oggetto XMLDocument che rappresenta il nuovo nodo di testo. Questo metodo e il metodo XMLDocument.createElement() sono i metodi delle funzioni di costruzione utilizzati per creare i nodi di un oggetto XML.

Parametri

text:String — Il testo utilizzato per creare il nuovo nodo di testo.

Restituisce
XMLNode — Un oggetto XMLNode.

Vedere anche

parseXML()metodo 
public function parseXML(source:String):void

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Analizza il testo XML specificato nel parametro value e inserisce vari oggetti nell'oggetto XMLDocument specificato con la struttura ad albero XML risultante. Qualunque struttura ad albero presente nell'oggetto XMLDocument viene eliminata.

Parametri

source:String — Il testo XML da analizzare e passare all'oggetto XMLDocument specificato.

toString()metodo 
public override function toString():String

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Restituisce la rappresentazione in formato stringa dell'oggetto XML.

Restituisce
String
Esempi Come utilizzare gli esempi
XMLDocumentExample.as

L'esempio seguente utilizza le classi XMLDocument e XMLNode per analizzare e formattare un documento XML. Anziché caricare un file XML esterno, l'esempio utilizza la classe XML di livello principale per creare un documento XML e quindi analizzarlo.
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";
    }
}




 

Inviami un messaggio e-mail quando vengono aggiunti dei commenti a questa | Rapporto sui commenti

Pagina corrente: http://livedocs.adobe.com/flash/9.0_it/ActionScriptLangRefV3/flash/xml/XMLDocument.html