XML formatter

Deze XML formatter laat je de tekst hieronder plakken, laat de elementen netjes inspringen, kan alles tot één regel minificeren en toont regel en kolom bij een fout. Je gegevens blijven in de browser.

Bron: W3C – Extensible Markup Language (XML) 1.0: Well-Formed XML Documents. Bijgewerkt: .

Mijn toolbox

Plak XML of open een bestand: bij elke wijziging wordt gecontroleerd.

Je tekst blijft in je browser: hij wordt niet verstuurd, niet opgeslagen en niet in de adresbalk gezet.

Je kunt ook een bestand op het tekstveld slepen. Het wordt alleen in je browser gelezen, niet geüpload.

Boomweergave
XPath-query

Ondersteund: /a/b, //b, *, .., @attribuut, text(), [2], [last()], [@id='2'], [prijs>10], contains(), starts-with(), not(), and, or, a | b, count(...). Namen zonder prefix passen ook op elementen met een namespace-prefix.

    Resultaat

    Resultaat
    <?xml version="1.0" encoding="UTF-8"?> <catalog> <book id="1"> <title>First book</title> <price currency="EUR">9.90</price> </book> <book id="2"> <title>Second book</title> <price currency="EUR">14.50</price> </book> <!-- end --> </catalog>
    Samenvatting
    7 elementen, grootste diepte 3. Grootte: 229 → 266 bytes (16,2 % groter).
    Gecontroleerd wordt of de XML goed gevormd is (tags, namen, attributen, precies één hoofdelement), niet het schema of de DTD. Tekst tussen tags wordt bij het formatteren teruggebracht tot enkele spaties.

    Zo wordt het berekend

    XML formatteren betekent elk element op een eigen regel zetten en per niveau laten inspringen. <a><b>1</b></a> wordt een leesbare boom met <b> één niveau onder <a>.

    Wat de formatter doet

    Hij splitst de tekst in declaratie, opmerkingen, CDATA, DOCTYPE, tags en tekst, controleert de volgorde van de tags en bouwt het document opnieuw op met de gekozen inspringing. Elementen met alleen tekst blijven op één regel. Bij minificeren verdwijnen alle spaties tussen de tags en desgewenst ook de opmerkingen.

    Fouten vinden

    Ook element- en attribuutnamen, attributen zonder aanhalingstekens, dubbele attributen en een losse “&” worden gecontroleerd. DTD- en schemaregels worden niet gecontroleerd. Alles wordt volledig in de browser verwerkt.

    Boomweergave, XPath en JSON

    Veiligheid: DOCTYPE en entiteiten

    De formatter leest XML met een eigen ontleder en gebruikt niet de XML-parser van de browser. Een DOCTYPE blijft gewone tekst: externe DTD’s en entiteiten worden nooit geladen en zelf gedefinieerde entiteiten worden niet uitgebreid. Aanvallen via externe entiteiten (XXE) of zich vermenigvuldigende entiteiten hebben daardoor geen effect.

    Veelgestelde vragen

    Hoe kan ik XML online formatteren?

    Plak de XML in het veld en kies “Formatteren”: de elementen springen in met 2 of 4 spaties of een tab. Alles gebeurt in je browser.

    Hoe vind ik fouten in een XML-bestand?

    De formatter controleert of de XML goed gevormd is en meldt het eerste probleem met regel en kolom, bijvoorbeeld een verkeerde of ontbrekende eindtag.

    Wordt mijn XML ergens geüpload?

    Nee. Formatteren en controleren gebeuren lokaal in je browser; er wordt niets naar een server gestuurd.

    Hoe bevraag ik XML met XPath?

    Klap “XPath-query” uit en typ een expressie, bijvoorbeeld //book[@id=2]/title. De resultaten verschijnen met hun pad. Een deel van XPath 1.0 wordt ondersteund.

    Kan ik XML naar JSON omzetten?

    Ja, kies “Omzetten naar JSON”. Attributen verschijnen als “@naam”, herhaalde elementen als lijst en waarden blijven tekenreeksen.

    Is het veilig om XML-bestanden van anderen te openen?

    De formatter laadt niets en breidt geen entiteiten uit een DOCTYPE uit; aanvallen via externe entiteiten (XXE) werken hier dus niet.

    Bronnen en wettelijke basis

    Bijgewerkt op: · Redactioneel beleid

    Vergelijkbare tools