XML vs. HTML
Ein markanter Unterschied zwischen XML und HTML ist die Erweiterbarkeit. Während HTML primär für Web-Inhalte und schriftliche Elemente konzipiert wurde, ist XML flexibel und hat kein festgelegtes Vokabular. Dies ermöglicht es XML, vielfältige Daten wie Zeitangaben, Sicherheitselemente und Grafiken zu integrieren.
Vorteile von XML-Dateien
XML-Dateien zeichnen sich durch Erweiterbarkeit und Unabhängigkeit aus. Sie ermöglichen plattformübergreifenden Datenaustausch ohne spezifische Implementierungsbindung. Mit XML können maßgeschneiderte Untersprachen entwickelt werden, gestützt durch eine Dokumenttypdefinition (DTD) oder eine andere Schemasprache.
XML und W3C-Standards
XML ist die Basis für viele W3C-Standards. Es unterstützt Abfragesprachen wie XPath oder XQuery, Transformationssprachen wie XSLT und bildet die Grundlage für Weiterentwicklungen wie XHTML. Zudem ist XML essenziell für Web-Service-Standards wie SOAP und für semantische Web-Sprachen wie RDF.
Aufbau eines XML-Dokuments
Ein gültiges Dokument folgt einigen festen Regeln. Es besitzt genau ein Wurzelelement, das alle anderen umschließt. Jedes geöffnete Element muss geschlossen werden, Elemente dürfen sich nicht überlappen, und Groß- und Kleinschreibung wird unterschieden. Attributwerte stehen immer in Anführungszeichen.
<?xml version="1.0" encoding="UTF-8"?>
<rechnung nummer="2026-0042">
<kunde>Beispiel GmbH</kunde>
<posten menge="2" einheit="Stück">Cloud Server</posten>
<summe waehrung="EUR">124.00</summe>
</rechnung>
Erfüllt ein Dokument diese Regeln, gilt es als wohlgeformt. Entspricht es zusätzlich einem vorgegebenen Schema, ist es gültig. Beides ist nicht dasselbe: Ein wohlgeformtes Dokument kann inhaltlich völlig unpassend sein.
Namensräume und Schemata
Sobald Dokumente aus mehreren Quellen zusammenfließen, kollidieren Elementnamen. Namensräume lösen das, indem sie jedem Vokabular eine eindeutige Kennung zuordnen – so lassen sich zwei verschiedene <titel>-Elemente sauber auseinanderhalten.
Für die Gültigkeitsprüfung stehen mehrere Sprachen bereit: Die ältere DTD ist einfach, kennt aber keine Datentypen und keine Namensräume. XML Schema (XSD) ist ausdrucksstark und weit verbreitet, dafür recht umfangreich. RELAX NG gilt als kompakter und lesbarer, ist außerhalb bestimmter Nischen aber seltener anzutreffen.
XML verarbeiten
- DOM: Das Dokument wird vollständig in den Speicher geladen und als Baum bearbeitet. Bequem, aber bei großen Dateien speicherintensiv.
- SAX: Der Parser meldet Ereignisse während des Lesens. Sehr sparsam, dafür muss die Anwendung den Zustand selbst verwalten.
- StAX: Die Anwendung holt sich die nächsten Elemente aktiv ab – ein Mittelweg zwischen beiden Ansätzen.
- XPath und XQuery: Abfragesprachen, um gezielt einzelne Knoten zu adressieren oder Auswertungen zu formulieren.
- XSLT: Transformiert ein Dokument in ein anderes Format, etwa von XML nach HTML oder nach CSV.
XML und JSON
JSON hat XML im Web-Umfeld weitgehend abgelöst: Es ist kürzer, lässt sich in JavaScript unmittelbar verarbeiten und kommt ohne schließende Tags aus. Für einfache Datenstrukturen ist es damit die praktischere Wahl.
XML behält seine Stärken dort, wo mehr als reine Datenübertragung gefragt ist: bei gemischtem Inhalt aus Text und Auszeichnung, bei Attributen neben Elementen, bei formaler Schemaprüfung, Namensräumen, Kommentaren und bei digitalen Signaturen innerhalb des Dokuments. Deshalb ist XML in Verwaltung, Industrie und Publishing weiterhin gesetzt.
Wo XML heute im Einsatz ist
- Rechnungsaustausch: ZUGFeRD und XRechnung im Geschäfts- und Behördenverkehr.
- Bürodokumente: Die Formate von Office und LibreOffice sind XML in einem ZIP-Archiv.
- Konfiguration: Maven, Spring, Android-Manifeste und viele Server nutzen XML-Dateien.
- Publishing: DocBook und DITA für technische Dokumentation.
- Webfeeds und Sitemaps: RSS, Atom und
sitemap.xml. - Vektorgrafik: SVG ist ein XML-Vokabular.
Sicherheit bei der Verarbeitung
XML-Parser sind angreifbar, wenn sie externe Entitäten auflösen. Über XXE lassen sich damit lokale Dateien auslesen oder Anfragen aus dem Server heraus auslösen; die sogenannte Billion-Laughs-Attacke bringt über verschachtelte Entitäten den Speicher zum Überlaufen.
Die Gegenmaßnahme ist in allen gängigen Bibliotheken dieselbe: Auflösung externer Entitäten und DTD-Verarbeitung abschalten, sofern sie nicht ausdrücklich gebraucht werden, und Eingabegrößen begrenzen.
FAQ zu XML
Ist XML veraltet?
Nein. Im Web wurde es von JSON verdrängt, in Verwaltung, Industrie, Dokumentenformaten und überall dort, wo Schemaprüfung und Signaturen zählen, ist es weiterhin Standard.
Was unterscheidet wohlgeformt von gültig?
Wohlgeformt heißt: Die Syntaxregeln sind eingehalten. Gültig heißt zusätzlich: Der Inhalt entspricht einem vorgegebenen Schema.
Wozu dienen Namensräume?
Sie verhindern Namenskollisionen, wenn Vokabulare aus verschiedenen Quellen in einem Dokument zusammentreffen.
Wie wandelt man XML in ein anderes Format um?
Über XSLT. Ein Stylesheet beschreibt die Transformationsregeln, ein Prozessor wendet sie auf das Dokument an.
- IT-Outsourcing: Vorteile und Expertise
- KI im Cloud Computing: Vorteile und Nachteile
- Einführung in ASP.NET Web Pages und Razor Syntax
Effiziente XML-Verarbeitung für Ihre IT-Lösungen
Unsere Hosting-Lösungen unterstützen die Verarbeitung von XML-Daten effizient und sicher. Perfekt für datengetriebene Anwendungen und Datenbanken.
Datenbanklösungen bei centron Hosting für XML-Anwendungen