#017 · Herramienta para desarrolladores

Comparador de XML

Compara dos documentos XML después de comprobar que ambos están bien formados. Cada documento se serializa e indenta antes del diff para reducir diferencias causadas solo por estar minificado. La salida usa prefijos “-” y “+” para indicar líneas eliminadas o añadidas y resume cuántas líneas cambiaron. Está pensado para inspecciones rápidas, no para equivalencia semántica XML.

Datos de entrada

Comparación por líneas
Espacio publicitario

Cómo usar esta herramienta para desarrolladores

  1. Pega el primer XML, luego ---XML2--- y después el segundo XML.
  2. Elige si ignorar líneas vacías.
  3. Ejecuta la comparación.
  4. Lee “-” como eliminado y “+” como añadido.

Qué hace esta herramienta para desarrolladores

Valida ambos documentos, los formatea y realiza un diff secuencial por línea. La normalización visual evita que un documento minificado parezca completamente distinto por formato.

Separar entradas → validar XML A/B → pretty print → diff línea por línea.

Dos XML pueden ser semánticamente equivalentes aunque difieran en orden de atributos, namespaces o espacios significativos; este comparador no realiza canonicalización.

Ejemplo

<root> - <value>1</value> + <value>2</value> </root>

Casos de uso

  • Revisar cambios en respuestas XML.
  • Comparar fixtures antes y después de una modificación.
  • Detectar elementos añadidos o eliminados rápidamente.

Consejos para obtener resultados fiables

  • Usa un comparador semántico si el orden de atributos no importa.
  • Valida ambos XML antes de interpretar el diff.
  • No uses este resultado como canonicalización para firmas.
  • Para cambios grandes, combina el diff con una revisión estructural.

Detalles del procesamiento

El separador ---XML2--- divide el textarea en dos documentos. Después se valida y serializa cada DOM para compararlos con formato consistente.

El algoritmo es lineal por posición de línea y no intenta alinear bloques movidos. Tampoco resuelve equivalencia semántica de namespaces o atributos.

Preguntas frecuentes

¿Cómo introduzco los dos XML que quiero comparar?

Coloca el primer XML, una línea con ---XML2--- y el segundo XML en el mismo cuadro de entrada.

¿El comparador ignora diferencias de minificación?

En gran medida sí, porque ambos documentos se validan y se formatean antes del diff.

¿El orden de atributos XML puede aparecer como diferencia?

Sí. La herramienta no aplica canonicalización C14N, por lo que cambios de serialización pueden seguir siendo visibles.

¿Qué significan los prefijos - y + en el resultado?

- indica una línea del primer XML que cambió o desapareció; + indica la línea correspondiente del segundo XML.

¿Sirve para comprobar equivalencia semántica de XML?

No. Es un diff textual normalizado para inspección rápida, no un motor de equivalencia XML.

Módulos de Comparador de XML

MóduloFunción
Validador dualExige que ambos documentos estén bien formados.
Normalizador visualFormatea ambos XML antes de comparar.
Diff linealMarca líneas añadidas y eliminadas.