Was dieses Werkzeug prüft
Die Wohlgeformtheit, der Begriff der Spezifikation für „syntaktisch XML“:
- genau ein Wurzelelement;
- jedes Tag geschlossen, und in der Reihenfolge geschlossen, in der es geöffnet wurde;
- Attributwerte in Anführungszeichen, und kein Attribut an einem Element doppelt;
- Element- und Attributnamen, die zulässig beginnen und nur zulässige Zeichen enthalten;
- korrekt geschriebene Entitäten und numerische Referenzen;
- kein von XML verbotenes Zeichen.
Besteht das Dokument, erhalten Sie sein Wurzelelement und seine Größe. Sonst die Beschwerde des Parsers, mit Zeile und Spalte, wo er aufgegeben hat.
Wohlgeformt ist nicht gültig
Das sind zwei verschiedene Wörter in der XML-Spezifikation, und sie zu verwechseln kostet echte Zeit.
| prüft | |
|---|---|
| Wohlgeformt | die Syntax — was dieses Werkzeug tut |
| Gültig | die Syntax und ein Schema: DTD, XSD, RELAX NG |
Ein Dokument kann makellos wohlgeformt und in allem falsch sein, worauf es ankommt: ein Pflichtelement fehlt, ein Element steht falsch, <preis>Banane</preis>, wo eine Dezimalzahl deklariert war. Nichts in diesem Bericht sagt etwas anderes, und kein Wohlgeformtheitsprüfer kann es.
Brauchen Sie Schema-Prüfung, brauchen Sie das Schema — und ein Werkzeug, das es liest.
Dem DOCTYPE wird nicht gefolgt
Eine <!DOCTYPE>-Referenz ist eine URL. Sie aufzulösen hieße eine ausgehende Anfrage, die verriete, dass dieses Dokument existiert und wer es betrachtet. Hier verlässt nichts Ihren Browser: der DOCTYPE wird als Syntax geprüft und bleibt, wo er ist.
Das macht auch Angriffe über externe Entitäten hier gegenstandslos: eine Entität, die irgendwohin zeigt, wird nie abgerufen.
Eine Verarbeitungsanweisung davor ist kein Problem
<?xml-stylesheet href="style.xsl"?> vor dem Wurzelelement ist gewöhnliches, gültiges XML, und der Bericht nennt das echte Wurzelelement statt der Anweisung.
Die einzige erzwungene Reihenfolgeregel ist die der Spezifikation: die XML-Deklaration steht, wenn vorhanden, zuerst. Anderswo ist sie gar keine Deklaration, sondern eine Verarbeitungsanweisung namens xml, und dieser Name ist reserviert.
Datenschutz ab Werk
Alles läuft lokal in deinem Browser mit JavaScript. Deine Daten werden nie hochgeladen, wodurch das Tool auch für sensible Inhalte sicher ist und offline funktioniert.