Skip to content

Formatowanie XML

Upiększaj, minimalizuj i waliduj XML w przeglądarce — nic nie jest przesyłane. Porządkuje wcięcia, raportuje błędy poprawności strukturalnej z numerem wiersza i kolumny. Bezpłatne, prywatne, bez rejestracji.

Bez śledzenia Działa w przeglądarce Bezpłatne
Wcięcie
Wynik XML
Zweryfikowano pod kątem zgodności z XML 1.0, bezstratnego formatowania i dokładnego raportowania błędów — Go Tools Engineering Team · May 29, 2026

Czym jest formatowanie XML i po co go używać?

XML (Extensible Markup Language) to tekstowy format danych strukturalnych, używany wszędzie — od usług webowych i plików konfiguracyjnych po kanały RSS, API SOAP, dokumenty biurowe (DOCX, XLSX), grafikę SVG i pliki układów Androida. W odróżnieniu od JSON, XML obsługuje komentarze, przestrzenie nazw, mieszaną zawartość (tekst i elementy przeplatane) oraz deklaracje typów dokumentów — co czyni go formatem z wyboru dla integracji korporacyjnych, wymiany dokumentów i wszędzie tam, gdzie dane strukturalne muszą współistnieć z czytelnym dla człowieka znacznikiem.

XML spotykany w praktyce jest często źle wcięty lub całkowicie zminimalizowany — odpowiedzi API przychodzą w jednej linii, pliki konfiguracyjne gromadzą niespójne wcięcia, a XML generowany przez serializatory nie ma żadnych białych znaków. Narzędzie do formatowania XML pobiera takie nieuporządkowane dane wejściowe i re-indentuje je w czystą, hierarchiczną strukturę, gdzie każdy poziom zagnieżdżenia jest wizualnie czytelny. Jest to niezbędne podczas przeglądów kodu, debugowania, dokumentacji i rozumienia nieznanych schematów XML.

**Co to narzędzie robi inaczej niż zwykły edytor tekstu:**

**1. Walidacja poprawności strukturalnej z dokładną lokalizacją błędu.** Narzędzie używa DOMParser przeglądarki (tego samego silnika, który parsuje HTML i SVG) do analizy XML. Jeśli dokument nie jest poprawny strukturalnie — niezgodne znaczniki, niezamknięte elementy, nieescapowane znaki lub wiele elementów głównych — parser raportuje dokładny numer wiersza i kolumny, w którym się nie powiódł. Jest to znacznie szybsze niż czytanie surowego XML w poszukiwaniu przypadkowo niezamkniętego znacznika.

**2. Bezstratne formatowanie.** Narzędzie zachowuje komentarze, instrukcje przetwarzania, sekcje CDATA, deklaracje przestrzeni nazw, kolejność atrybutów i całą treść tekstową dokładnie. Modyfikuje wyłącznie białe znaki między znacznikami elementów. Można bezpiecznie formatować dowolny ważny XML — nic istotnego się nie zmieni.

**3. Minimalizacja do zastosowań produkcyjnych.** Minimalizator usuwa wszystkie nieistotne białe znaki między elementami, tworząc najmniejszą poprawną reprezentację XML. Jest to właściwy krok wstępnego przetwarzania przed zapisaniem XML w kolumnie bazy danych, wstawieniem go jako ciągu do JSON lub przesłaniem przez kanał liczony w bajtach.

**4. 100% prywatność oparta na przeglądarce.** XML z ochrony zdrowia (HL7, FHIR), dane finansowe, ładunki SOAP z danymi uwierzytelniającymi i wewnętrzne pliki konfiguracyjne to powszechne ładunki XML zawierające wrażliwe dane. Narzędzie nigdy niczego nie przesyła — całe przetwarzanie odbywa się w silniku JavaScript przeglądarki. Jeśli potrzebujesz konwertować zamiast formatować, skorzystaj z narzędzi towarzyszących: Konwerter XML na JSON do konwersji XML na JSON oraz Konwerter JSON na XML do konwersji w odwrotnym kierunku.

<!-- Minified XML input -->
<?xml version="1.0" encoding="UTF-8"?><catalog><product id="p01"><name>Wireless Headphones</name><price currency="USD">79.99</price></product></catalog>

<!-- After formatting with 2-space indent -->
<?xml version="1.0" encoding="UTF-8"?>
<catalog>
  <product id="p01">
    <name>Wireless Headphones</name>
    <price currency="USD">79.99</price>
  </product>
</catalog>

Kluczowe funkcje

Upiększanie z wcięciem 2 lub 4 spacji

Porządkuje wcięcia XML w czystą, czytelną hierarchię. Przed formatowaniem wybierz wcięcie 2-spacjowe (najczęstsze dla usług webowych, RSS i plików konfiguracyjnych) lub 4-spacjowe (popularne w korporacyjnych schematach XML).

Minimalizacja — usuwanie nieistotnych białych znaków

Usuwa wszystkie białe znaki między znacznikami elementów bez dotykania treści tekstowej, produkując jak najmniejszy poprawny XML. Idealne do przechowywania, przesyłania lub osadzania jako ciąg w JSON lub innych formatach.

Walidacja poprawności strukturalnej z błędami wiersz/kolumna

Używa wbudowanego w przeglądarkę DOMParser do walidacji struktury XML. Raportuje dokładny numer wiersza i kolumny pierwszego błędu poprawności strukturalnej — niezgodne znaczniki, niezamknięte elementy, nieescapowane znaki — dla szybkiego debugowania.

Bezstratność: zachowanie komentarzy, przestrzeni nazw i atrybutów

Komentarze, instrukcje przetwarzania, sekcje CDATA, deklaracje przestrzeni nazw i kolejność atrybutów są zachowane dokładnie. Modyfikowane są wyłącznie nieistotne białe znaki między znacznikami — zawartość nigdy nie ulega zmianie.

100% w przeglądarce — bez przesyłania, bez serwera

Całe przetwarzanie odbywa się lokalnie w przeglądarce. Ładunki XML zawierające dane uwierzytelniające, dane medyczne, dokumenty finansowe lub wewnętrzne konfiguracje nigdy nie są przesyłane na żaden serwer ani rejestrowane.

Obsługa SOAP, RSS, SVG, XHTML i XML Androida

Obsługuje dowolne poprawne strukturalnie zastosowanie XML: koperty SOAP z nagłówkami WS-Security, kanały RSS/Atom, pliki SVG, dokumenty XHTML, pliki układów Androida, pliki Maven POM i pliki kompilacji Maven/Ant.

Przykłady

Zminimalizowany XML

<?xml version="1.0" encoding="UTF-8"?><catalog><product id="p01" category="electronics"><name>Wireless Headphones</name><price currency="USD">79.99</price><stock>142</stock><tags><tag>audio</tag><tag>bluetooth</tag></tags></product><product id="p02" category="books"><name>Learning XML</name><price currency="USD">29.99</price><stock>55</stock></product></catalog>

Skompaktowany, jednolinijkowy katalog produktów XML. Kliknij Formatuj, aby rozwinąć go w czytelne drzewo z wcięciem 2 spacji. Hierarchia elementów, atrybuty i treść tekstowa są zachowane w całości — formatowanie jest czysto kosmetyczne.

Fragment kanału RSS

<rss version="2.0"><channel><title>Go Tools Blog</title><link>https://go-tools.org/blog</link><description>Developer tools, tips and tutorials</description><item><title>Understanding XML Namespaces</title><link>https://go-tools.org/blog/xml-namespaces-guide</link><pubDate>Thu, 29 May 2026 00:00:00 GMT</pubDate><description>A deep dive into XML namespace declarations, prefixes, and scope rules with practical examples.</description></item><item><title>XML vs JSON: When to Use Each</title><link>https://go-tools.org/blog/xml-vs-json</link><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate></item></channel></rss>

Dwuelementowy kanał RSS 2.0 skompresowany do jednej linii. Po sformatowaniu metadane kanału i każdy element item są wyraźnie wcięte, co ułatwia inspekcję struktury kanału, dodawanie nowych wpisów lub porównywanie z wymaganiami walidatora.

Koperta SOAP

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soap:Header><wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><wsse:UsernameToken><wsse:Username>api-client</wsse:Username><wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-ext-1.0.xsd#PasswordText">s3cr3t</wsse:Password></wsse:UsernameToken></wsse:Security></soap:Header><soap:Body><GetOrderRequest xmlns="http://example.com/orders"><OrderId>ORD-20260529-001</OrderId><IncludeLineItems>true</IncludeLineItems></GetOrderRequest></soap:Body></soap:Envelope>

Koperta SOAP 1.1 z nagłówkiem WS-Security i treścią GetOrder, korzystająca z trzech prefiksów przestrzeni nazw (soap:, wsse: i domyślnego). Formatowanie natychmiast klaruje separację nagłówka i treści oraz deklaracje przestrzeni nazw — niezbędne przy debugowaniu integracji SOAP i analizowaniu ładunków generowanych przez WSDL.

Jak używać

  1. 1

    Wklej dane XML

    Wprowadź lub wklej XML do pola wejściowego powyżej. Możesz też kliknąć «Wczytaj przykład», aby wypróbować próbkę (zminimalizowany katalog produktów XML, który ładnie się formatuje).

  2. 2

    Wybierz akcję

    Kliknij Formatuj, aby upiększyć z wcięciami, Minimalizuj, aby usunąć białe znaki, lub Waliduj, aby sprawdzić poprawność strukturalną. Przed formatowaniem wybierz wcięcie 2 lub 4 spacje.

  3. 3

    Skopiuj wynik

    Przetworzony XML pojawia się w panelu wyjściowym. Kliknij Kopiuj, aby przenieść go do schowka. Jeśli Walidacja wykryła błędy, baner błędu pokazuje dokładny numer wiersza i kolumny.

Typowe błędy XML

Niezgodne znaczniki

Nazwy znaczników XML rozróżniają wielkość liter i muszą być dopasowane dokładnie. i to różne znaczniki — XML widzi to jako niezamknięty element i zbłąkany . Jest to najczęstsza przyczyna błędów poprawności strukturalnej przy ręcznej edycji XML.

✗ Niepoprawne
<products>
  <Item>
    <name>Widget</name>
  </item>
</products>
✓ Poprawne
<products>
  <item>
    <name>Widget</name>
  </item>
</products>

Nieescapowany znak ampersand lub mniejszości

Znaki & i < są zarezerwowane w XML i muszą być escapowane poza sekcjami CDATA. Nagi & powoduje błąd parsera nawet w wartościach atrybutów. Użyj & dla & i < dla <. Znak większości > powinien być escapowany jako > w treści tekstowej, choć parsery są bardziej tolerancyjne w tym względzie.

✗ Niepoprawne
<query>price > 10 & stock > 0</query>
✓ Poprawne
<query>price &gt; 10 &amp; stock &gt; 0</query>

Atrybuty bez cudzysłowów lub z błędnymi cudzysłowami

Wszystkie wartości atrybutów XML muszą być ujęte w pojedyncze lub podwójne cudzysłowy. Wartości atrybutów bez cudzysłowów są prawidłowe w HTML5, ale są błędem poprawności strukturalnej w XML. Wartość zawierająca podwójny cudzysłów musi używać pojedynczych cudzysłowów jako ograniczników (lub escapować cudzysłów jako ").

✗ Niepoprawne
<product id=p01 label="It's a "widget"">
✓ Poprawne
<product id="p01" label="It's a &quot;widget&quot;">

Wiele elementów głównych

Dokument XML musi mieć dokładnie jeden element główny zawierający wszystkie inne elementy. Częstym błędem przy łączeniu fragmentów XML jest uzyskiwanie dwóch lub więcej elementów najwyższego poziomu obok siebie, co jest nieprawidłowym XML (choć powszechne w HTML). Owiń wszystkie elementy siostrzane w jeden kontener główny.

✗ Niepoprawne
<user><name>Alice</name></user>
<user><name>Bob</name></user>
✓ Poprawne
<users>
  <user><name>Alice</name></user>
  <user><name>Bob</name></user>
</users>

Niezgodność kodowania w deklaracji XML

Jeśli plik XML jest zapisany w UTF-16 lub innym kodowaniu innym niż UTF-8, ale deklaracja mówi encoding="UTF-8" (lub jest nieobecna, co domyślnie oznacza UTF-8), niektóre parsery odrzucą go lub wyprodukują śmieci. Przy wklejaniu do narzędzia przeglądarkowego przeglądarka obsługuje kodowanie automatycznie. W przypadku plików na dysku upewnij się, że atrybut kodowania odpowiada rzeczywistemu kodowaniu pliku.

✗ Niepoprawne
<?xml version="1.0" encoding="UTF-8"?>
<!-- File is actually saved as UTF-16 -->
✓ Poprawne
<?xml version="1.0" encoding="UTF-16"?>
<!-- File saved as UTF-16, declaration matches -->

Nieprawidłowo zamknięta sekcja CDATA

Sekcja CDATA zaczyna się od . Jeśli sekwencja zamykająca ]]> jest nieobecna lub błędnie wpisana, parser traktuje wszystko co następuje jako część sekcji CDATA, aż znajdzie kolejne ]]> lub dotrze do końca dokumentu. Objawia się to zazwyczaj błędami «nieoczekiwany koniec dokumentu».

✗ Niepoprawne
<script><![CDATA[
  if (a < b && b > c) { return true; }
<!-- ]]> is missing -->
✓ Poprawne
<script><![CDATA[
  if (a < b && b > c) { return true; }
]]></script>

Typowe zastosowania

Debugowanie ładunków SOAP i usług webowych
Odpowiedzi SOAP z korporacyjnych API i starszych usług webowych przychodzą jako jednolinijkowe ciągi XML. Wklej surowy ładunek do formatowania, aby natychmiast zobaczyć strukturę koperty, nagłówki i treść — co ułatwia znalezienie szukanego pola lub wykrycie niezgodności przestrzeni nazw. Patrz też: Konwerter XML na JSON, jeśli potrzebujesz dalej przetwarzać ładunek w JavaScript.
Walidacja plików konfiguracyjnych i deskryptorów wdrożeń
Pliki Maven POM, konteksty aplikacji Spring XML, server.xml Tomcat, pliki Android Manifest i wiele innych plików konfiguracyjnych Java/enterprise to XML. Uruchom je przez Waliduj przed zatwierdzeniem, aby wykryć niezgodne znaczniki lub problemy z kodowaniem, które w innym przypadku ujawniłyby się dopiero podczas kompilacji lub wdrożenia.
Formatowanie wyjścia kanałów RSS i Atom
Kanały RSS 2.0 i Atom 1.0 to XML. Przy tworzeniu generatora kanałów lub debugowaniu problemów ze zgodnością czytnika kanałów, sformatuj surowy XML kanału, aby inspekcjonować metadane kanału, strukturę elementów i wymagane deklaracje przestrzeni nazw obok siebie.
Czytanie i edycja plików SVG
Pliki SVG wyeksportowane z Figmy, Illustratora lub Sketcha są prawidłowym XML, ale często są zminimalizowane lub zawierają nadmierne wcięcia z eksportera. Sformatuj SVG, aby uzyskać czystą, nawigowaną hierarchię elementów przed ręcznymi edycjami ścieżek, grup lub atrybutów stylizacji.
Przygotowanie XML do przechowywania lub przesyłania
Przy przechowywaniu XML w kolumnie bazy danych, wysyłaniu go jako pole ciągu JSON w żądaniu API lub wstawianiu do kolejki komunikatów, użyj najpierw Minimalizuj, aby usunąć zbędne białe znaki. Zmniejsza to rozmiar ładunku i unika problemów z parserami JSON, które mogą się krzaczyć na nieescapowanych znakach kontrolnych w dużych wcięciowych ciągach XML.
Konwersja XML na JSON
Jeśli chcesz przekonwertować sformatowany XML na JSON do użycia w aplikacji JavaScript lub REST API, skorzystaj z naszego Konwertera XML na JSON. Do odwrotnego kierunku — budowania XML ze struktury JSON — użyj Konwertera JSON na XML.

Szczegóły techniczne

DOMParser przeglądarki do parsowania XML
Parsowanie XML używa natywnego DOMParser przeglądarki z typem MIME «text/xml». Jest to ten sam silnik, który obsługuje renderowanie SVG i XHTML w przeglądarce — jest w pełni zgodny z XML 1.0 i raportuje błędy poprawności strukturalnej z informacją o numerze wiersza i kolumny. Gdy dokument nie jest poprawny strukturalnie, DOMParser zwraca dokument parsererror zawierający komunikat błędu i pozycję, które narzędzie wyodrębnia i wyświetla.
Serializacja drzewa DOM do formatowania
Formatowanie działa przez parsowanie XML do drzewa DOM, a następnie rekurencyjne przechodzenie po drzewie w celu produkowania wciętego wyjścia. To podejście zachowuje semantyczną strukturę dokumentu: zagnieżdżenie elementów, treść tekstową, atrybuty, sekcje CDATA, instrukcje przetwarzania i komentarze są wszystkie serializowane dokładnie tak jak zostały sparsowane. Odrzucane są wyłącznie węzły tekstowe zawierające tylko białe znaki między elementami — węzły tekstowe zawierające znaki inne niż białe są zawsze zachowywane.
Minimalizacja przez usuwanie węzłów tekstowych zawierających tylko białe znaki
Minimalizacja przechodzi przez to samo drzewo DOM i usuwa węzły tekstowe, których zawartość składa się wyłącznie z białych znaków (spacje, tabulatory, znaki nowej linii). Węzły tekstowe z mieszaną lub niebiałą zawartością — faktyczne dane między znacznikami — nigdy nie są usuwane. Atrybuty i ich wartości są serializowane bez dodatkowych białych znaków. Wynikiem jest najbardziej zwarta poprawna strukturalnie reprezentacja XML oryginalnego dokumentu.
100% w przeglądarce — bez przesyłania, bez serwera
Całe przetwarzanie odbywa się w środowisku uruchomieniowym JavaScript przeglądarki. Żadne dane nie są przesyłane na żaden serwer w żadnym momencie. Jest to szczególnie ważne w przypadku ładunków XML, które często zawierają wrażliwe treści: tokeny SOAP WS-Security, dane pacjentów HL7, wewnętrzną konfigurację serwisów oraz finansowe formaty wiadomości (FIX, SWIFT ISO 20022). Narzędzie jest bezpieczne do użytku z dowolnym XML, którego nie chciałbyś wklejać do publicznej usługi.

Dobre praktyki

Waliduj przed formatowaniem, formatuj przed zatwierdzaniem
Najpierw zwaliduj XML, aby potwierdzić jego poprawność strukturalną przed ponownym formatowaniem — formatowanie może po cichu produkować nieprawidłowe wyjście, jeśli dane wejściowe nie są poprawnym XML. Po walidacji sformatuj i przejrzyj wcięte wyjście przed zatwierdzeniem plików konfiguracyjnych, szablonów kanałów lub definicji WSDL w systemie kontroli wersji.
Używaj wcięcia 2-spacjowego dla formatów webowych, 4-spacjowego dla korporacyjnego XML
Wcięcie 2-spacjowe jest konwencją dla kanałów RSS/Atom, SVG, XHTML, XML Androida i większości XML zorientowanego na web. Wcięcie 4-spacjowe jest powszechne w środowiskach Java enterprise (Maven POM, pliki kontekstu Spring, deskryptory wdrożeń JBoss). Dopasuj konwencję do istniejących plików i łańcucha narzędzi.
Minimalizuj XML przed osadzaniem w JSON
Jeśli chcesz osadzić ciąg XML jako wartość pola JSON, zawsze najpierw go minimalizuj. Wcięty XML zawiera znaki nowej linii i wielokrotne spacje, które muszą być escapowane w JSON (\n, wielokrotne \u0020), znacznie zwiększając rozmiar ładunku. Zminimalizowany XML jest też znacznie mniej podatny na wywoływanie ograniczeń długości linii w pośrednich proxy lub systemach rejestrowania.
Escapuj znaki specjalne w treści tekstowej, używaj CDATA oszczędnie
Dla krótkich wartości tekstowych zawierających & lub <, używaj referencji encji (&, <) — są bardziej przenośne niż sekcje CDATA i działają też w wartościach atrybutów. Rezerwuj sekcje CDATA () dla osadzania dużych bloków kodu, zapytań SQL lub fragmentów HTML, gdzie escapowanie każdego znaku specjalnego uczyniłoby treść nieczytelną.
Deklaruj przestrzenie nazw jak najwcześniej
Deklaruj przestrzenie nazw XML (xmlns:prefix="URI") na elemencie głównym lub na elemencie najwyższego poziomu, który używa prefiksu. Deklarowanie przestrzeni nazw głęboko w drzewie dokumentu utrudnia czytanie XML i może powodować problemy z parserami XML opartymi na strumieniu (SAX, StAX), które przetwarzają przestrzenie nazw inkrementalnie. Przykład koperty SOAP powyżej demonstruje zalecany wzorzec: wszystkie deklaracje przestrzeni nazw na elemencie głównym Envelope.

Najczęściej zadawane pytania

Czy dane XML są wysyłane na serwer podczas korzystania z narzędzia?
Nie. Całe formatowanie, minimalizacja i walidacja odbywa się wyłącznie w przeglądarce przy użyciu JavaScript. Dane XML nigdy nie są przesyłane przez sieć, nie są przechowywane na żadnym serwerze ani rejestrowane czy analizowane. Narzędzie jest bezpieczne do użytku z ładunkami XML zawierającymi dane uwierzytelniające API, dane wewnętrznych serwisów, dokumenty finansowe, dane medyczne HL7/FHIR lub inne wrażliwe treści. Można to potwierdzić, otwierając zakładkę Sieć w przeglądarce — wklejenie lub przetworzenie XML nie wyzwoli żadnych żądań sieciowych.
Co sprawdza przycisk Waliduj?
Przycisk Waliduj sprawdza, czy XML jest poprawny strukturalnie zgodnie ze specyfikacją XML 1.0. Poprawność strukturalna oznacza: każdy znacznik otwierający ma odpowiadający znacznik zamykający, znaczniki są właściwie zagnieżdżone (bez nakładania się elementów), dokument ma dokładnie jeden element główny, wartości atrybutów są ujęte w cudzysłowy, a znaki specjalne (&, <, >) są poprawnie zapisane jako &, < i >. Gdy XML jest poprawny strukturalnie, pojawia się zielony baner «Poprawny XML». Gdy nie jest — wyświetlany jest komunikat błędu z numerem wiersza i kolumny, gdzie wykryto problem, dzięki czemu można go natychmiast zlokalizować i naprawić.
Czy walidacja sprawdza zgodność ze schematem XML (XSD) lub DTD?
Nie. Narzędzie sprawdza wyłącznie poprawność strukturalną — nie waliduje względem schematu XSD, DTD, schematu RELAX NG ani żadnej innej gramatyki. Poprawność strukturalna jest warunkiem wstępnym walidacji schematowej, ale są to różne poziomy poprawności. Dokument XML może być w pełni poprawny strukturalnie, a jednocześnie naruszać schemat (np. brakuje wymaganego elementu lub pole numeryczne zawiera ciąg znaków). Do pełnej walidacji schematowej potrzebne jest narzędzie takie jak xmllint (wiersz poleceń), Oxygen XML Editor lub parser XML w wybranym języku programowania z włączoną obsługą schematu.
Jaka jest różnica między formatowaniem (upiększaniem) a minimalizacją?
Formatowanie (upiększanie) dodaje spójne wcięcia i znaki nowej linii, aby XML był czytelny dla człowieka. Każdy zagnieżdżony element jest wcięty o wybraną liczbę spacji (2 lub 4), dzięki czemu struktura hierarchiczna jest od razu widoczna. To opcja odpowiednia przy czytaniu, edytowaniu lub porównywaniu XML. Minimalizacja robi odwrotność: usuwa wszystkie białe znaki niebędące częścią treści tekstowej elementów, sprowadzając dokument do minimalnej liczby znaków. Jest to przydatne przed zapisaniem XML w bazie danych, przesłaniem go przez sieć, gdzie liczy się rozmiar, lub osadzeniem jako ciąg w innym formacie. Obie operacje produkują semantycznie identyczny XML — zmienia się tylko nieistotne białe znaki.
Czy formatowanie zachowuje komentarze XML i atrybuty?
Tak. Formatowanie jest całkowicie bezstratne pod względem zawartości XML. Komentarze () są zachowywane na miejscu, z dostosowanymi białymi znakami dla wcięcia. Wszystkie atrybuty, ich kolejność wewnątrz znacznika i ich wartości są zachowane dokładnie. Sekcje CDATA, instrukcje przetwarzania () i deklaracje przestrzeni nazw są również zachowywane. Formatowanie modyfikuje wyłącznie białe znaki między znacznikami elementów — nigdy nie zmienia nazw elementów, nazw atrybutów, wartości atrybutów, treści tekstowej ani komentarzy.
Jak formatować XML z wcięciem 4 spacji zamiast 2?
Kliknij przycisk radiowy «4 spacje» w kontrolce Wcięcie (obok przycisków Formatuj, Minimalizuj i Waliduj), a następnie kliknij Formatuj. Panel wyjściowy ponownie wyrenderuje XML z wcięciem 4 spacji. Można przełączać między 2 a 4 spacjami w dowolnym momencie i klikać Formatuj ponownie — rozmiar wcięcia jest odczytywany w momencie kliknięcia przycisku. Wcięcie 2-spacjowe jest najczęstszą konwencją w usługach webowych i formatach wymiany danych; wcięcie 4-spacjowe jest niekiedy preferowane w korporacyjnych schematach XML i środowiskach intensywnie korzystających z SOAP.
Jaki wersja XML i kodowanie obsługuje narzędzie?
Formatowanie używa wbudowanego w przeglądarkę DOMParser z typem MIME text/xml, który obsługuje dokumenty XML 1.0 w dowolnym kodowaniu znaków obsługiwanym przez przeglądarkę — w praktyce UTF-8, UTF-16 i ISO-8859-1 obejmują niemal wszystkie rzeczywiste pliki XML. Deklaracja XML () jest zachowywana, jeśli jest obecna. Dla dokumentów XML 1.1 (rzadkich w praktyce, używanych głównie dla znaków kontrolnych Unicode) ten sam parser jest stosowany, ale niektóre funkcje specyficzne dla XML 1.1 mogą nie być w pełni egzekwowane.
Co powoduje błąd «poprawności strukturalnej» i jak go naprawić?
Najczęstsze błędy poprawności strukturalnej to: (1) Niezgodne znaczniki — znacznik otwierający taki jak z zamykającym (w liczbie mnogiej). Poprawka: dopasuj nazwy znaczników dokładnie, z uwzględnieniem wielkości liter. (2) Niezamknięte znaczniki — znacznik, który nigdy nie ma odpowiadającego znacznika zamykającego ani ukośnika samozamykającego. Poprawka: dodaj znacznik zamykający lub zmień na . (3) Nieescapowane znaki specjalne — użycie & bezpośrednio w treści tekstowej zamiast &, lub < zamiast <. Poprawka: zastąp & przez & i < przez < poza sekcjami CDATA. (4) Wiele elementów głównych — XML wymaga dokładnie jednego elementu głównego okalającego wszystko inne. Poprawka: owiń całą zawartość w jeden znacznik główny. Komunikat błędu z narzędzia zawiera numer wiersza i kolumny pierwszego wykrytego problemu.
Czy można używać narzędzia do formatowania plików XHTML lub SVG?
Tak. XHTML i SVG są poprawnymi zastosowaniami XML, więc narzędzie formatuje, minimalizuje i waliduje je poprawnie. Dla XHTML wykrywa niezgodne lub niezamknięte znaczniki, które byłyby cicho ignorowane przez parsery HTML5, ale są błędami w ścisłym XHTML. Dla SVG jest szczególnie przydatne do formatowania złożonych plików bogatych w ścieżki, generowanych przez narzędzia takie jak Figma lub Illustrator, ułatwiając inspekcję lub ręczną edycję struktury elementów.
Jak narzędzie obsługuje przestrzenie nazw XML?
Przestrzenie nazw XML (deklaracje xmlns, prefiksy przestrzeni nazw takie jak soap:, xsi: itd.) są w pełni zachowywane przez formatowanie. Deklaracje przestrzeni nazw pozostają na elemencie, na którym były pierwotnie zadeklarowane, i nie są przenoszone ani deduplikowane. Nazwy elementów i atrybutów z prefiksem przestrzeni nazw są traktowane przez formatowanie jako nieprzezroczyste ciągi znaków — prefiks i lokalna nazwa są zachowane dokładnie tak jak napisano. Przykład koperty SOAP powyżej demonstruje dokument z trzema prefiksami przestrzeni nazw.
Czy istnieje limit rozmiaru danych wejściowych XML?
Narzędzie nie narzuca twardego limitu rozmiaru, ale parser DOM przeglądarki zużywa pamięć proporcjonalną do rozmiaru dokumentu. Dla większości rzeczywistych plików XML (pliki konfiguracyjne, odpowiedzi API, kanały RSS, ładunki SOAP) znacznie poniżej 1 MB wydajność jest natychmiastowa. Dla bardzo dużych plików XML — wielomegabajtowych eksportów danych lub plików dziennika — warto zamiast tego użyć narzędzia wiersza poleceń: xmllint --format input.xml na Linux/macOS (część libxml2) lub python3 -c "import xml.dom.minidom; print(xml.dom.minidom.parse('input.xml').toprettyxml(indent=' '))" jako opcja wieloplatformowa.
Jak przekonwertować XML na JSON lub JSON na XML?
Narzędzie koncentruje się na formatowaniu i walidacji struktury XML. Do konwersji między XML a JSON użyj narzędzi towarzyszących: Konwerter XML na JSON konwertuje dokumenty XML na ich reprezentację JSON, a Konwerter JSON na XML konwertuje obiekty JSON na XML. Oba narzędzia są również w 100% oparte na przeglądarce, bez przesyłania danych.

Powiązane narzędzia

Zobacz wszystkie narzędzia →