Transcript www.fbi.fh

Fachhochschule Köln Fachbereich t Informationswissenschaf

Einführung in

XML Schemata -

die

Alternative zu DTDs

Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Zweck von XML - Schema:

• Definition von Dokumentypen oder Dokumentklassen • Formulierung von Regeln für die Auszeichnung ->Anordnung der Tags (mit Attributen) Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Vorteile gegenüber DTDs (1)

•Definition in XML selber (gleiche Deklarations- und Auszeichnungs syntax) •Datenstrukturen und -typen sind in größerer Anzahl vorhanden und können beliebig erweitert werden (hierzu zählen auch genaue Häufigkeits angaben) •Implementierung von Namensräumen •Erweiterung der Referenzierungs möglichkeiten Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Vorteile gegenüber DTDs (2)

•Möglichkeiten zur Vererbung von Eigenschaften deklarierter Objekte •Stärkere Datenorientierung (anstatt Dokumentorientierung) •Schemata durch XML-Prozessor verarbeitbar (keine Erweiterungen für die Prüfung von DTDs notwendig) Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Nachteile gegenüber DTDs:

•keine deutliche Unterscheidung zwischen Deklaration und Verwendung (Verzicht auf syntaktisch eigenständige Deklarationssprache) •deutlich längerer Sourcecode (Lesbarkeit!) •Entwicklung noch nicht abgeschlossen •(früher: Existenz von mehreren Schemasprachen) Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

XML -Schema-Sprachen

aktuell: W3C: XML Schema language bisher: Microsoft/IBM: Document Content Description Language (DCD) GMD / TU Darmstadt: Document Defintion Markup Language (DDML) Veo Systems / Muzmo Communications u.a.: Schema for object-oriented XML (SOX) Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Aufbau von XML-Schemata

Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Deklarationsarten in Schemata:

•Element - Deklarationen •Attribut - Deklarationen •Notations - Deklarationen Elemente und Attribute können verschiedenen Typen zugeordnet werden, die deklariert werden müssen •Complex - Type •Simple - Type XML-Schemata werden unter der Endung .xsd gespeichert Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Complex - Type

Beispiel: Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Erläuterung Complex-Type (1):

•Complex-Type Elemente können im Gegensatz zu den Simple-Type Elemente weitere Elemente und Attribute beinhalten.

•Im vorigen Beispiel wird folgendes festgelegt: -Jedes Element in einem XML-Dokument vom Typ Adresse muss vier Elemente und ein Attribut besitzen. Die Elemente müssen in der vorgegebenen Reihenfolge stehen und die vorgegebenen Namen tragen. -Drei Elemente sind vom Typ

string

und ein Element vom Typ

decimal

Das Element Adresse kann einem Attribut “Land “ haben, das denn Wert “ Deutschland “ haben muss.

Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Erläuterung Complex-Type (2):

Dieser definierte Complex-Type kann an anderer Stelle im Schema referenziert werden: In diesem Beispiel ist der Complex-Type

Adresse

Bestandteil des Complex-Types

Bestellung

.

Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Erläuterung Complex-Type (3):

XML-Beispiel:

Rusalka Offer Claudiusstr. 1 50678 Koeln Firma 1 Firmenweg 1 11111 Wolkenkuckucksheim ........

Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Simple Type (1)

(Datentypen von Elementen) Beispiel: Erläuterung: •Die beiden Elemente Name und Strasse sind vom Typ

string

•Der Typ

string

ist innerhalb von XML Schema als Simple Type definiert.

• Andere Beispiele für Simple Types sind:

decimal, integer, double, long, token, boolean

•Eine komplette Liste gibt es auf den Seiten des W3C Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Simple Type (2)

Neue Datentypen können aus den bestehenden abgeleitet werden.

Beispiel: In diesem Beispiel wird ein neuer Simple Type auf der Basis des Datentyps

integer

erstellt. Dieser Datentyp ist auf die Zahlen von 100 bis 999 beschränkt.

Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Element - Deklarationen:

Beispiel: •Neben dem Datentyp kann bei Elementen sowohl die Häufigkeit des Auftretens bestimmt werden, als auch ein Default- oder Fixed-Wert •Zur Bestimmung gibt es festgelegte Attribute:

minOccurs, maxOccurs, fixed, default

•In diesem Beispiel ist das Auftreten des Elementes optional, da

minOccurs

auf 0 gesetzt ist Dipl.- Dok. Rusalka Offer

Fachhochschule Köln Fachbereich t Informationswissenschaf

Attribut - Deklarationen:

Beispiel: •Attribute zu Elementen dürfen einmal oder gar nicht auftreten (bezogen auf ein Element) •Bei der Deklaration wird das Auftreten von Attributen mit den Vorgaben

use

(Werte:required, optional, prohibited),

fixed

und

default

geregelt •In diesem Beispiel hat das Attribut Land einen festen Wert (Deutschland) und ist vom Typ NMTOKEN Dipl.- Dok. Rusalka Offer