XML - Sintaxe

Neste capítulo, discutiremos as regras de sintaxe simples para escrever um documento XML. A seguir está um documento XML completo -

<?xml version = "1.0"?>
<contact-info>
   <name>Tanmay Patil</name>
   <company>TutorialsPoint</company>
   <phone>(011) 123-4567</phone>
</contact-info>

Você pode notar que há dois tipos de informação no exemplo acima -

  • Marcação, como <contact-info>

  • O texto ou os dados do personagem, Ponto de Tutoriais e (040) 123-4567 .

O diagrama a seguir descreve as regras de sintaxe para gravar diferentes tipos de marcação e texto em um documento XML.

Vamos ver cada componente do diagrama acima em detalhes.

Declaração XML

O documento XML pode opcionalmente ter uma declaração XML. Está escrito da seguinte forma -

<?xml version = "1.0" encoding = "UTF-8"?>

Onde version é a versão XML e encoding especifica a codificação de caracteres usada no documento.

Regras de sintaxe para declaração XML

  • A declaração XML diferencia maiúsculas de minúsculas e deve começar com "<?xml>" Onde "xml"está escrito em minúsculas.

  • Se o documento contém uma declaração XML, então ele precisa ser estritamente a primeira declaração do documento XML.

  • A declaração XML precisa ser estritamente a primeira instrução no documento XML.

  • Um protocolo HTTP pode substituir o valor da codificação que você colocou na declaração XML.

Tags e elementos

Um arquivo XML é estruturado por vários elementos XML, também chamados de nós XML ou tags XML. Os nomes dos elementos XML são colocados entre colchetes triangulares <> conforme mostrado abaixo -

<element>

Regras de sintaxe para tags e elementos

Element Syntax - Cada elemento XML precisa ser fechado com elementos de início ou de fim, conforme mostrado abaixo -

<element>....</element>

ou em casos simples, apenas desta forma -

<element/>

Nesting of Elements- Um elemento XML pode conter vários elementos XML como seus filhos, mas os elementos filhos não devem se sobrepor. ou seja, uma tag de fim de um elemento deve ter o mesmo nome da tag de início sem correspondência mais recente.

O exemplo a seguir mostra tags aninhadas incorretas -

<?xml version = "1.0"?>
<contact-info>
<company>TutorialsPoint
</contact-info>
</company>

O exemplo a seguir mostra as tags aninhadas corretas -

<?xml version = "1.0"?>
<contact-info>
   <company>TutorialsPoint</company>
<contact-info>

Root Element- Um documento XML pode ter apenas um elemento raiz. Por exemplo, a seguir não é um documento XML correto, porque tanto ox e y os elementos ocorrem no nível superior sem um elemento raiz -

<x>...</x>
<y>...</y>

O exemplo a seguir mostra um documento XML formado corretamente -

<root>
   <x>...</x>
   <y>...</y>
</root>

Case Sensitivity- Os nomes dos elementos XML diferenciam maiúsculas de minúsculas. Isso significa que o nome dos elementos inicial e final precisam estar exatamente no mesmo caso.

Por exemplo, <contact-info> é diferente de <Contact-Info>

Atributos XML

A attributeespecifica uma única propriedade para o elemento, usando um par nome / valor. Um elemento XML pode ter um ou mais atributos. Por exemplo -

<a href = "http://www.tutorialspoint.com/">Tutorialspoint!</a>

Aqui href é o nome do atributo e http://www.tutorialspoint.com/ é o valor do atributo.

Regras de sintaxe para atributos XML

  • Os nomes de atributos em XML (ao contrário de HTML) diferenciam maiúsculas de minúsculas. Ou seja, HREF e href são considerados dois atributos XML diferentes.

  • O mesmo atributo não pode ter dois valores em uma sintaxe. O exemplo a seguir mostra a sintaxe incorreta porque o atributo b é especificado duas vezes

    -
<a b = "x" c = "y" b = "z">....</a>
  • Os nomes dos atributos são definidos sem aspas, enquanto os valores dos atributos devem sempre aparecer entre aspas. O exemplo a seguir demonstra a sintaxe xml incorreta

    -
<a b = x>....</a>

Na sintaxe acima, o valor do atributo não é definido entre aspas.

Referências XML

As referências geralmente permitem que você adicione ou inclua texto ou marcação adicional em um documento XML. As referências sempre começam com o símbolo"&" que é um caractere reservado e termina com o símbolo ";". XML tem dois tipos de referências -

  • Entity References- Uma referência de entidade contém um nome entre os delimitadores inicial e final. Por exemplo&amp;onde amp é o nome . O nome se refere a uma string predefinida de texto e / ou marcação.

  • Character References - Contêm referências, como &#65;, contém uma marca de hash (“#”) seguida por um número. O número sempre se refere ao código Unicode de um caractere. Neste caso, 65 refere-se ao alfabeto "A".

Texto XML

Os nomes dos elementos XML e atributos XML fazem distinção entre maiúsculas e minúsculas, o que significa que o nome dos elementos de início e fim precisam ser escritos no mesmo caso. Para evitar problemas de codificação de caracteres, todos os arquivos XML devem ser salvos como arquivos Unicode UTF-8 ou UTF-16.

Caracteres de espaço em branco como espaços em branco, tabulações e quebras de linha entre elementos XML e entre os atributos XML serão ignorados.

Alguns caracteres são reservados pela própria sintaxe XML. Portanto, eles não podem ser usados ​​diretamente. Para usá-los, algumas entidades de substituição são usadas, que estão listadas abaixo -

Caráter não permitido Entidade de Substituição Descrição do personagem
< & lt; Menor que
> & gt; Maior que
E & amp; e comercial
' & apos; apóstrofo
" & quot; Aspa