Noções básicas sobre XML

Flash Player 9 e posterior, Adobe AIR 1.0 e posterior

XML é uma maneira padrão de representar informações estruturadas com a qual os computadores devem trabalhar com facilidade e que deve ser relativamente fácil para as pessoas gravarem e entenderem. XML é uma abreviação de eXtensible Markup Language (Linguagem de markup extensível). O padrão XML está disponível em www.w3.org/XML/ .

O XML oferece um modo prático e padrão de classificar dados, facilitando a leitura, o acesso e a manipulação. O XML usa estruturas de árvore e de tag similares às do HTML. Veja um exemplo simples de dados XML:

<song> 
    <title>What you know?</title> 
    <artist>Steve and the flubberblubs</artist> 
    <year>1989</year> 
    <lastplayed>2006-10-17-08:31</lastplayed> 
</song>

Os dados XML também podem ser mais complexos, com tags aninhadas em outras tags, bem como em atributos e outros componentes estruturais. Veja um exemplo mais complexo de dados XML:

<album> 
    <title>Questions, unanswered</title> 
    <artist>Steve and the flubberblubs</artist> 
    <year>1989</year> 
    <tracks> 
        <song tracknumber="1" length="4:05"> 
            <title>What do you know?</title> 
            <artist>Steve and the flubberblubs</artist> 
            <lastplayed>2006-10-17-08:31</lastplayed> 
        </song> 
        <song tracknumber="2" length="3:45"> 
            <title>Who do you know?</title> 
            <artist>Steve and the flubberblubs</artist> 
            <lastplayed>2006-10-17-08:35</lastplayed> 
        </song> 
        <song tracknumber="3" length="5:14"> 
            <title>When do you know?</title> 
            <artist>Steve and the flubberblubs</artist> 
            <lastplayed>2006-10-17-08:39</lastplayed> 
        </song> 
        <song tracknumber="4" length="4:19"> 
            <title>Do you know?</title> 
            <artist>Steve and the flubberblubs</artist> 
            <lastplayed>2006-10-17-08:44</lastplayed> 
        </song> 
    </tracks> 
</album>

Observe que esse documento XML contém outras estruturas XML completas (como as tags song e seus filhos). Ele também demonstra outras estruturas XML como atributos ( tracknumber e length nas tags song ) e tags que contêm outras tags em vez de dados (como a tag tracks ).

Como começar a usar o XML

Se você tiver pouca ou nenhuma experiência com XML, veja uma breve descrição dos aspectos mais comuns dos dados XML. Os dados XML são gravados em texto sem formatação, com uma sintaxe específica para organizar as informações em um formato estruturado. Em geral, um único conjunto de dados XML é conhecido como documento XML . No formato XML, os dados são organizados em elementos (que podem ser itens de dados únicos ou contêineres de outros elementos) usando uma estrutura hierárquica. Cada documento XML tem um único elemento como item de nível superior ou principal; dentro desse elemento raiz, pode existir uma única informação, embora provavelmente haja outros elementos que, por sua vez, contêm outros elementos e assim por diante. Por exemplo, esse documento XML contém as informações sobre um álbum de música:

<song tracknumber="1" length="4:05"> 
    <title>What do you know?</title> 
    <artist>Steve and the flubberblubs</artist> 
    <mood>Happy</mood> 
    <lastplayed>2006-10-17-08:31</lastplayed> 
</song>

Cada elemento é diferenciado por um conjunto de tags – o nome do elemento entre os sinais de menor que e maior que. A tag de abertura, que indica o início do elemento, tem o nome do elemento:

<title>

A tag de fechamento, que marca o final do elemento, tem uma barra antes do nome do elemento:

</title>

Se um elemento não tiver nenhum conteúdo, poderá ser gravado como um elemento vazio (às vezes chamado de elemento de fechamento automático). Em XML, esse elemento:

<lastplayed/>

é idêntico a este elemento:

<lastplayed></lastplayed>

Além do conteúdo do elemento contido entre as tags de abertura e fechamento, um elemento também pode incluir outros valores, conhecidos como atributos , definidos na tag de abertura. Por exemplo, este elemento XML define um único atributo chamado length , com o valor "4:19" :

<song length="4:19"></song>

Cada elemento XML tem conteúdo, que pode ser um único valor, um ou mais elementos XML ou nada (para um elemento vazio).

Mais informações sobre XML

Para saber mais sobre como trabalhar com XML, existem diversos outros livros e recursos, incluindo estes sites:

Classes do ActionScript para trabalhar com XML

O ActionScript 3.0 inclui várias classes que são usadas para trabalhar com informações estruturadas como XML. As duas classes principais são as seguintes:

  • XML: representa um único elemento XML, que pode ser um documento XML com vários filhos ou um elemento com um único valor em um documento.

  • XMLList: representa um conjunto de elementos XML. Um objeto XMLList é usado quando existem vários elementos XML que são "irmãos" (no mesmo nível e contidos pelo mesmo pai na hierarquia de documento XML). Por exemplo, uma ocorrência de XMLList seria o modo mais fácil de trabalhar com este conjunto de elementos XML (supostamente contidos em um documento XML):

    <artist type="composer">Fred Wilson</artist> 
    <artist type="conductor">James Schmidt</artist> 
    <artist type="soloist">Susan Harriet Thurndon</artist>

Para usos mais avançados que envolvem namespaces XML, o ActionScript também inclui as classes Namespace e QName. Para obter mais informações, consulte Uso de namespaces XML .

Além das classes internas para trabalhar com XML, o ActionScript 3.0 também inclui vários operadores que fornecem recursos específicos para acessar e manipular dados XML. Essa abordagem de trabalhar com XML usando essas classes e operadores é conhecida como ECMAScript para XML (E4X), conforme definido pela especificação ECMA-357 edição 2.

Conceitos e termos importantes

A lista de referência a seguir contém termos importantes que você vai encontrar ao programar as rotinas de tratamento de XML:

Elemento
Um único item em um documento XML, identificado como o conteúdo contido entre uma tag inicial e uma tag final (incluindo as tags). Os elementos XML podem conter dados de texto ou outros elementos, ou podem ser vazios.

Elemento vazio
Um elemento XML que não contém nenhum elemento filho. Os elementos vazios geralmente são gravados como tags de fechamento (como <element/> ).

Documento
Uma única estrutura XML. Um documento XML pode conter qualquer número de elementos (ou ser constituído por apenas um único elemento vazio); no entanto, um documento XML deve ter um elemento de nível superior que contém todos os outros elementos do documento.

Outro nome para um elemento XML.

Atributo
Um valor nomeado associado a um elemento que está gravado na tag de abertura do elemento no formato attributename="value" , em vez de estar gravado como um elemento filho separado aninhado no elemento.