XML
XML
Lenguaje de marcado extensible que expresa la estructura mediante etiquetas
Introducción
XML (eXtensible Markup Language) es un lenguaje de marcado que expresa estructuras jerárquicas encerrando los datos entre una etiqueta de apertura y una de cierre. Como permite añadir atributos a los elementos y validar la estructura de forma estricta mediante esquemas, se ha usado durante mucho tiempo en documentos y sistemas empresariales.
Es verboso pero muy expresivo, y cuenta con un ecosistema rico que incluye espacios de nombres, esquemas (XSD) y transformaciones (XSLT).
Características de sintaxis
- Todos los elementos se componen de un par formado por una etiqueta de apertura y una de cierre.
- Se pueden añadir atributos (attribute) a los elementos.
- Caracteres como &, < y > se escapan con entidades.
- Debe haber un único elemento raíz que envuelva todo el contenido.
Ventajas
- Se puede validar de forma estricta con esquemas
- Alta expresividad con atributos, espacios de nombres, etc.
- Ecosistema de documentos maduro
Desventajas
- Verboso por la repetición de etiquetas
- Su análisis es relativamente pesado
- En las API web modernas ha quedado por detrás de JSON
Usos principales
- Formatos de documento (ofimática, RSS)
- Integración empresarial y heredada (SOAP)
- Configuración e intercambio de datos
Ejemplo
<?xml version="1.0" encoding="UTF-8"?>
<rows>
<row>
<id>1</id>
<name>Ada</name>
<role>admin</role>
</row>
<row>
<id>2</id>
<name>Linus</name>
<role>editor</role>
</row>
</rows>