0251 / 590 837 15

XML: Extensible Markup Language

XML ist in aller Munde. Doch was hat es damit auf sich? Wem nutzt es und wer braucht es? Welche Vor- und Nachteile hat XML und wie schreibe ich selbst XML ? All diesen Fragen werden wir im folgenden Workshop nachgehen. Lernen Sie XML zu schreiben und einzusetzen, DTD’s zu definieren und XML mit Hilfe von JavaScript, CSS und XSL an Ihre Bedürfnisse anzupassen.

Was ist XML?

XML steht für "EXtensible Markup Language", was soviel wie erweiterbare Auszeichnungssprache bedeutet. Es wurd vom World Wide Web Konsortium (W3C) entwickelt um HTML und Konsorten um eben diese erweiterbaren Elemente zu bereichern. Wenn man es so sehen will, ist XML die Grundlage oder vielmehr die Gebrauchsanweisung für jeden, der eigene Sprachen entwickeln möchte. XML beschreibt, ähnlich wie beispielsweise HTML, die Anordnung und das Auftreten von Elementen, die Verwendung von Attributen und alles was sonst noch zu einem Dokument gehört. Das neue - im Gegensatz zu HTML - ist dabei die Erweiterbarkeit. HTML ansich ist ein relativ statisch und fest definiertes Gebilde. XML seinerseit verfügt über die Möglichkeiten und das Können eine vormals mit XML definierte Sprache zu erweitern und vielmehr noch zu bereichern.

Wozu brauch ich XML?

Um es einmal gaz einfach zu sagen: Wenn Sie einfach nur weiterhin Ihre Homepage betreiben wollen, brauchen Sie es sogut wie garnicht. Die gewöhnliche Homepage braucht eigentlich kein XML und wird auch weiterhin ohne es auskommen. XML brauchen Sie erst dann, wenn es um Dinge geht, die HTML und Co. nicht mehr erledigen können. Dazu gehören im Grunde alle Dinge, die von Maschinen verstanden werden sollen, wie z.B. Metadaten, Firmendaten oder auch einfache Listen der Videos im Schrank. Aufgrund seiner Definition kann XML hier ansetzen und ebendiese Dinge umsetzen.

Wie sieht XML aus?

So gesehen ist das Erscheinungsbild von XML-Dateien nicht groß anders als das von gewöhnlichen HTML-Dateien. Vielmehr ist mit XHTML - eine Abbildung von HTML auf XML - genau das erreicht, was XML ausmacht: Es ist auf fast alles Anwendbar. Mit XHTML wurde eine Sprache (nämlich HTML) mit der Hilfe und den Regeln aus XML neu definiert. Das Resultat ist eine fast beliebig erweiterbare Sprache die zudem noch wesentlich einfacher interpretierbar und besser von Computern zu verstehen ist. Ein Beispiel für eine XML-Datei:

<?xml version="1.0"?>
<Adressbuch>
 <Kunde Name="Max Mustermann">
  <Adresse>
   <Strasse>Musterstrasse 14</Strasse>
   <PLZ>12345</PLZ>
   <Ort>Mustehausen</Ort>
  </Adresse>
 </Kunde>
 <Kunde Name="August Ausgedacht">
  <Adresse>
   <Strasse>Gibts-Nicht-Weg 37</Strasse>
   <PLZ>67890</PLZ>
   <Ort>Augsburg</Ort>
  </Adresse>
 </Kunde>
</Adressbuch>

Wie Sie dem Beispiel entnehmen können, wird darin ein Adressbuch beschrieben, dass die zwei Einträge "Max Mustermann" und "August Ausgedacht" beinhaltet. Weitere Adresse könnten folgen. Bitte beachten Sie auch die Struktur der einzelnen Elemente (Adressbuch, Kunde, Adresse, Strasse, ...) - XML definiert diese.

Ansicht im Microsoft Internet Explorer
Darstellung: Ansicht im Microsoft Internet Explorer

Leider stellen die Browser XML-Inhalte sehr unterschiedlich dar. Hier als Beispiel der Microsoft Internet Explorer (5.5) und folgend der Netscape Navigator (6.2). Während der Internet Explorer die Struktur der Datei anzeigt stellt Netscapes Browser die Datei als Text dar. Vor und Nachteile birgt beides.

Ansicht im Netscape Navigator
Darstellung: Ansicht im Netscape Navigator

XML-Dateien schreiben

XML wird auch nicht anders geschrieben (man sagt notiert) als gewöhnliches HTML. Das heißt, die Datei ist eine reine Text-Datei, die Sie z.B. mit einem Text-Editor oder einem speziellen XML-Editor schreiben können. Die Dateiendung ist im Grunde frei gestellt, allgemein wird allerdings .xml verwendet.

Document Type Definition (DTD)

Eine Document Type Definition (DTD) ist die Grundlage für jedes XML-Dokument. Innerhalb dieser DTD wird die genaue Struktur, die Anordnung und der Inhalt sowie die Attribute mit ihren möglichen Werten genau definiert.

XML gestalten mit CSS

Die gestalterischen Fähigkeiten von CSS im Zusammenhang mit HTML sollten soweit recht klar sein. Doch wie ist das mit XML-Dokumenten? Erkennt der Browser hier einfach meine normalen CSS-Dateien an und wie binde ich sie ein?

XML und JavaScript

Auf den ersten Blick haben XML und JavaScript nicht viel mit einander zu tun. Allerdings stecken eine Menge Möglichkeiten in der Verbindung der beiden Sprachen. Ob von einfachem Verändern und Bearbeiten von Inhalten bis hin zu Animationen mit SVG-Dokumenten lässt sich fast alles machen.

Content Management mit XML

Content Management Systeme sind – ebenso wie XML – in aller Munde. Doch Content Management mit XML ist eine relativ neue Variante des Managements. Welche Vorteile bietet es und welche Möglichkeiten bestehen? Im folgenden wollen wir ein wenig auf die Theorie von Content Management mit XML eingehen.

XPath

Neben XML und XSLT ist XPath das dritte Glied der Kette. Es bietet die Grundfunktionen für XSLT um Knoten richtig ansprechen zu können. Aber auch darüber hinaus bietet XPath einiges an Möglichkeiten an.

Mehr zu XPath

XLink

XML ansich bietet leider keine Möglichkeit dem Programm, welches das XML-Dokument verarbeitet, Hinweise auf interne oder externe Zusammenhänge zu geben. Hier setzt XLink – oder ausgeschrieben XML Linking Language – an und erweitert XML um einige wichtige Funktionen.

Mehr zu XLink

XPointer

XPointer ist ein relativ wenig bekannter und ebenso wenig verwendeter XML-Sprachteil. XPointer versteht sich als erweiterbares System um XML-Daten adressieren zu können.

Mehr zu XPointer