Analizador de XML

Formatea, valida y consulta documentos XML al instante. Potenciado por APIs nativas del navegador para máxima velocidad y privacidad.

Formatear y minificar Consultas XPath Validación

Cómo usar el analizador de XML

1

Pega tu XML

Copia y pega tu contenido XML en el campo de entrada, o haz clic en Cargar XML de ejemplo.

2

Formatea y valida

Usa Formatear para embellecer, Minificar para comprimir, o Validar para comprobar errores.

3

Consulta con XPath

Introduce una expresión XPath y haz clic en Ejecutar XPath para extraer nodos específicos.

¿Qué es XML?

XML (Lenguaje de Marcado Extensible) es un lenguaje de marcado que define un conjunto de reglas para codificar documentos en un formato que sea legible tanto por humanos como por máquinas. Se usa ampliamente para archivos de configuración, intercambio de datos (SOAP, RSS, Atom) y almacenamiento de documentos.

Características clave de XML

Autodescriptivo

XML usa etiquetas personalizadas para describir la estructura de datos, facilitando la comprensión del contenido y la jerarquía de un vistazo.

Independiente de plataforma

Como texto plano, XML funciona en todas las plataformas, lenguajes de programación y sistemas sin problemas de compatibilidad.

Extensible

Puedes definir tus propias etiquetas y estructura de documento usando DTD o XML Schema para adaptarse a cualquier modelo de datos.

Preguntas frecuentes

¿Cuál es la diferencia entre XML bien formado y XML válido?

El XML bien formado sigue las reglas básicas de sintaxis de XML (anidamiento correcto, etiquetas de cierre, elemento raíz único). El XML válido está bien formado Y además cumple con un esquema (DTD, XSD) que define la estructura y tipos de datos permitidos.

¿Esta herramienta valida contra un esquema XSD?

No, esta herramienta solo verifica la buena formación (corrección sintáctica). La validación basada en esquemas contra DTD o XSD no es compatible nativamente en el navegador.

¿Qué versión de XPath es compatible?

El método nativo document.evaluate() del navegador es compatible con XPath 1.0. Esto cubre la mayoría de las consultas comunes incluyendo ejes, predicados y funciones como contains(), text() y @attribute.

¿Qué son los espacios de nombres de XML y cómo se leen?

Un espacio de nombres asocia nombres de elementos a una URI mediante atributos xmlns; por ejemplo, un elemento atom:feed que declara xmlns:atom="http://www.w3.org/2005/Atom". El prefijo es arbitrario; solo la URI identifica el espacio de nombres, por lo que dos documentos pueden usar prefijos distintos para el mismo vocabulario. Los espacios de nombres son la razón por la que las coincidencias de XPath a menudo requieren trucos con local-name() cuando los prefijos difieren.

¿Cómo selecciona nodos XPath?

Las expresiones XPath 1.0 recorren el árbol: /rss/channel/item selecciona por ruta, //item encuentra elementos en cualquier parte del documento, item[@type='news'] filtra por un atributo, y predicados como item[1] o item[last()] eligen nodos específicos. Es el lenguaje de consulta detrás de XSLT, de muchos frameworks de pruebas y del evaluador de esta herramienta.

¿Qué es XXE y podría afectar a esta herramienta?

La inyección XXE (XML External Entity) abusa de una entidad DTD que apunta a una ruta de archivo o URL, haciendo que un analizador del lado del servidor la obtenga; históricamente ha filtrado /etc/passwd o servicios internos. Los analizadores XML de los navegadores no resuelven entidades externas, y esta herramienta se ejecuta por completo en tu navegador sin ninguna comunicación con el servidor, por lo que el XML pegado no puede desencadenar lecturas de archivos ni SSRF.

¿Cuál es la diferencia entre el análisis DOM y SAX?

DOM carga todo el documento en un árbol que puedes recorrer de forma aleatoria: intuitivo, pero con alto consumo de memoria para archivos enormes. SAX transmite eventos (etiqueta de apertura, texto, etiqueta de cierre) en una sola pasada con memoria constante: rápido, pero solo hacia adelante. El JavaScript de los navegadores expone DOMParser (estilo DOM); procesar XML en streaming con JavaScript requiere una biblioteca o Web Streams.

¿Cómo incluyo < o & dentro del contenido XML?

Escápalos como &lt; y &amp; en el texto normal: < y & no son válidos sin escape en los datos de caracteres. Para bloques de texto con mucho marcado, envuélvelo en una sección CDATA, que no requiere escape hasta llegar a la secuencia ]]> al final. Solo < y & son estrictamente obligatorios en el contenido; > debe escaparse únicamente cuando forma esa secuencia de cierre.

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}