{ }JSONKit.tools

Comparar XML — diferenças entre dois arquivos

Compare dois documentos XML pela estrutura. A ordem dos atributos e o recuo deixam de contar como diferença, e elementos repetidos são casados por conteúdo, não por posição.

XML da esquerda

XML da direita

Diferenças

–

Sobre esta ferramenta

Documentos XML carregam muito ruído que um diff de texto não consegue distinguir de significado: recuo, ordem dos atributos, quebras de linha dentro de uma tag. Esta página interpreta os dois lados — atributos viram chaves com prefixo @, elementos repetidos viram arrays — e compara as estruturas. O que volta é a diferença nos dados: um valor que mudou, um elemento que apareceu, um atributo que sumiu.

Como usar

  1. 1Cole os dois documentos XML nos painéis esquerdo e direito.
  2. 2Leia o resultado como Lado a lado, Árvore ou Lista, e use as setas para percorrer as mudanças.
  3. 3Ative Só mudanças para recolher as partes intactas.

Perguntas frequentes

›Como os atributos são comparados?

Como dados, no elemento que os carrega — no resultado eles aparecem como chaves com prefixo @. Reordenar os atributos de um elemento não gera diferença, porque a ordem dos atributos não significa nada em XML.

›O espaço em branco entre elementos importa?

Não. Recuo e quebras de linha entre elementos são descartados na interpretação, então reformatar um documento dá um diff vazio. O espaço dentro de um valor de texto é preservado e conta.

›O que acontece com elementos repetidos?

Dois ou mais elementos irmãos com o mesmo nome viram um array, e arrays são casados por conteúdo — então remover uma entrada de uma lista longa é relatado como uma única remoção, e não como se tudo depois dela tivesse se deslocado.

›Comentários e instruções de processamento são comparados?

Não. Nenhum dos dois sobrevive à interpretação, então mudar um comentário não mostra nada aqui. O mesmo vale para a declaração XML.

›E se um dos lados não estiver bem formado?

A comparação para e a barra de status informa o lado e a linha, com um link que foca aquele painel. Nada é comparado pela metade.