En este tutorial vamos a aprender qué es XML, de que se trata, sintaxis básica, objetivos y usos.
Extensible Markup Language (XML) es un lenguaje de marca para documentos que contienen información estructurada. Este estándar no es más que un conjunto de reglas para definir etiquetas semánticas que nos organizan un documento en diferentes partes, osea, nos estructuran un documento.
XML fue creado por el Word Wide Web Consortium (W3C). Su desarrollo se comenzó en 1996 y la primera versión salió el 10 de febrero de 1998. Este proviene de un lenguaje que creó la IBM cerca de los años 70, llamado GML, General Markup Language.
Objetivos del diseño de XML
Los objetivos de diseño de XML son:
-XML debe ser directamente utilizable sobre Internet.
-XML debe soportar una amplia variedad de aplicaciones.
-XML debe ser compatible con SGML.
-Debe ser fácil la escritura de programas que procesen documentos XML.
-El número de características opcionales en XML debe ser absolutamente mínima, idealmente cero.
-Los documentos XML deben ser legibles por humanos y razonablemente claros.
-El diseño de XML debe ser preparado rápidamente.
-El diseño de XML debe ser formal y conciso.
-Los documentos XML deben ser fácilmente creables.
-La concisión en las marcas XML es de mínima importancia.
Estructura
Cada documento XML consta de cuatro especificaciones:
DTD (Document Type Definition): Es una lista de normas que definen con exactitud la sintaxis de las etiquetas o marcas y la estructura de un documento XML. Si cumple las normas gramaticales de la especificación XML se dice que el documento está bien formado y si además se cumplen las normas de una determinada DTD se dice que el documento XML es válido.
XSL (eXtensible Stylesheet Language): Lenguaje basado en XML que se utiliza para crear hojas de estilo. Sirve para mostrar documentos XML, es decir, darles formato de presentación. La tecnología XSL sirve para transformar documentos XML en otros XML. Éste, permite la manipulación de la información XML(XSLT XSL Transformation). También sirve para definir cómo acceder cierto punto de la estructura de un documento. (XPath) Por otro lado, tiene la capacidad de definir el formato que deben tomar los objetos dentro de un documento XML (XSLFXSL Format).
XLL (eXtensible Linking Language): Es el estándar para describir links entre objetos en documentos XML. Se considera que es un subconjunto de HyTime (Hipermedia/Timed-based structuring Language o Lenguaje de estructuración hipermedia/basado en el tiempo, ISO 10744) y sigue algunas especificaciones del TEI (Text Encoding Initiative o Iniciativa de codificación de texto).
XUA (XML User Agent): Es la estandarización de navegadores XML. Todavía está en proceso
de creación. Se aplicará a los navegadores para que compartan todas las especificaciones XML.
Sintaxis
La sintaxis de un documento XML es super simple:
Se escribe en un documento de texto ASCII, igual que el HTML y en la cabecera del documento se tiene que poner el texto:

En el resto del documento se deben escribir etiquetas como las de HTML, las etiquetas que nosotros queramos, por eso el lenguaje se llama XML, lenguaje de etiquetas extendido. Las etiquetas se escriben anidas, unas dentro de otras.

Los labels pueden tener cualquier atributo que deseemos ponerle.
Ejemplo
Aquí presento un ejemplo sencillo de un envio de mensaje para que aprecien la sintaxis de XML:

El documento comienza con la declaración XML opcional que especifica la versión de XML que se está utilizando y la codificación de caracteres que utiliza el documento. Luego las etiquetas de el mensaje, quien remite, el destinatario y el texto.
Podemos ver este mismo ejemplo en una forma gráfica:
Uso del XML
El uso principal de XML es estructurar datos, recibirlos y/o enviarlos, y nos permite guardar datos en nuestros documentos para que sean tratados luego con otro lenguaje. Algunas de sus utilidades son:
- XML para el almacenamiento de gráficos vectoriales.
- XBRL: es un derivado del XML que permite intercambiar datos estadisticos y contables de empresas y Pymes
- CML (Chemical Markup Lenguaje):Estructuras moleculares e información cientifica y quimica.
- Actualización de software
- MathML (Mathematical Markup Lenguaje)
Conclusión
XML es más que un simple un formato de texto para describir documentos. Es un mecanismo para describir datos estructurados y semiestructurados que proporciona acceso a un gran conjunto de tecnologías para procesar dichos datos. Abstracciones importantes como XML Information Set abren la puerta al procesamiento de datos no textuales como sistemas de archivos, bases de datos relacionales e incluso objetos de lenguajes de programación mediante tecnologías XML. XML nos acerca un paso más al acceso universal a los datos.
Como pudimos ver el XML es un lenguaje super sencillo y relacionado con html, es muy fácil de aprender.
Glosario
Lenguaje de marca (markup language): es un mecanismo para identificar estructuras en un documento. La especificación XML define una forma estándar para añadir marcas a documentos.
W3C: Es un consorcio internacional donde miembros organizacionales, un staff de tiempo completo, y el público se unen para trabajar juntos en el desarrollo de estándares para la WWW. World Wide Web Consortium desarrolla especificaciones, guias, software y herramientas para llevar a la Web a su máximo potencial.
Links relacionados
W3C
XML en 10 puntos
XBRL: El lenguaje digital de la Ciencia Contable
Apache XML
Estándares XML 1.0