XML Formatter & Validator
XML Formatter & Validator
Formatiere, validiere und minifiziere XML-Dokumente direkt im Browser. Mit Syntax-Highlighting, Fehlererkennung, Baum-Ansicht und Live-Vorschau.
Datenschutz-Garantie: Alle XML-Daten werden zu 100% lokal in deinem Browser verarbeitet. Es werden keine Daten an Server gesendet. Perfekt für SOAP-Responses, Konfigurationsdateien oder sensible Daten.
Inhaltsverzeichnis
Schnellübersicht
- XML Formatter: Formatieren mit 2/4 Spaces oder Tabs
- XML Validator: Fehlererkennung mit Zeilenangabe
- XML Minifier: Komprimierung auf minimale Größe
- Baum-Ansicht: Interaktive Struktur-Visualisierung
- Syntax-Highlighting: Farbliche Hervorhebung
- Theorie: XML-Syntax und Best Practices
- Geschichte: Von SGML zu XML
- FAQ: Häufige Fragen zu XML
1. XML Editor
Gib XML ein oder lade ein Beispiel. Die Validierung erfolgt automatisch beim Tippen.
- Gib XML ein, um die Struktur zu analysieren.
| Element | Anzahl | Attribute |
|---|---|---|
| Keine Daten | ||
- Tab: Fügt 2 Leerzeichen ein (statt Fokus zu wechseln)
- Strg/Cmd + K: Formatieren mit 2 Spaces
- Strg/Cmd + Shift + K: Minifizieren
- Strg/Cmd + S: Als Datei herunterladen
- Strg/Cmd + Shift + C: In Zwischenablage kopieren
2. XML verstehen
XML (Extensible Markup Language) ist eine Auszeichnungssprache zur strukturierten Darstellung von Daten. Sie ist sowohl für Menschen als auch für Maschinen lesbar.
XML-Grundbausteine
Ein XML-Dokument besteht aus mehreren Elementen:
- Prozessanweisung:
<?xml version="1.0"?> - Elemente:
<name>Wert</name> - Attribute:
<item id="1"> - Text: Inhalt zwischen Tags
- Kommentare:
<!-- ... --> - CDATA:
<![CDATA[...]]>
Häufige XML-Fehler
Typische Syntax-Fehler:
- Unclosed Tags:
<name>Max❌ - Wrong Nesting:
<a><b></a></b>❌ - Case-Sensitivity:
<Name></name>❌ - Special Chars:
&unescaped ❌ - Multiple Roots: Zwei Root-Elemente ❌
- Unquoted Attrs:
<item id=1>❌
XML-Entities
Reservierte Zeichen müssen escaped werden:
- < →
<für< - > →
>für> - & →
&für& - " →
"für" - ' →
'für'
Oder CDATA für unescaped Inhalte verwenden.
Best Practices
So schreibst du gutes XML:
- XML-Deklaration am Anfang
- Encoding angeben (UTF-8)
- 2 oder 4 Spaces für Einrückung
- Konsistente Benennung (camelCase oder kebab-case)
- Namespaces bei Konflikten nutzen
- Schema/XSD für Validierung
- Attribute sparsam verwenden
- SOAP-Webservices: Klassischer Standard für Enterprise-APIs
- Konfigurationsdateien: Maven, Android-Manifest, Web.config
- Dokumentformate: SVG, XHTML, RSS, Atom, Office (DOCX, XLSX)
- Datenaustausch: Zwischen heterogenen Systemen
- XSLT-Transformationen: XML zu HTML/PDF
- Datenbanken: Native XML-Spalten (SQL Server, PostgreSQL)
- Enterprise-Integration: ESB, Mule, Apache Camel
- XML bevorzugen bei: SOAP, Dokumenten-Formaten, XSLT, Namespaces, Attributen, Schemas (XSD)
- JSON bevorzugen bei: REST-APIs, Konfigurationen, moderne Web-Apps, NoSQL-Datenbanken
- XML-Vorteile: Attribute, Kommentare, Mixed Content, Namespaces, XPath/XSLT
- JSON-Vorteile: Kompakter, schneller zu parsen, native Datentypen
- Faustregel: Neue Projekte meist mit JSON, Enterprise/SOAP mit XML
3. Geschichte von XML
Von SGML über XML zu modernen Datenformaten.
GML – Generalized Markup Language
Charles Goldfarb, Edward Mosher und Raymond Lorie entwickeln bei IBM die GML. Sie legt den Grundstein für alle modernen Auszeichnungssprachen.
SGML wird ISO-Standard
SGML (Standard Generalized Markup Language) wird als ISO 8879 standardisiert. Sie ist extrem mächtig, aber auch komplex. HTML wird später als SGML-Anwendung definiert.
Erste XML-Entwürfe
Das W3C beginnt mit der Arbeit an einer vereinfachten SGML-Variante. Ziel: Die Mächtigkeit von SGML mit der Einfachheit von HTML verbinden. Erste Entwürfe entstehen.
XML 1.0 wird W3C-Empfehlung
XML 1.0 wird offiziell als W3C Recommendation veröffentlicht. Der Durchbruch: XML wird zum Standard für Datenaustausch und Konfiguration.
SOAP & Web Services
SOAP (Simple Object Access Protocol) wird Standard für Web Services. XML ist das Nachrichtenformat. Unternehmen setzen auf XML für B2B-Integration.
XML Schema (XSD)
XML Schema wird W3C-Empfehlung. Es ermöglicht die formale Beschreibung und Validierung von XML-Dokumenten. DTDs werden abgelöst.
JSON wird populär
JSON wird als leichteres Format für Web-APIs populär. Der "Browser-Krieg" zwischen XML und JSON beginnt. AJAX-Anwendungen bevorzugen JSON.
Koexistenz
XML bleibt wichtig in Enterprise-Umgebungen, SOAP, Office-Formaten und Dokumentenstandards. JSON dominiert moderne Web-APIs. Beide Formate existieren friedlich nebeneinander.
4. FAQ – Häufige Fragen
Häufige Fragen zu XML
XML (Extensible Markup Language) ist eine Auszeichnungssprache zur strukturierten Darstellung von Daten. Sie wurde 1998 vom W3C standardisiert.
Eigenschaften:
- Erweiterbar: Eigene Tags definierbar
- Plattformunabhängig: Funktioniert überall
- Menschenlesbar: Klare Struktur
- Valdierbar: Mit DTD oder XSD
- Hierarchisch: Baumstruktur mit einem Root
Wichtig: XML beschreibt Daten, nicht deren Darstellung (das macht CSS/XSLT).
Die häufigsten Gründe für ungültiges XML:
- Nicht geschlossene Tags:
<name>Max– schließen mit</name> - Falsche Verschachtelung:
<a><b></a></b>– Tags müssen korrekt verschachtelt sein - Case-Sensitivity:
<Name></name>– XML unterscheidet Groß-/Kleinschreibung - Mehrere Root-Elemente: Nur ein Root-Element erlaubt
- Unescaped Characters:
&,<,>müssen escaped werden - Attribute ohne Quotes:
<item id=1>– Quotes erforderlich - Doppelte Attribute:
<item id="1" id="2">– nicht erlaubt - Falsches Encoding: Umlaute ohne UTF-8-Deklaration
Unser Tool zeigt dir die genaue Position des Fehlers an!
Obwohl beide ähnlich aussehen, sind sie grundverschieden:
| Aspekt | XML | HTML |
|---|---|---|
| Zweck | Daten beschreiben | Daten darstellen |
| Tags | Frei definierbar | Vordefiniert |
| Case | Case-sensitive | Case-insensitive |
| Fehler | Streng | Tolerant |
| Root | Ein Root nötig | Kein Root nötig |
| Schließen | Immer nötig | Manchmal optional |
XHTML ist ein Hybrid: HTML, das XML-Regeln folgt.
Namespaces lösen Namenskonflikte, wenn verschiedene XML-Vokabulare kombiniert werden.
Beispiel:
<root xmlns:html="http://www.w3.org/1999/xhtml">
<html:table>
<html:tr><html:td>Hallo</html:td></html:tr>
</html:table>
</root>
Regeln:
- Präfix: Kurzer Name vor dem Element (z.B.
html:) - URI: Eindeutige Kennung (nicht abrufbar)
- Deklaration: Mit
xmlns:präfix="uri" - Default-Namespace:
xmlns="uri"ohne Präfix
Beide definieren Regeln für XML-Dokumente, aber unterschiedlich:
- DTD (Document Type Definition):
- Älterer Standard
- Eigene Syntax (nicht XML)
- Wenig Datentypen (nur Text)
- Keine Namespaces
- Einfacher zu schreiben
- XSD (XML Schema Definition):
- Moderner Standard (W3C 2001)
- Selbst XML-basiert
- Viele Datentypen (int, date, etc.)
- Namespace-Unterstützung
- Komplexer, aber mächtiger
Empfehlung: XSD für neue Projekte verwenden.
XPath ist eine Abfragesprache für XML-Dokumente – ähnlich wie SQL für Datenbanken.
Beispiele:
/bookstore/book– Alle Bücher im Bookstore//title– Alle Titel-Elemente/bookstore/book[1]– Erstes Buch//book[@id='bk101']– Buch mit bestimmter ID//book[price>30]– Bücher teurer als 30
Verwendung: XSLT, XQuery, DOM, Selenium, XML-Parser.
Verwandte Technologien: XSLT (Transformation), XQuery (Abfrage), XPointer (Verweise).
Die Wahl hängt vom Anwendungsfall ab:
XML verwenden bei:
- SOAP-Webservices
- Office-Dokumente (DOCX, XLSX, ODF)
- SVG, RSS, Atom
- Enterprise-Integration (ESB, Mule)
- Wenn Attribute oder Namespaces gebraucht werden
- Wenn ein Schema (XSD) nötig ist
- XSLT-Transformationen
JSON verwenden bei:
- REST-APIs
- Modernen Web-Anwendungen
- NoSQL-Datenbanken (MongoDB)
- Konfigurationsdateien (package.json)
- Frontend-Backend-Kommunikation
- Wenn Kompaktheit und Geschwindigkeit wichtig sind
Faustregel: Neue Web-Projekte mit JSON, Enterprise/SOAP mit XML.
Well-Formed bedeutet, dass das XML syntaktisch korrekt ist. Regeln:
- Genau ein Root-Element
- Alle Tags geschlossen
- Korrekte Verschachtelung
- Case-sensitive Tags
- Attribute in Anführungszeichen
- Keine doppelten Attribute
- Reservierte Zeichen escaped
- Gültige Element-Namen (kein Leerzeichen am Anfang, etc.)
Abgrenzung:
- Well-Formed: Syntax korrekt
- Valid: Syntax korrekt und Schema-konform
Unser Tool prüft, ob dein XML well-formed ist.
CDATA (Character Data) markiert einen Bereich, in dem XML-Sonderzeichen nicht escaped werden müssen.
Beispiel:
<script>
<![CDATA[
if (a < b && c > d) {
alert("Hello");
}
]]>
</script>
Verwendung:
- JavaScript-Code in XML
- HTML-Snippets in RSS
- SQL-Queries in XML
- Alles mit vielen
<,>,&
Nachteil: Innerhalb von CDATA kann ]]> nicht verwendet werden.
Theoretisch gibt es keine Größenbegrenzung. Praktisch gibt es Einschränkungen:
- Browser DOMParser: Mehrere hundert MB möglich
- Java/XML-Parser: Standard-Limits konfigurierbar
- SOAP-APIs: Oft 1–10 MB Request-Limit
- Empfehlung: Bis ~50 MB ist XML praktikabel
Bei großen XML-Dateien:
- SAX-Parser: Stream-basiert, wenig Speicher
- StAX: Streaming API für XML
- XML-Fragmente: Datei aufteilen
- Alternative Formate: Protocol Buffers, Avro, Parquet
Zusammenfassung
Die wichtigsten Punkte
- XML = Extensible Markup Language, W3C-Standard seit 1998
- Well-formed: Syntaktisch korrekt (Syntax-Regeln)
- Valid: Zusätzlich Schema-konform (DTD/XSD)
- Ein Root-Element ist Pflicht
- Case-sensitive:
<Name>≠<name> - Entities:
<,>,&, etc. - Namespaces lösen Namenskonflikte
- CDATA für unescaped Inhalte
- XPath für Abfragen, XSLT für Transformation
- Verwendung: SOAP, SVG, Office, Konfigurationen
- JSON dominiert moderne Web-APIs
- Unser Tool: Lokale Formatierung, Validierung und Visualisierung
Weitere Tools
Formatiere und validiere JSON-Daten mit Syntax-Highlighting.
Zum ToolKonvertiere YAML in JSON und umgekehrt mit Live-Vorschau.
Zum ToolKonvertiere JSON-Arrays in CSV-Tabellen für Excel.
Zum ToolTeste reguläre Ausdrücke mit Live-Matching und Erklärungen.
Zum Tool