So funktioniert der XML-Formatter
Die Seite liest Ihr XML in seine Bestandteile ein: Tags, Attribute, Text, Kommentare, CDATA-Abschnitte, Processing Instructions wie <?xml …?> und den Doctype. Dann schreibt sie sie wieder aus, jedes Element in einer eigenen Zeile, pro Ebene eingerückt mit 2 Leerzeichen, 4 Leerzeichen oder einem Tab. Minimieren macht das Gegenteil und entfernt den Leerraum zwischen den Tags.
Nur der Leerraum zwischen Tags ändert sich. Text bleibt Zeichen für Zeichen erhalten, Attribute behalten ihre Reihenfolge und ihre Anführungszeichen, und Kommentare, CDATA und der Doctype werden wie geschrieben übernommen. Wo Text und Tags gemischt sind, wie in <p>Hello <b>world</b></p>, oder wo xml:space="preserve" gesetzt ist, spielen die Leerzeichen eine Rolle, daher bleibt dieser Teil genau so, wie er war.
Zum Validieren übergibt die Seite Ihr XML außerdem an den eigenen XML-Parser Ihres Browsers (DOMParser), denselben, der RSS- und SVG-Dateien liest. Er prüft, ob das Dokument wohlgeformt ist: ein Wurzelelement, jedes Tag in der richtigen Reihenfolge geschlossen, Attribute in Anführungszeichen, kein Attribut doppelt, nur bekannte Entities. Fehler werden mit Zeile und Spalte angezeigt. Gegen ein Schema (XSD oder DTD) wird nicht geprüft, und externe Dateien werden nie abgerufen.
Beispiel
Eine kleine Konfiguration, in einer Zeile minimiert:
<?xml version="1.0"?><config><!-- web tier --><server name="web-1" port="443"><tls enabled="true"/><root>/var/www</root></server></config>Mit 2 Leerzeichen formatiert wird daraus die Version unten. Der Kommentar, das selbstschließende Tag <tls/> und die Reihenfolge der Attribute bleiben unverändert; erneutes Minimieren liefert genau die Zeile oben zurück.
<?xml version="1.0"?>
<config>
<!-- web tier -->
<server name="web-1" port="443">
<tls enabled="true"/>
<root>/var/www</root>
</server>
</config>Fragen
Wie formatiere ich XML?
Fügen Sie es oben in das Feld ein oder öffnen Sie die Datei und wählen Sie 2 Leerzeichen, 4 Leerzeichen oder einen Tab. Das formatierte XML erscheint rechts beim Tippen; kopieren Sie es oder laden Sie es als Datei herunter. Auf der Kommandozeile macht xmllint --format file.xml unter Linux und macOS dasselbe.
Wie prüfe ich, ob XML gültig ist?
Fügen Sie es oben ein: Die Seite sagt, ob es wohlgeformt ist, und gibt andernfalls Zeile, Spalte und Grund an, etwa ein schließendes Tag, das nicht passt. Wohlgeformt heißt, die Syntax stimmt. Die Prüfung gegen ein Schema (XSD oder DTD) ist ein eigener Schritt, zum Beispiel mit xmllint --schema schema.xsd file.xml.
Verändert das Formatieren mein XML?
Nur den Leerraum zwischen Tags, den XML-Programme normalerweise ignorieren. Text, Attributwerte und ihre Reihenfolge, Kommentare, CDATA, Processing Instructions und der Doctype bleiben genau wie geschrieben. Gemischter Inhalt (Text mit Tags darin) und alles unter xml:space="preserve" wird gar nicht angefasst, weil dort die Leerzeichen eine Rolle spielen können.
Was ist der Unterschied zwischen wohlgeformtem und gültigem XML?
Wohlgeformtes XML folgt den Syntaxregeln: ein Wurzelelement, jedes Tag geschlossen und korrekt verschachtelt, Attributwerte in Anführungszeichen, kein Attribut doppelt. Gültiges XML ist wohlgeformt und folgt zusätzlich einem Schema oder einer DTD, die festlegt, welche Elemente und Attribute erlaubt sind. Ein Parser kann jede wohlgeformte Datei lesen; erst die Validierung sagt Ihnen, dass sie die richtige Struktur hat.
Ist es sicher, XML mit Passwörtern oder Schlüsseln hier einzufügen?
Ja. Formatieren und Prüfen laufen in Ihrem Browser, und nichts, was Sie einfügen, wird an einen Server gesendet oder gespeichert. Der XML-Parser des Browsers lädt auch keine externen DTDs oder Entities herunter. Schließen Sie den Tab, ist der Text weg.