Jak porównać dwa pliki XML
- Wklej lub upuść oryginalny XML po lewej stronie, a zmieniony XML po prawej. Wynik aktualizuje się na bieżąco podczas pisania.
- Wybierz, co ignorować: białe znaki w tekście, komentarze lub kolejność atrybutów. Opcja Ukryj niezmienione wiersze skraca długie dokumenty.
- Przeczytaj podsumowanie dodanych, usuniętych i zmienionych wierszy, a następnie przejrzyj widok obok siebie. Zamień strony odwraca kierunek porównania.
Co ignoruje porównanie XML
| Różnica | Ignorowana |
|---|---|
| Wcięcia i podziały wierszy między elementami | Zawsze |
| Pojedyncze lub podwójne cudzysłowy wokół wartości atrybutów | Zawsze |
<a/> lub <a></a> | Zawsze |
| Dodatkowe spacje i podziały wierszy w tekście | Z opcją Ignoruj białe znaki w tekście (domyślnie włączoną) |
| Komentarze | Z opcją Ignoruj komentarze |
| Kolejność atrybutów | Z opcją Ignoruj kolejność atrybutów (domyślnie włączoną) |
| Kolejność elementów | Nigdy – przeniesiony element jest pokazywany jako usunięty i dodany |
Prefiksy przestrzeni nazw, & lub &, CDATA lub tekst z encjami | Nigdy – są porównywane tak, jak zostały zapisane |
Jak działa porównanie
Oba dokumenty są parsowane, normalizowane zgodnie z wybranymi opcjami i zapisywane z tym samym wcięciem dwóch spacji. Otrzymane wiersze są porównywane algorytmem Myersa – tą samą metodą, której domyślnie używa git diff. Zastąpione wiersze są łączone w pary jako wiersze zmienione, a długie ciągi niezmienionych wierszy można zwinąć. Ponieważ wynik odnosi się do tych sformatowanych wersji, numery wierszy mogą się różnić od Twoich oryginalnych plików.
Najczęściej zadawane pytania
Czy kolejność elementów ma znaczenie?
Tak. Elementy w XML są uporządkowane, więc przeniesiony element pojawia się jako usunięty w jednym miejscu i dodany w innym. Ignorować można tylko kolejność atrybutów, ponieważ w XML nie ma ona znaczenia.
Dlaczego dwa pliki się różnią, choć wyglądają tak samo?
Sprawdź opcje: komentarze, kolejność atrybutów i białe znaki w tekście są liczone jako różnice, gdy odpowiednia opcja jest wyłączona. Prefiksy przestrzeni nazw i zapis encji, np. & i &, są również porównywane dokładnie tak, jak zostały zapisane.
Czy mogę porównać XML, który nie jest poprawny składniowo?
Nie. Oba dokumenty muszą najpierw zostać sparsowane. Jeśli jeden z nich zawiera błąd, jest on pokazywany pod daną stroną wraz z wierszem i kolumną – popraw go tam lub w walidatorze XML.
Czy moje dane są przesyłane na serwer?
Nie. Porównanie odbywa się w Twojej przeglądarce i nic nie jest wysyłane na serwer.