Lenguaje XML/Sintaxis/Normas básicas

Índice de la sección
«Sintaxis»


Para crear un documento XML bien-formado, se deben de respetar algunas normas básicas de la sintaxis de este lenguaje:

Estructura jerárquica de los elementos editar

Esta es la más importante: dado que XML es para estructurar datos, todos los elementos deben de estar dentro de otro elemento definido, por ello, un elemento debe estar correctamente incluido dentro de otro de manera jerárquica. Si esto no es así, la jerarquía se rompe y el documento no estará bien-formado. Por ejemplo, esto es correcto:

<páginas><url>google.com</url><title>google</title></páginas>

No así esto:

<páginas><url>google.com<title></url>google</title></páginas>

Elemento raíz editar

En los documentos XML, debe de haber un solo elemento raíz. Esto quiere decir que solo debe haber un elemento que contenga a todos los demás. Este elemento debe llamarse según lo hayamos especificado es la declaración DTD. Por ejemplo, este código sería válido:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE SYSTEM contacto>
<contacto>
    <nombre>Alondra</nombre>
    <apellido>Jiménez Frías</apellido>
    <tel clase="casa">123 45 67</tel>
    <sexo valor="f"/>
</contacto>

Pero este no:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE SYSTEM contacto>
<contacto>
    <nombre>Alondra</nombre>
    <apellido>Jiménez Frías</apellido>
    <tel clase="casa">123 45 67</tel>
    <sexo valor="f"/>
</contacto>
<contacto>
    <nombre>Omar</nombre>
    <apellido>Altonar Gamas</apellido>
    <tel clase="casa">987 65 43</tel>
    <sexo valor="m"/>
</contacto>

Nombre de etiqueta editar

Cuando se crea un elemento en XML, este debe de llevar un nombre. Según la especificación 1.0, los nombres deben de cumplir las siguientes características:

  • Los nombres deben empiezan una letra o uno o más signos de puntuación.
  • Pueden contener —pero no necesariamente empezar con ello— letras, números, guiones, rayas, dos puntos o puntos.
  • Los nombres que empiezan con la cadena "xml", en ninguna de sus variantes mayúsculas y minúsculas, no se pueden utilizar para nombrar un elemento, ya que estos se reservan para la estandarización de esta o de futuras versiones de XML.
  • Los demás caracteres, como espacios en blanco, no se pueden usar.

Por ejemplo, estos nombres son válidos:

<elemento>
<etiqueta1>
<mi-etiqueta>

Pero no estos:

<etiqueta nueva>
<2periodo>

Comillas en los atributos editar

Todos los valores de los atributos deben de estar encerrados entre comillas simples () o dobles (""). En otros lenguajes de marcado, como HTML, se tolera el no encerrar un atributo entre comillas, en XML no. Por ejemplo, esto es válido:

<sexo valor="m"/>

Pero no esto:

<sexo valor=m/>

Espacios en blanco editar

XML permite utilizar un grupo de caracteres conocidos como «espacios en blanco» para separar los elementos, y permitir una mejor legibilidad del código. En general son ignorados, aunque no dentro de un elemento de texto o mixto. Estos caracteres son los siguientes:

Caracter Código Unicode
Espacios U+032
Tabuladores U+009
Retornos de carro U+013
Saltos de línea U+010
← Sintaxis/Toma de contacto Normas básicas Sintaxis/Espacios de nombre →
Lenguaje XML