XML-Parser
XML (Extensible Markup Language) ist eine Auszeichnungssprache zur Kodierung strukturierter Daten. Obwohl JSON XML bei vielen Web-APIs ersetzt hat, bleibt XML unverzichtbar für Unternehmenssysteme, SOAP-Webdienste und Konfigurationsdateien. Dieses Tool parst und formatiert XML mit korrekter Einrückung.
Spezifikationen
Haeufige Anwendungsfaelle
- SOAP-API-Anfragen und -Antworten formatieren
- Maven-pom.xml-Dateien lesen und validieren
- RSS- und Atom-Feed-Inhalte parsen
- Android-Layout-XML-Dateien debuggen
- SVG-Grafikdateien verarbeiten
- .NET-Konfigurationsdateien untersuchen (web.config, app.config)
Funktionen
- Formatierte Ausgabe mit korrekter Einrückung
- Namespaces und Präfixe beibehalten
- CDATA-Abschnitte und Verarbeitungsanweisungen verarbeiten
- Attribute neben Elementen anzeigen
- Konvertierung zu JSON für einfachere programmatische Verarbeitung
- Wohlgeformte XML-Struktur validieren
Beispiele
Maven POM
Ausprobieren →Ein Maven-Projektobjektmodell, das Abhängigkeiten definiert.
<?xml version="1.0" encoding="UTF-8"?>
<project>
<groupId>com.example</groupId>
<artifactId>my-app</artifactId>
<version>1.0.0</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13</version>
</dependency>
</dependencies>
</project>Tipps
- XML unterscheidet Groß- und Kleinschreibung. <User> und <user> sind verschiedene Elemente.
- Alle Elemente müssen korrekt geschlossen werden. Verwenden Sie <br/> für selbstschließende Tags.
- Attributwerte müssen in Anführungszeichen stehen (einfache oder doppelte).
- Verwenden Sie CDATA-Abschnitte für Inhalte, die < oder & Zeichen enthalten.
Verstaendnis XML-Parser
XML (Extensible Markup Language) ist ein W3C-Standard zur Kodierung strukturierter Daten in einem Format, das sowohl für Menschen lesbar als auch maschinell verarbeitbar ist. Im Gegensatz zu HTML, das einen festen Satz von Tags hat, können Sie in XML eigene Elemente und Attribute definieren, was es zu einer Metasprache für die Erstellung domänenspezifischer Auszeichnungssprachen macht. Die 1.0-Spezifikation wurde 1998 veröffentlicht und wird nach wie vor weit verbreitet eingesetzt.
Das bestimmende Merkmal von XML ist seine strenge Syntax. Jedes öffnende Tag muss ein schließendes Tag haben (oder selbstschließend sein). Attribute müssen in Anführungszeichen stehen. Elemente müssen korrekt verschachtelt sein. Ein Dokument, das diese Regeln befolgt, ist „wohlgeformt“. Ein Dokument, das zusätzlich einem Schema (DTD, XML Schema oder RELAX NG) entspricht, ist „gültig“. Diese Strenge macht XML zuverlässig für den Datenaustausch zwischen Systemen, die möglicherweise mit unterschiedlichen Technologien erstellt wurden.
Namespaces sind XMLs Mechanismus zur Vermeidung von Elementnamenskollisionen. Ein Namespace ist eine URI, die einem Präfix zugeordnet ist (xmlns:soap="..."), wodurch sichergestellt wird, dass <soap:Envelope> und <html:body> im selben Dokument ohne Mehrdeutigkeit koexistieren können. Namespaces sind unverzichtbar in SOAP-Webdiensten, SAML-Assertions, SVG-Grafiken und jedem Dokument, das verschiedene Vokabulare kombiniert.
Obwohl JSON XML für die meisten Web-APIs aufgrund seiner leichteren Syntax ersetzt hat, bleibt XML dominant in der Unternehmensintegration (SOAP, EDI), Dokumentformaten (DOCX, XLSX, ODF), Konfiguration (Maven pom.xml, .NET web.config, Android-Layouts), Syndikation (RSS, Atom) und Vektorgrafiken (SVG). Das Verständnis von XML ist unerlässlich für die Arbeit mit Legacy-Systemen, Unternehmenssoftware und Dokumentverarbeitungspipelines.
Wohlgeformtes XML befolgt die grundlegenden Syntaxregeln: korrekte Verschachtelung, geschlossene Tags, Attribute in Anführungszeichen und ein einzelnes Wurzelelement. Jeder XML-Parser kann wohlgeformtes XML lesen. Gültiges XML geht weiter — es entspricht einem Schema (DTD, XML Schema oder RELAX NG), das definiert, welche Elemente und Attribute erlaubt sind, ihre Reihenfolge und ihre Datentypen. Validierung ist optional, aber wichtig für den Datenaustausch, bei dem sich beide Parteien auf die Dokumentstruktur einigen müssen.
Namespaces verhindern Elementnamenskollisionen, indem sie Elemente mit einer URI verknüpfen. Ein Namespace wird mit xmlns:prefix="URI" deklariert und dann als Präfix für Elemente verwendet (<prefix:element>). Der Standard-Namespace (xmlns="URI" ohne Präfix) gilt für das Element und seine nicht qualifizierten Nachkommen. Die URI muss nicht auf eine tatsächliche Ressource verweisen — sie dient nur als eindeutiger Bezeichner. CDATA-Abschnitte (<![CDATA[ ... ]]>) bieten eine Möglichkeit, Inhalte einzuschließen, die Zeichen wie < und & enthalten, ohne sie als < und & zu escapen. Dies ist nützlich für das Einbetten von JavaScript, SQL-Abfragen oder HTML-Fragmenten in XML-Elementen.
XML bietet mehrere Funktionen, die JSON fehlen: Namespaces zur Kombination von Vokabularen, Schemas zur formalen Validierung, Attribute für Metadaten neben Elementinhalten, Verarbeitungsanweisungen, gemischte Inhalte (Text verzahnt mit Elementen) und XSLT für deklarative Transformation. XML ist die bessere Wahl für dokumentenorientierte Daten, komplexe Unternehmensintegrationen und Szenarien, die formale Verträge zwischen Systemen erfordern. JSON eignet sich besser für einfachen Datenaustausch in Webanwendungen, wo seine leichtere Syntax und universelle Werkzeugunterstützung wichtiger sind als XMLs strukturelle Reichhaltigkeit.