Ir al contenido
UtiliaTools

¿Qué es XML? Guía completa del lenguaje de marcado extensible

XML (Extensible Markup Language) es un lenguaje de marcado versátil diseñado para almacenar y transportar datos en un formato legible por humanos y procesable por máquinas. Sigue siendo una piedra angular del software empresarial, los archivos de configuración y el intercambio de datos.

El propósito de XML

XML fue desarrollado por el W3C a finales de los años 90 para satisfacer una necesidad fundamental: una forma estándar de describir datos estructurados que funcione entre plataformas, lenguajes y organizaciones. A diferencia de HTML, que define cómo debe verse el contenido, XML define lo que los datos significan a través de etiquetas personalizadas.

Estructura y sintaxis de XML

Un documento XML es un árbol de elementos, cada uno definido por un par de etiquetas:

<?xml version="1.0" encoding="UTF-8"?>
<libreria>
  <libro categoria="ficcion">
    <titulo lang="es">Don Quijote de la Mancha</titulo>
    <autor>Miguel de Cervantes</autor>
    <anio>1605</anio>
    <precio>14.99</precio>
  </libro>
  <libro categoria="programacion">
    <titulo lang="es">Clean Code</titulo>
    <autor>Robert C. Martin</autor>
    <anio>2008</anio>
    <precio>35.50</precio>
  </libro>
</libreria>

Los elementos estructurales clave incluyen:

  • El prólogo: Una declaración opcional al inicio que especifica la versión XML y la codificación de caracteres.
  • Elementos: Definidos por etiquetas de apertura y cierre (<titulo>...</titulo>).
  • Atributos: Pares nombre-valor dentro de las etiquetas de apertura (categoria="ficcion").
  • Anidamiento: Los elementos pueden contener otros elementos, formando un árbol jerárquico.
  • Etiquetas de cierre automático: Los elementos vacíos usan la sintaxis <br />.

Reglas del XML bien formado

XML es estricto — un solo error invalida todo el documento:

  1. Toda etiqueta de apertura debe tener una etiqueta de cierre: <p> debe cerrarse con </p>.
  2. Las etiquetas deben estar correctamente anidadas: <b><i>texto</i></b> es válido; <b><i>texto</b></i> no lo es.
  3. Debe haber exactamente un elemento raíz: Todos los demás elementos deben ser descendientes de esta raíz única.
  4. Los valores de atributos deben estar entre comillas: Se permiten comillas simples y dobles.
  5. XML distingue entre mayúsculas y minúsculas: <Titulo> y <titulo> son elementos diferentes.
  6. Los caracteres especiales deben escaparse: Usa &amp; para &, &lt; para <, &gt; para >.

XML vs HTML: diferencias clave

Característica XML HTML
Propósito Almacenar/transportar datos Mostrar contenido
Etiquetas Personalizadas, definidas por el usuario Predefinidas por la especificación
Manejo de errores Estricto — cualquier error detiene el análisis Tolerante — los navegadores corrigen errores
Etiquetas de cierre Obligatorias para todos los elementos Opcionales para algunos elementos
Mayúsculas/minúsculas Distingue No distingue

Casos de uso comunes

  • Archivos de configuración: Maven (pom.xml), Spring, manifiestos de Android y MSBuild dependen de XML.
  • Servicios web: Las APIs SOAP usan sobres XML para el intercambio estructurado de mensajes.
  • Formatos de documentos: Office Open XML (.docx, .xlsx) y SVG están basados en XML.
  • Intercambio de datos: Industrias como finanzas (FpML) y salud (HL7) usan esquemas XML.
  • Sitemaps: Los motores de búsqueda leen sitemap.xml para descubrir páginas para indexación.

Preguntas frecuentes

¿XML sigue siendo relevante en 2026?

Sí. Aunque JSON ha superado a XML para APIs web, XML sigue siendo esencial para sistemas empresariales, servicios SOAP, formatos de documentos como .docx y .xlsx, archivos de configuración y estándares de datos sectoriales.

¿Puede XML reemplazar a HTML?

No. XML y HTML sirven propósitos diferentes. HTML está diseñado para mostrar contenido en navegadores, mientras que XML está diseñado para almacenar y transportar datos estructurados. XHTML intentó fusionarlos pero fue mayormente abandonado.

¿Cuál es la diferencia entre XML y JSON?

XML es más verboso con su sintaxis basada en etiquetas, pero soporta namespaces, esquemas (XSD) y transformaciones (XSLT). JSON es más compacto y se mapea directamente a objetos de lenguajes de programación, siendo preferido para APIs web.

Guías relacionadas

Probar la herramienta

Usa nuestra herramienta gratuita para empezar al instante.

Formateador XML →

Última actualización el 2026-09-27