XML-Schema

Ein XML- Schema dient zum Definieren von Strukturen von XML-Dokumenten. In solch einem Dokument wird spezifiziert wie die Elemente heißen, welche Attribute sie erhalten und welche Subelemente oder Primitivtypen sie besitzen. Anders als bei klassischen DTDs wird die Struktur in der Form eines XML-Dokuments beschrieben. Ein XML-Schema wird auch als eine XSD (XML- Schema- Definition) bezeichnet und hat die Dateiendung „xsd“.

Als erstes stellt sich die Frage warum ein neuer Ansatz zur Definition der Dokumententypen benutzt werden soll, wenn eine DTD schon existiert?

Es ist bekannt, dass bei einer Verwendung von DTDs mit XML-Dokumenten einige Probleme geben könnte.

Das erste bekannte Problem ist die Tatsache, dass es ungeschickt ist eine andere Notation zur Definition als zu Erstellung des Dokuments zu benutzen. Das nächste Problem stellt die minimale Anzahl der vorhandenen Datentypen für XML-Dokumente, die eine DTD vorsieht, dar. Der Versuch, die Werte eines Elements auf Zahlen zu beschränken, würde nicht funktionieren.

Aus diesem Grund wurde eine sogenannte XML-Elementstruktur, eine Schablone (auch als Schema bezeichnet) entwickelt, die die Struktur eines Dokumententyps beschreibt.

Das folgende Quellcodebeispiel zeigt einen XML-Dokumenttyp:

In diesem Quellcodebeispiel wird die Struktur des oben angezeigten XML-Dokuments im XML-Schema beschrieben.

Das Wurzelelement schema definiert über das Präfix xmlns eine Referenz auf den Namensraum, in dem die zulässigen Elemente für die Schemadatei festgelegt sind. Dieser Namensraum wird über das xs Präfix referenziert (Zeile 2).

Mit der Anweisung (Zeile 3) wird das Wurzelelement personal der Dokumentklasse festgelegt. Durch das einfügen des Elements annotation (Zeile 4-6) hat man die Möglichkeit ein Kommentar festzulegen der in dem Element documentation (Zeile 5) hinterlegt wird. Das Wurzelelement personal kann keine, oder mehrere Unterelemente person aufnehmen. Dies geschieht durch das einfügen des complexType-Elements im XML-Schema (Zeile 7-19).

Mit dem sequence-Element (Zeile 8-18) wird die Auswahl der XML–Elemente in der Dokumentenklasse vereinbart. Das Attribut minOccurs legt die minimale, und das maxOccurs die maximale Anzahl der Elemente fest (Zeile 8).

Das gewünschte Unterelement person, wird dann separat in einem element-Element über das name-Attribut definiert. Dieses Unterelement wir dadurch an das Wurzelement eingefügt. Innerhalb des person-Elements wird die restliche Struktur deklariert. Das Element person enthält die Unterelemente name, vorname und tel (Zeile 12-14). Diese Elemente werden über das Element element definiert, das name Attribut definiert den Namen des zugehörigen XML-Elements und das Attribut type legt den Datentyp der Werte fest, welche für das jewilige Element zulässig sind.

X

Um die Webseite optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir eigene Cookies und von Drittanbietern. Durch die weitere Nutzung unserer Webseite stimmen Sie der Verwendung von Cookies zu. Diese Nutzung können Sie in Ihren Browsereinstellungen jederzeit ändern. Weitere Informationen finden Sie in unserem Datenschutz.

Fragen?

Kontaktmöglichkeiten

Projektanfrage?
Andere Frage?
Bewerbung?

Sie benötigen eine Auftragsprogrammierung?
Oder suchen eine unverbindliche Beratung?


Sind sie auf der Suche nach einer neuen Stelle?
Wir freuen uns auf Ihre Bewerbung: