XML in 5 Minuten: Was ist das? Einfach erklärt

<Erklärung>XML</Erklärung>

Heute geht es um eine Technologie, die du täglich nutzt, wenn du am Computer arbeitest. Was XML ist und warum diese spitzen Klammern keine Geheimsprache sind, erfährst du jetzt.

Was ist XML?

XML ist die Abkürzung für extensible Markup Language. Es ist ein textbasiertes Datenformat, so wie JSON.

Das bedeutet, die Daten können in einem Texteditor bearbeitet werden und Computer können dieses Format lesen und schreiben.

Der Vorteil von XML liegt im ersten Wort extensible. Diese Sprache ist erweiterbar und wird in Technologien verwendet, die du heutzutage täglich verwendest.

Dazu gehören HTML, RSS, SVG und noch viele mehr, aber dazu kommen wir gleich noch.

Echtweltbeispiel: Wie funktionert XML?

Machen wir eine kleine Übung um zu verstehen, wie XML eigentlich funktioniert. Du erhälst einen Zettel in dem folgende Informationen stehen.

Mit den Informationen selbst kannst du noch nicht viel anfangen. Du bekommst von mir die Aufgabe eine kleine Zeichnung auf ein Blatt Papier zu zeichnen und alle Elemente zu beachten, die auf dem Zettel stehen.

Achte dabei auf die Zusatzinformationen und Elemente die IN anderen Elementen stecken. Also schnapp dir ein Blatt Papier, pausiere kurz das Video und los gehts.
Sieht dein Ergebnis ungefähr so aus? Sehr gut.

Falls nicht, dann waren wohl ein paar Elemente nicht ganz eindeutig. Das liegt daran, dass du das verwendete Format nicht kanntest. Ein Computer hätte mit diesen Informationen und ohne zusätzliche Programmierung gar nichts anfangen können. Aus diesem Grund werden wir nun unsere Elemente in der Zeichnung mit XML beschreiben.

Wie ist XML aufgebaut?

Die Zeichnung selbst würde in der XML ebenfalls als Element auftauchen. In XML werden die Elemente und Kindelemente mit Anfangs- und Endpunkten markiert. Die Informationen über das Haus in unserer Zeichnung würden in XML so aussehen. Kurze Erklärung dazu:

Um den Anfang des Elementes zu markieren, setzt man es in spitze Klammern. Für das Ende eines Elementes fügt man ein zusätzlichen Slash ein. Hat ein Element keinen weiteren Inhalt, kann man das Endelement weglassen und den Slash an die hintere Klammer direkt einfügen.

Somit kann man auf der Zeichnung diese Elemente besser erkennen. Beim Element Zeichnung haben wir ausserdem noch Zusatzinformationen, die sich Attribute nennen. Attribute erhalten immer einen Namen und bekommen dann mit einem Gleichheitszeichen einen Wert zugewiesen. Dieser Wert wird in Hochkomma gesetzt. So haben wir das Attribut Seitenformat mit dem Wert DIN A4 und das Attribut Ausrichtung mit dem Wert quer. In die Elemente kann Text geschrieben werden oder es können weitere Elemente erstellt werden.

Falls man Informationen speichern will, die nicht verarbeitet werden sollen, kann man Kommentare verwenden. Diese werden mit spitzen Klammern, Ausrufezeichen und Bindestrichen erstellt.

Wofür wird es gebraucht?

Lass uns mal die komplette XML-Datei anschauen. Wir sehen das Element Zeichnung mit den Attributen und Kindelementen: Haus, Garage und Baum. Das Haus hat weitere Kindelemente Tür, Fenster und Dach. Und beim Haus fällt ebenfalls auf, dass es ein Attribut position mit dem Wert links gibt, Attribute sind auch auf anderen Elementen zu finden. Nun, das ist auch schon die komplette Syntax von XML.

Lass uns ein etwas realistischeres Beispiel durchgehen. Diesmal haben wir keine Zeichnung, sondern einen Text, der in bestimmten Formaten gezeigt werden soll. Versuche doch mal den Text mit den passenden Angaben abzuschreiben und zu formatieren.

Andere Sprachen andere Elemente

Zum einen kannst du nun das XML-Format lesen und du solltest einen anderen Verwendungszweck für XML kennenlernen. In beiden Beispielen haben wir uns Elemente ausgedacht. Möchte man dass der Browser diesen Text passend anzeigt, muss man die Elemente nehmen, die in der Sprache HTML festgelegt sind. Der Ausschnitt würde dann so aussehen. Öffnet man diese Datei im Browser sieht das ganze dann so aus, also genau so, wie es ursprünglich gedacht war.

HTML hat also spezielle Elemente, die ein Browser verstehen kann. Damit kann man dann Webseiten erstellen. Für andere Zwecke gibt es dann wiederrum eigene Sprachen mit eigenen Elementen. Du erinnerst dich an unsere Zeichnung?

Mit SVG und den passenden Elementen kannst du tatsächlich solche Grafiken erstellen. Diese Sprachen sind mittlerweile Standard, aber man kann sich solche Sprachen auch selbst ausdenken.

Du solltest dabei allerdings immer bedenken, dass man dazu ein passendes Programm schreiben muss, welches dieses Format dann lesen und schreiben kann. Für eigene Formate gibt es ein Zusatzformat mit der man die gültigen Elemente, Attribute und Kindelemente, also die Struktur einer XML definieren kann. Diese nennt sich XML Schema Definition oder kurz XSD. Im Prinzip liest sich diese wie eine XML, hat allerdings ein paar Sonderfälle.

Eine XSD bietet sich immer dann an, wenn man die XML-Datei zwischen Programmen und Computern übertragen möchte.
Ausserdem ist es wichtig, dass die XML keine Fehler enthält, ansonsten kann dein Programm diese nicht lesen und die XML gilt damit als nicht wohlgeformt.

Fazit zu XML

Zuletzt sollte noch erwähnt werden, dass es für jede gängige Programmiersprache auch entsprechende Bibliotheken gibt, mit denen man XML lesen und schreiben kann. Damit erleichtert man sich die Arbeit mit XML-Daten. Eine Liste mit Programmiersprachen und Bibliotheken findest du unter dem Video.

Möchtest du überprüfen ob du nun XML lesen kannst?

Öffne doch mal die Entwicklertools in deinem Browser und schau dir mal die Elemente an. Auch wenn du die Elemente noch nicht kennst, kannst du nun die Struktur einer Webseite erkennen.

Damit hast du nun alles um XML und alle weiteren XML-basierten Sprachen zu verstehen. Nun bist du dran um dieses Wissen weiter auszubauen und zu benutzen.

Das war eine kleine Erklärung zum Thema XML, weitere Informationen findest du in der Videobeschreibung. Hat dir dieses Video gefallen, freue ich mich über ein Daumen hoch und ein Abo. Für Fragen und Anregungen nutze bitte die Kommentarfunktion oder schreibe mir einfach eine E-Mail.

Viel Spass beim Programmieren lernen und bis bald auf lerneProgrammieren.de.

Programmierer-Crashkurs für Anfänger...kostenlos!
Baue echte Apps, ohne Vorwissen, ohne Installation!
toolbox 1
Email eintragen und sofort loslegen: