LMMD-MUS LMMD-MUS LMMD-MUS

home HOME

XML Básico
XML INÍCIO
XML Introdução
XML Como usar
XML Sintaxe
XML Elementos
XML Atributos
XML Validação
XML Navegadores
XML Ver
XML Exibir com CSS
XML Exibir com XSL
XML Data Islands
XML Parser
XML na Vida Real

XML Advanced
XML Namespaces
XML CDATA
XML Codificação
XML Servidor
XML Aplicações
XML HTTP
XML Comportamentos
XML Tecnologias
XML Editores
/table>

A Sintaxe da XML

Anterior Próxima

As regras de sintaxe da XML são muito simples e muito estritas. As regras são muito fpáceis de aprender, e muito fáceis de usar.

Por causa disto, criar software que possa ler e manipular XML é muito fácil de fazer.


Um exemplo de documento XML

Os documentos XML usam uma sintaxe simples e auto-descritiva.

<?xml version="1.0" encoding="ISO-8859-1"?>
<bilhete>
<para>José</para>
<de>Maria</de>
<título>Lembrete</título>
<corpo>Não me esqueça neste fim-de-semana!</corpo>
</bilhete>

A primeira linha do documento - a declaração XML - define a versão XML e a codificação de caracteres usada no documento. Neste caso o documento está conforme a especificação 1.0 da XML e usa o conjunto de caracteres ISO-8859-1 (Latin-1/West European).

A próxima linha descreve o elemento raiz do documento (como se dissesse: "este documento é um bilhete"):

<bilhete>

As próximas 4 linhas descrevem 4 elementos filhos da raiz (para, de, título, e corpo)):

<para>José</para>
<de>Maria</de>
<título>Lembrete</título>
<corpo>Não me esqueça neste fim-de-semana!</corpo>

E finalmente a última linha define o final do elemento raiz:

</bilhete>

Você pode deduzir deste exemplo que o documento XML contém um Bilhete para José de Maria? Você não concorda que a XML é bastante auto-descritiva?


Todos os elementos XML devem ter uma tag de fechamento

Com a XML, é ilegal omitir a tag de fechamento.

Na HTML alguns elementos não têm que ter uma tag de fechamento. O seguinte código é legal na HTML:

<p>Este é um parágrafo
<p>Este é outro parágrafo

Na XML todos os elementos devem ter uma tag de fechamento, assim:

<p>Este é um parágrafo</p>
<p>Este é outro parágrafo</p> 

Observação: Você pode ter observado nos exemplos anteriores que a declaração XML não tinha uma tag de fechamento. ISto não é um erro. A declaração não é parte do docuemnto XML em si. Ela não é um elemento XML, e ela não deve ter uma tag de fechamento.


As tags XML são sensíveis à caixa (case sensitive)

Diferente da HTML, as tags XML são sensíveis à caixa [maiúsculas e minúsculas são diferentes].

Com a XML, a tag <Letra> é diferente da tag <letra>.

As tags de abertura e fechamento devem portanto estar escritas com a mesma caixa:

<Mensagem>Isto está incorreto</mensagem>

<mensagem>Isto está correto</mensagem>


Todos os elementos XML devem estar propriamente aninhados

Aninhamento impróprio de tags não faz sentido para a XML.

Na HTML alguns elementos podem estar impropriamente aninhados uns dentro dos outros como estes:

<b><i>Este texto está em negrito e itálico</b></i>

Na XML todos os elementos devem estar propriamente aninhados uns dentro dos outros como estes:

<b><i>Este texto está em negrito e itálico</i></b>


Todos os documentos XML devem ter um elemento raiz

Todos os documentos XML devem conter um único par de tags para definir um elemento raiz.

Todos os outros elementos devem estar dentro deste elemento raiz.

Tods os elementos podem ter sub-elementos (elementos filho). Os sub-elementos devem estar corretamente aninhados dentro de seu elemento pai:

<raiz>
  <filho>
    <subfilho>.....</subfilho>
  </filho>
</raiz> 


Valores de Atributos devem sempre estar Aspados

Com a XML, é ilegal omitir as marcas de aspas em torno de valores de atributos.

Os elementos XML podem ter atributos em apres name/value (nome/valor) assim como na HTML. Na XML o valor do atributo deve sempre estar aspado. Estude os dois documentos XML abaixo. O primeiro está incorreto, o egundo está correto:

<?xml version="1.0" encoding="ISO-8859-1"?>
<bilhete data=12/11/2002>
<para>José</para>
<de>Maria</de>
</bilhete>

<?xml version="1.0" encoding="ISO-8859-1"?>
<bilhete data="12/11/2002">
<para>José</para>
<de>Maria</de>
</bilhete>

O erro no primeiro documento é que o atributo data no elemento bilhete não está aspado.

Isto está correto: data="12/11/2002". Isto está incorreto: data=12/11/2002.


Com a XML, os espaços escritos são preservados

COm a XML, o espaço em branco no seu documento não é truncado.

Isto é diferente da HTML. Com a HTML, uma sentença como esta:

Ôi,              meu nome é José,

será exibida assim:

Ôi, meu nome é José,

porque a HTML tira fora o espaço em branco.


Com a XML, CR / LF é convertida para LF

Com a XML, uma nova linha é sempre armazenada como LF.

VocêÊ sabe o que é uma máquina de escrever? Bem, uma máquina de escrever é um aparelho mecânico usado nos séculos anteriores para produzir documentos impressos. :-)

Após você ter datilografado uma linha de texto numa máquina de escrever, você tinha que manualmente retornar o carro de impressão para a posição na margem esquerda e manualmente alimentar o papel com uma linha.

Em aplicações para o Windows, uma nova linha é normalmente armazenada como um par de caracteres: retorno do carro (CR: carriage return) e alimentação de linha (LF: line feed). O par de caracteres guarda alguma semelhança com as ações da máquina de escrever de estabelecer uma nova linha. Nas aplicações para Unix, uma nova linha é normalmente armazenada como um caractere LF. APlicações para Macintosh usam somente um caractere CR para armazenar uma nova linha.


Comentários em XML

A sintaxe para escrever comentários em XML é similar àquela da HTML.

<!-- Este é um comentário -->


Nada há de especial sobre a XML

Nada há de especial sobre a XML. Ela é apenas texto puro com a adição de algumas tags XML cercadas por parênteses angulares [angle brackets].

Programas que podem manejar texto puro podem também manejar XML. Num simples editor de texto, as tags XML serão visíveis e não irão ser manejadas especialmente.

Numa aplicação XML-ciente entretanto, as tags XML podem ser manejadas especialmente. As tags podem o não estar visíveis, ou ter um significado funcional, dependendo da natureza da aplicação.


Anterior Próxima