onlinetools.dev

Formater i walidator XML

Formatuj, minifikuj i waliduj XML z dokładnym wskazaniem miejsca błędu

Działa lokalnie
loading…
O tym narzędziu

To narzędzie formatuje XML z wybranym przez Ciebie wcięciem, zgłasza błędy poprawności składniowej wraz z dokładnym wierszem i kolumną oraz potrafi zminifikować dokument do jednej linii. Komentarze, sekcje CDATA i prolog XML przeżywają formatowanie — zaskakująco wiele formaterów zjada je po cichu.

Walidacja oznacza tu poprawność składniową: właściwie zagnieżdżone znaczniki, wartości atrybutów w cudzysłowach, dozwolone znaki. To wyłapuje przytłaczającą większość wypadków przy ręcznej edycji — brakujący ukośnik, niedomknięty element, zabłąkany ampersand. Walidacja względem schematu XSD jest celowo poza zakresem; jej miejsce jest w Twoim potoku budowania, gdzie plik schematu jest dostępny.

Pliki konfiguracyjne, ładunki SOAP, kanały RSS i manifesty Androida rutynowo zawierają wewnętrzne nazwy hostów i klucze. Wszystko tutaj parsuje się lokalnie — nic nie jest przesyłane.

Często zadawane pytania

Dlaczego mój XML wywala się z „char … is not expected”?
Zwykle winne są: surowy znak &, który powinien być &, wartość atrybutu bez cudzysłowów albo znaczniki zamykane w złej kolejności. Komunikat błędu niesie wiersz i kolumnę pierwszego problematycznego znaku, a pole wejściowe je zaznacza.
Czy formater przestawia albo normalizuje mój dokument?
Nie. Elementy, atrybuty i ich kolejność zostają zachowane co do joty; zmienia się wyłącznie odstęp między elementami. Treść tekstowa dzieląca wiersz ze znacznikami jest przycinana, a wewnętrzne ciągi białych znaków zwijane — jeśli polegasz na znaczących odstępach (xml:space="preserve"), trzymaj takie fragmenty w formie zminifikowanej.
Co usuwa minifikacja?
Wcięcia i łamania wierszy między elementami oraz komentarze. Sekcje CDATA, instrukcje przetwarzania i prolog zostają. Wynik parsuje się identycznie dla każdego odbiorcy, który nie zależy od węzłów tekstowych złożonych wyłącznie z białych znaków.
Czy potrafi walidować względem XSD albo DTD?
Nie — sprawdzana jest wyłącznie poprawność składniowa. Walidacja schematem wymaga pliku schematu i silnika XSD, co lepiej robić w swoim łańcuchu narzędzi (xmllint --schema albo biblioteka XML Twojego języka).
Powiązane narzędzia