Introdução a XML - Regras de sintaxe

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (4)  (1)

Veja neste artigo as regras básicas de sintaxe para criação de documentos XML.

1. As Regras de Sintaxe da XML

Um documento XML é considerado bem-formado quando respeita o conjunto de regras de sintaxe estabelecidas na especificação da linguagem. É importante conhecer essas regras, pois a maioria das bibliotecas utilizadas para consulta e atualização de documentos XML requer a utilização de documentos bem-formados.

No site da W3C (órgão responsável pela definição da linguagem XML e pela padronização de outras iniciativas ligadas à Web), existe um documento que contendo toda essa especificação. Porém, como quase sempre acontece com as especificações da W3C, o documento é extremamente grande e de leitura bastante “pesada”. Para facilitar a nossa vida, a seguir apresentamos uma lista contendo as mais importantes regras de sintaxe da XML:

  1. Um documento XML deve possuir raiz única.
  2. Todas as tags devem ser fechadas (elementos devem possuir tag inicial e tag final)
  3. Os nomes de elementos (tags) e atributos são sensíveis à caracteres maiúsculos e minúsculos.
  4. Os elementos devem ser bem-aninhados (tags fecham em ordem oposta a que foram abertas).
  5. Atributos não se repetem em um mesmo elemento.
  6. Todo atributo deve possuir algum valor e este valor deve ser especificado entre aspas.
  7. Alguns caracteres especiais, como “ < ”, “ & ” e “ > ” devem ser especificados com o uso de entidades pré-definidas (no caso & lt; , & amp; e & gt; , respectivamente).
  8. Nomes de tags não podem conter espaços em branco nem os caracteres !"#$%&'()*+,/;<=>?@[\]^`{|}~. Além disso, não podem começar com um número, “ . ” (ponto) ou “ - " (traço).

2. Exemplos

Apresentamos agora exemplos práticos envolvendo as regras recém-apresentadas. Para cada regra, primeiro apresentamos um documento contendo um erro de sintaxe e depois a correção do mesmo.

Regra 1: Um Documento XML deve possuir raiz única

Listagem 1: Documento com erro - não possui raiz única

<?xml version="1.0"?>
<pais>
	<nome>Brasil</nome>
	<moeda>Real</moeda>
</pais>
<pais>
	<nome>Argentina</nome>
	<moeda>Peso argentino</moeda>
</pais>

Listagem 2: Documento correto - possui “nacoes” como raiz única

<?xml version="1.0"?>
<nacoes>
  <pais>
	<nome>Brasil</nome>
	<moeda>Real</moeda>
  </pais>
  <pais>
	<nome>Argentina</nome>
	<moeda>Peso argentino</moeda>
  </pais>
</nacoes> 

Regra 2: Todas as tags devem ser fechadas

Listagem 3: Documento com erro - as tags “nome” e “populacao” não foram fechadas

<?xml version="1.0"?>
<pais>
<nome>Brasil
<populacao>196.655.014
</pais>
 

Listagem 4: Documento correto - todas as tags foram fechadas

<?xml version="1.0"?>
<pais>
<nome>Brasil</nome>
<populacao>196.655.014</populacao>
</pais>
 

Regra 3: Nomes de elementos e atributos são sensíveis à caracteres maiúsculos e minúsculos

Listagem 5: Documento com erro - a tag “nome” é diferente de “Nome”

<?xml version="1.0"?>
<pais>
<nome>Uruguai</Nome>
</pais>
 

Listagem 6: Documento corrigido

<?xml version="1.0"?>
<pais>
<nome>Uruguai</nome>
</pais>
 

Regra 4: Os elementos devem ser bem-aninhados (tags fecham em ordem oposta a que foram abertas)

Listagem 7: Documento com erro - tags fechadas na ordem errada

<?xml version="1.0"?>
<informacao>
   <texto>A capital do <pais>Chile eh <capital>Santiago</texto></capital></pais>
</informacao>
 

Listagem 8: Documento corrigido

<?xml version="1.0"?>
<informacao>
   <texto>A capital do <pais>Chile</pais> eh <capital>Santiago</capital></texto>
</informacao>
 

Regra 5: Atributos não se repetem em um mesmo elemento

Listagem 9: Documento com erro - dois atributos chamados “cidade”

<?xml version="1.0"?>
<pais cidade="Rio de Janeiro" cidade="Brasília">
   Brasil
</pais>

Listagem 10: Documento corrigido - um dos atributos foi mudado para “capital”

<?xml version="1.0"?>
<pais cidade="Rio de Janeiro" capital="Brasília">
   Brasil
</pais>
 

Regra 6: Todo atributo deve possuir algum valor e este deve ser especificado entre aspas

Listagem 11: Documento com erro - o atributo “mercosul” não tem valor

<?xml version="1.0"?>
<pais mercosul>
   Brasil
</pais>

Listagem 12: Documento corrigido - “mercosul” tem valor igual a “SIM”

<?xml version="1.0"?>
<pais mercosul="SIM">
   Brasil
</pais>
 

Regra 7: Alguns caracteres, como “ < ” e “ & ” devem ser especificados com o uso de entidades pré-definidas (no caso, & lt; e & amp;);

Listagem 13: Documento com erro - contém o sinal <

<?xml version="1.0"?>
<regra_7>
   Brasil & Chile 
</regra_7>

Listagem 14: Documento corrigido - usa entidade pré-definida

<?xml version="1.0"?>
<regra_7>
   Brasil & amp; Chile 
</regra_7>
 

Regra 8: Nomes de tags não podem conter espaços em branco nem os caracteres !"#$%&'()*+,/;<=>?@[\]^`{|}~. Além disso, não podem começar com um número, “ . ” (ponto) ou “ - " (traço).

Listagem 15: Documento com erro - nome da tag começa com número.

<?xml version="1.0"?>
<1_pais>
   Brasil 
<1_pais>

Listagem 16: Documento corrigido - nome da tag começa com letra

<?xml version="1.0"?>
<pais_1>
   Brasil 
</pais_1>
 

Assim finalizamos o artigo. Não apresentamos todas as regras de sintaxe da XML, porém mostramos as mais importantes, ou seja, aquelas que precisam ser conhecidas por qualquer desenvolvedor!

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?