¿Qué es XML?

Documento XML
Krzysztof Zmij / Getty Images

XML son la siglas en inglés de eXtensible Markup Language (en español, lenguaje de marcas extensible). Es un lenguaje abstracto que, al igual que HTML, está definido por lo que se llama etiquetas, que se especifican entre los símbolos < y >, de la siguiente forma:

<etiqueta>

El contenido de los documentos está definido entre estas etiquetas, mismas que tienen una representación para indicar su límite, de la siguiente forma:

 <ejemplo>Contenido</ejemplo>

En el ejemplo de arriba la etiqueta se llama ejemplo. Nótese como se usa </ejemplo> para delimitar el límite del contenido del elemento, que en este caso es el texto Contenido. Si la etiqueta ejemplo no tuviera contenido, se podría representar el inicio y fin del elemento dentro de la misma etiqueta, de la siguiente forma:

<ejemplo/>

A estas etiquetas y su contenido se les conoce como elementos. Un elemento puede consistir de varias etiquetas anidadas, formando árboles, por ejemplo:

<nombre-completo>

                  <nombre>Luis</nombre>

                  <apellido>Castro</apellido>

</nombre-completo>

Las etiquetas también pueden tener atributos, que sirven para indicar características específicas de la etiqueta, y que se representan de la siguiente forma:

<foto nombre=”mi-foto.jpg”/>

Si integramos el ejemplo de arriba a un árbol XML, se podría ver algo como esto:

<nombre-completo>

                  <nombre>Luis</nombre>

                  <apellido>Castro</apellido>

                  <foto nombre=”mi-foto.jpg”/>

</nombre-completo>

Por otro lado, es muy común ver en la primera línea de un documento XML lo que se conoce como una declaración de información del documento, básicamente se utiliza una etiqueta especial que sirve para identificar a todo lo que sigue como un documento XML, además de otras características, como se muestra en el siguiente ejemplo:

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

Una diferencia importante de XML con HTML es que este último tiene un conjunto de etiquetas predefinidas que conforman el lenguaje, por ejemplo <p>, <div> o <head>. En cambio XML le permite a los usuarios definir sus propias etiquetas para ser usadas como más les convengan, por ejemplo pudiera definirse <nombre> para delimitar un dato que representa el nombre de algo.

El objetivo de un documento escrito en XML es describir algo significativo para los autores del documento, de ahí que la flexibilidad de definir etiquetas según convenga es una gran ventaja.

Otra diferencia con respecto a otros lenguajes similares, es que XML soporta acceso a bases de datos, facilitando el intercambio de información entre varios componentes de una aplicación, de un sistema de cómputo. XML es un lenguaje que es usado para intercambio de información no sólo para aplicaciones de Internet, sino también para otras aplicaciones que requieran intercambiar o integrar información.

Ventajas de usar XML

Entre las ventajas que presenta el uso de XML se pueden mencionar:

  • Es extensible, esto es: se pueden añadir etiquetas para dar un formato a un documento según sea necesario.
  • Los archivos escritos en XML son textos planos, lo que facilita su transmisión y uso por diferentes plataformas. Prácticamente cualquier carácter Unicode (enlace en inglés) puede aparecer en documentos XML.
  • La información que se representa en documentos XML es más rica y fácil de usar e interpretar. Haciendo una generalización simplista: si se puede representar en un árbol, se puede representar en XML.

Puedes encontrar la especificación de XML 1.1 en la página oficial de XML de WC3.

¿Dónde se usa XML?

XML se usa por diversas herramientas que utilizas diariamente, por ejemplo Microsoft Office guarda los documentos que creas en XML, lo mismo ocurre para documentos de Open Office y iWork de Apple. También se usa ampliamente por sistemas que intercambian información mediante Internet.

Como dato curioso, si te interesa ver un documento XML creado por alguna aplicación de Office, por ejemplo Word, puedes hacer lo siguiente:

  1. Localiza el documento Word (extensión de archivo DOCX) y saca una copia (muy importante, por si acaso).
  1. Renombra la copia que hiciste de tu documento a que en lugar de tener extensión DOCX tenga extensión ZIP (en realidad un DOCX es un ZIP de archivos XML).
  2. Abre el ZIP y explora el contenido. Verás diversos archivos XML. No te recomiendo que cambies nada, a menos que tengas experiencia con XML y sepas exactamente lo que haces.