XML verstehen – das vielseitige Markup-Datenformat

tiny-tool.de
XML (Extensible Markup Language) ist ein universelles Datenformat, das in der modernen IT-Welt weiterhin eine wichtige Rolle spielt. Als strukturierter, menschen- und maschinenlesbarer Standard wird es unter anderem in Webservices, Office-Dokumenten, APIs, Konfigurationsdateien und Vektorgrafiken eingesetzt.
Grundlagen von XML
Im Gegensatz zu binären Formaten ermöglicht XML eine nachvollziehbare Beschreibung von Inhalten, die auch ohne spezielle Tools lesbar bleibt. XML ist sowohl in Entwicklungsumgebungen als auch direkt im Texteditor einfach zu analysieren oder anzupassen.
Aufbau und Struktur
Ein XML-Dokument beginnt stets mit einer Deklaration, welche die Version und Kodierung angibt. Danach folgt eine hierarchische Baumstruktur aus Elementen. Jedes Element besitzt Start- und End-Tags und kann wiederum verschachtelte Elemente, Textinhalte und Attribute enthalten.
Einfaches XML-Beispiel
<?xml version="1.0" encoding="UTF-8"?>
<buecher>
<buch>
<titel>Die Kunst der XML</titel>
<autor>Max Mustermann</autor>
<veroeffentlichungsjahr>2023</veroeffentlichungsjahr>
</buch>
</buecher>
In diesem Beispiel beschreibt das Element
buch
ein Buch mit Titel, Autor und Erscheinungsjahr. Diese Struktur zeigt, wie XML Informationen in einer klaren, lesbaren Form darstellt.
Verschachtelung von Elementen
<?xml version="1.0" encoding="UTF-8"?>
<bibliothek>
<buecher>
<buch>
<titel>XML Grundlagen</titel>
<autor>Max Mustermann</autor>
<veroeffentlichungsjahr>2023</veroeffentlichungsjahr>
</buch>
<buch>
<titel>Fortgeschrittenes XML</titel>
<autor>Erika Musterfrau</autor>
<veroeffentlichungsjahr>2025</veroeffentlichungsjahr>
</buch>
</buecher>
</bibliothek>
Hier sind mehrere
buch
-Elemente in einem gemeinsamen buecher
-Element verschachtelt, welches wiederum in bibliothek
eingebettet ist. Dies verdeutlicht die Fähigkeit von XML, komplexe Datenstrukturen abzubilden.
Verwendung von Attributen
<?xml version="1.0" encoding="UTF-8"?>
<buecher>
<buch format="eBook" sprache="de">
<titel>XML leicht gemacht</titel>
<autor>Lena Beispiel</autor>
<veroeffentlichungsjahr>2024</veroeffentlichungsjahr>
</buch>
<buch format="Hardcover" sprache="en">
<titel>Mastering XML</titel>
<autor>John Doe</autor>
<veroeffentlichungsjahr>2022</veroeffentlichungsjahr>
</buch>
</buecher>
Attribute wie
format
und sprache
bieten eine kompakte Möglichkeit, zusätzliche semantische Informationen direkt im Element-Tag zu speichern.
XML in Konfigurationsdateien
<?xml version="1.0" encoding="UTF-8"?>
<databaseConfig>
<host>localhost</host>
<port>5432</port>
<username>admin</username>
<password>geheim</password>
</databaseConfig>
XML ist besonders geeignet, um Konfigurationen für Anwendungen (z. B. Java EE, Spring, Android) zu speichern, da es eine klare Trennung zwischen Code und Einstellungen erlaubt.
Namespaces in XML
<?xml version="1.0" encoding="UTF-8"?>
<buch xmlns="http://example.org/books" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://example.org/books book.xsd">
<titel>XML Advanced</titel>
<autor>Anna Schmidt</autor>
<veroeffentlichungsjahr>2025</veroeffentlichungsjahr>
</buch>
Namespaces ermöglichen es, unterschiedliche XML-Vokabulare eindeutig zu identifizieren und Namenskonflikte zu vermeiden, besonders nützlich in Webservices oder komplexen Dokumentformaten wie DOCX.
XML-Schema zur Validierung
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="buch">
<xs:complexType>
<xs:sequence>
<xs:element name="titel" type="xs:string"/>
<xs:element name="autor" type="xs:string"/>
<xs:element name="veroeffentlichungsjahr" type="xs:gYear"/>
</xs:sequence>
<xs:attribute name="format" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
</xs:schema>
XML-Schemas definieren exakt, welche Elemente und Attribute in einem XML-Dokument zulässig sind, und ermöglichen die automatische Validierung.
Erweiterte XML-Technologien
Zusätzlich zu den Grundfunktionen bieten folgende Technologien weiterführende Möglichkeiten zur Arbeit mit XML:
- XPath – Abfragesprache zum Navigieren durch XML-Daten
- XSLT – Transformiert XML-Daten z. B. in HTML
- XQuery – Komplexe Abfragen über XML-Datenbestände
Fazit
XML bleibt ein bewährter Standard, dessen Stärke insbesondere in der klaren Struktur, Erweiterbarkeit, Validierbarkeit und plattformübergreifenden Nutzbarkeit liegt. Trotz Konkurrenz durch JSON bleibt XML besonders für komplexe und langlebige Datenstrukturen unverzichtbar.