XML | Extensible Markup Language

XML Extensible Markup Language, das Beitragsbild zur erweiterbaren Auszeichnungssprache

XML steht für Extensible Markup Language und ist der Grundstein für Plattformunabhängigkeit, sowie Medienneutralität. Durch XML ist Cross-Media-Publishing überhaupt möglich geworden. Der Name bedeutet „erweiterbare Auszeichnungssprache“ – es ist beliebig erweiterbar, sodass jeder in eigener Sache Tags erfinden kann. Doch befolgt XML ein paar strengen Regeln, die es einzuhalten gilt.

XML gilt als „für Menschen, sowie Maschinen lesbare Auszeichnungssprache“. Dadurch dass sie beliebig erweiterbar ist, lassen sich je nach Bedürfnis die Tags, sowie Inhalte anpassen. Mit XML ist Cross-Media-Publishing möglich geworden, sodass meine eine plattformunabhängige Datenbank hat mit der Daten in jegliche Medien übertragbar sind. Demnach hat man eine Datenbank fürs Web, die aber auch gleichzeitig in den Druck gehen kann. Multimediale Inhalte sind hier als Verweise hinterlegt, welche je nach Bedarf für das Ausgabemedium umgerechnet werden. Die meisten Programme arbeiten mittlerweile mit einer XML-Datenstruktur, sodass diese untereinander geöffnet und editiert werden können. Dafür steht beispielsweise das X bei .Docx von Word.

Der Aufbau von einer XML-Datei

Die Struktur einer XML-Datei sollte bekannt sein, da es einige Teilbereiche gibt, aus denen sich eine XML-Datei zusammensetzt. Eine XML Datei besteht aus einem Prolog, welcher aus der XML Deklaration, sowie der Doctype-Declaration (DTD) besteht. Desweiteren besteht eine XML-Datei aus einem Wurzel-, oder auch Root-Element, welches alle anderen Tags umschließt, sowie zuletzt aus allen anderen Tags, die wir in der DTD definiert haben.

Der Prolog

Der Prolog besteht aus der XML Deklaration, sowie der sogenannten DTD (Document-Type-Declaration).

Die XML Deklaration

Die XML Deklaration gibt an, welchen Typ von Dokument wir hier haben, sowie welche Version wir verwenden. Außerdem finden sich hier Angaben über den Zeichensatz, sowie ob das Dokument eine eigene, oder eine externe DTD aufweist.

Eine typische XML Deklaration kann wie folgt aussehen:

<?xml version="1.0" encoding="UTF-8"?>

Sinnvoll sind die Versionsnummern 1.0, oder 1.1 und müssen stets angegeben werden! Der Zeichensatz steht unter encoding="Zeichensatz" und definiert die jeweiligen zugelassenen Schriftzeichen, die innerhalb der Tags (nicht in den Tags selbst) zugelassen sind. UTF-8 bedeutet an dieser Stelle „Unicode“, sodass quasi jedes Zeichen zugelassen ist. Für den deutschsprachigen Raum (Latin) würde auch der Zeichensatz ISO-8859-1 ausreichen.

Eher seltener wird noch das Attribut standalone="yes|no" verwendet. Standardmäßig gilt der Wert „no“, denn „yes“ wird nur angegeben, wenn das Dokument über keine eigene DTD verfügt.

Die DTD (Doctype-Declaration)

Die DTD, oder auch Doctype-Declaration definiert die in der XML-Datei auftauchenden Elemente. Steht in der XML Deklaration standalone="yes" werden diese Elemente nicht mehr aufgeführt, da diese in einer externen DTD aufgelistet werden.

Zuerst wird das Root-Element als DOCTYPE definiert. Das Root-Element gehört zur Wohlgeformtheit der XML-Datei und umschließt alle anderen weiter aufgeführten Tags. Es darf nur ein einziges Mal auftauchen und umschließt die kompletten Datensätze. Im folgenden Beispiel wird eine Kontaktdatenbank aufgeführt, in welcher Vorname, Nachname, Strasse, PLZ, Stadt, sowie Telefonnummer gespeichert werden.

Das Root-Element ist hierbei kontakte. Dieses Element beinhaltet das Element kontakt, welches anschließend genauer definiert wird, da hier noch weitere Elemente drin stecken. Das Plus bedeutet, dass hiervon mehrere Elemente möglich sind. Nun geht es in die nähere Erläuterung des Elements kontakt: dafür wird eine Klammer geöffnet und alle Elemente, die sich hier drin befinden durch Komma getrennt aufgelistet. Anschließend werden die einzelnen Elemente chronologisch aufgelistet (wichtig!) und der Element-Typ in Klammern benannt. Da wir es mit Text zutun haben steht hier (#PCDATA) was für Parsed Character Data steht.

<!DOCTYPE kontakte [
<!ELEMENT kontakte (kontakt)+>
<!ELEMENT kontakt (Vname, Nname, Strasse, PLZ, Stadt, Tel)>
<!ELEMENT Vname (#PCDATA)>
<!ELEMENT Nname (#PCDATA)>
<!ELEMENT Strasse (#PCDATA)>
<!ELEMENT PLZ (#PCDATA)>
<!ELEMENT Stadt (#PCDATA)>
<!ELEMENT Tel (#PCDATA)>
]>

Das Wurzel-, oder auch Root-Element

Wie bereits in der DTD deklariert umschließt das Root-Element alle anderen Tags, die in einer XML-Datei aufgeführt sind. Es ist nur ein einziges Mal vorhanden und gehört zur wohlgeformten XML-Datei. Innerhalb des Root-Elements befinden sich alle Tags, die zuvor angegeben wurden. Diese müssen exakt in der Reihenfolge, wie sie angegeben wurden erscheinen, auch wenn sie überhaupt keine Inhalte aufweisen. Dies gehört zur „Wohlgeformtheit“ einer XML.

<kontakte>
<kontakt>
<Vname>Max</Vname>
<Nname>Mustermann</Nname>
<Strasse>Musterstrasse</Strasse>
<PLZ>12345</PLZ>
<Stadt>Musterstadt</Stadt>
<Tel>01234/56789</Tel>
</kontakt>
</kontakte>

Die vollständige XML-Datei

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE kontakte [
<!ELEMENT kontakte (kontakt)+>
<!ELEMENT kontakt (Vname, Nname, Strasse, PLZ, Stadt, Tel)>
<!ELEMENT Vname (#PCDATA)>
<!ELEMENT Nname (#PCDATA)>
<!ELEMENT Strasse (#PCDATA)>
<!ELEMENT PLZ (#PCDATA)>
<!ELEMENT Stadt (#PCDATA)>
<!ELEMENT Tel (#PCDATA)>
]>
<kontakte>
<kontakt>
<Vname>Max</Vname>
<Nname>Mustermann</Nname>
<Strasse>Musterstrasse</Strasse>
<PLZ>12345</PLZ>
<Stadt>Musterstadt</Stadt>
<Tel>01234/56789</Tel>
</kontakt>
</kontakte>

Wichtige Regeln einer XML

Eine XML-Datei muss wohlgeformt sein, damit diese als „valide“ deklariert werden kann. XML befolgt trotz der vielen Freiheiten in der Namensvergabe einigen Regeln, die befolgt werden müssen:

  1. Alle Elemente (Tags) und Inhalte werden von einem Root-Element umschlossen
  2. Es muss eine XML-Deklaration (<?xml version="1.0" encoding="UTF-8"?>) vorhanden sein
  3. Jedes Element besteht aus einem öffnenden (<kontakt>) und einem schließenden (</kontakt>) Tag
  4. Ein Tag beginnt niemals mit einer Zahl
  5. Ein Tag beinhaltet keine Sonderzeichen
  6. Ein Tag beinhaltet keine Umlaute
  7. Attribute in Elementen sind möglich, müssen jedoch müssen ihre Werte in Anführungszeichen stehen (encoding="UTF-8")
  8. Für die Vergabe von Elementnamen (Tags) dürfen nur Buchstaben, Ziffern und ein Unterstrich verwendet werden (ASCII)
  9. Eine XML muss „Well-formed“ sein, das bedeutet, dass Anfangs- und Endsyntax identisch sein müssen. (öffnender Tag, gleich geschrieben wie schließender Tag)
  10. In sich geschlossene Tags, wie zB Bildverweise müssen am Ende geschlossen werden: <meinbild href="Bildverweis" />

Ersten Kommentar schreiben

Antworten

Deine E-Mail-Adresse wird nicht veröffentlicht.


*


Time limit is exhausted. Please reload CAPTCHA.