XML-Tutorial I: Allgemeines

Gelesen bei AboutWebDesign.de
URL: http://www.aboutwebdesign.de/awd/content/1024415102.shtml

Von XML wird viel versprochen: Datenaustausch, Datenspeicherung, universelle Editierbarkeit. Es heißt, XML wäre das Format der Zukunft. Es kann also nicht schaden, sich mit XML zu beschäftigen, sofern man das nicht schon getan hat. Unser Tutorial geht auf die wichtigsten Punkte ein, in jeder Folge behandeln wir ein anderes Teilthema.

Dieser erste Teil wird sich mit allgemeinen Feststellungen und noch recht einfachen Konstruktionen beschäftigen.

Was ist XML?


XML ist eine Technologie zur Erstellung von Auszeichnungssprachen. Oder, anders gesagt: XML ermöglicht es einem, selbst so Sachen wie XHTML zu erstellen. XML selbst ist also keineswegs eine Sprache.

Was kann man mit XML tun?


XML - was bringt einem das? Folgende Liste gibt einen Überblick über die Möglichkeiten von XML:

Das Grundprinzip von XML-Daten


Im Prinzip sehen XML-Dateien so ähnlich aus wie HTML-Dateien: es gibt Tags, die Attribute und einen Inhalt haben können. Tags können wieder neue Tags enthalten:

<tag1 attribut="wert">Ich bin ein Text</tag1>
<adresse>
<name>Thomas Morus</name>
<strasse>Krätstr. 10</strasse>
</adresse>


Nicht alle Tags müssen ein End-Tag der Form Schrägstrich + Tag-Name (zu <name> gehört also </name>) besitzen. Dann ändert sich die Syntax zu <name />: ein Schrägstrich wird vor die letzte spitze Klammer gestellt. Im Folgenden wird die Bezeichnung "Element" synonym mit "Tag" verwendet.

Unter Attribut verstehen wir so etwas wie attribut="wert". Die Zeichenfolge vor dem Gleichheitszeichen gibt den Attribut-Namen an, das dahinter in Anführungszeichen ist der Wert.

Ein erstes echtes Dokument


Erstellen Sie mit Ihrem Texteditor eine Datei namens test.xml und fügen Sie folgenden Inhalt ein:

<?xml version="1.0" encoding="iso-8859-1"?>
<adressen>
<person>
    <name>Hans</name>
    <telefon>6726</telefon>
</person>
<person>
    <name>Heinz</name>
    <telefon>4456</telefon>
</person>
</adressen>


Sie können die Datei jetzt mit einem Programm anzeigen lassen, das XML unterstützt, so z.B. der IE 5. Solche Programme benutzen einen Parser, ein Unterprogramm, das den XML-Code durchgeht und verarbeitet. Ein XML-Prozessor verarbeitet die Daten des Parsers weiter. Das klappt allerdings nur, wenn das Dokument auch wohlgeformt ist. Das erste Beispiel wäre das nicht gewesen, dieses hier schon - wieso?

Im Prolog könnte weiterhin eine DTD eingebunden werden, eine Document Type Declaration. Sie legt fest, in welcher Rehenfolge wo Elemente stehen dürfen und welche Inhalte bzw. Attribute sie haben dürfen. Dazu in einem späteren Teil unseres Tutorials mehr.

Es gibt weitere Regeln für Wohlgeformtheit:

Diese Regeln ermöglichen es Ihnen bereits, erste XML-Dokumente zu schreiben. Später werden sie noch ergänzt, z.B. durch Verwendung einer DTD. Entspricht ein Dokument dann auch noch diesen zusätzlichen Regeln, dann nennt man es "gültig". Solange jedoch keine DTD oder ähnliches angegeben wird, sind die bisher bekannten Regeln die einzigen, die einzuhalten sind.

Seltsame Auszeichnungen


Kommentare...


...werden von Parsern und sonstiger Software ignoriert. Sie werden eingeschlossen von <!-- und -->. Innerhalb eines Kommentars dürfen keine zwei aufeinanderfolgenden Bindestriche verwendet werden.

Beispiel:

<!-- Ich werde ignoriert! -->

Zeichendaten


Zeichendaten-Abschnitte werden vom Parser ignoriert: Sie können dort alle Regeln für Wohlgeformtheit verletzen, ohne dass es negative Konsequenzen hat. Zeichendaten-Abschnitte werden eingeschlossen von <![CDATA[ und ]]>. Verwenden Sie sie nicht zu häufig, denn sie reduzieren die Lesbarkeit.

Beispiel:

<?xml version="1.0" encoding="iso-8859-1"?>
<xml>
Keine Lust, die Sonderzeichen zu quoten:
<![CDATA[
<html>
<b>Txt!</b><br><br>
</html>
]]>
</xml>


Steueranweisungen


Um XML-Prozessoren zu beeinflussen, verwenden Sie Processing Instructions:

<?Name Daten?>

Welche Werte akzeptiert werden, hängt von Ihrem XML-Prozessor ab.

Weitere Themen und Technologien


Die bisherigen Absätze waren eigentlich nur Spielerei - richtig los geht es erst später.

In den nächsten Teilen unseres Tutorials werden wir u.a. folgende Themen behandeln: