|
Die Verbreitung von XML
(eXtensible Markup Language) hat seit seiner Einführung durch
das World-Wide-Web-Konsortium (W3C) im Februar 1998 deutlich zugenommen.
XML stellt heute einen essentiellen Bestandteil vieler Anwendungen aus den unterschiedlichsten Bereichen dar.
Hierbei ist das wohl meist genutzte Einsatzgebiet von XML die Darstellung bzw. der Austausch
von Informationen, die zum Beispiel aus diversen Datenbanken stammen können.
Die Geschäftspartner im elektronischen Handel (E-Commerce) nutzen XML als standardisiertes Nachrichtenformat
für Bestellungen und Abrechnungen einerseits. Es können andererseits natürlich
auch Produktbeschreibungen leicht durch XML abgebildet werden.
Aber auch im Multimediabereich und in der Wissenschaft ist eine weite Verbreitung von XML festzustellen.
Die SVG-Spezifikation (Scalable Vector Graphics) setzt XML zur Speicherung der
benötigten Vektor-Information ein.
Mit SMIL (Synchronized Multimedia Integration Language), welche
beispielsweise im Real Player integriert ist, werden die eingesetzten Multimediapräsentationen durch XML beschrieben.
Viele (natur-)wissenschaftliche Disziplinen nutzen entweder XML direkt oder aber weitere auf XML basierende Sprachen.
Mit der Erweiterung der MathML (Mathematical Markup Language), die ebenfalls durch das W3C entwickelt wurde,
können zum Beispiel mathematische Formeln sehr einfach dargestellt werden.
Die CML (Chemical Markup Language) dient innerhalb der
Chemie zur Beschreibung von Molekularinformationen, und die BioML (Bioinformatic Markup Language) ist ein
Standard zur Darstellung von DNS-, RNS- und Proteinsequenzen in der Biologie.
Um XML in den verschiedensten Anwendungsbereichen problemlos einsetzen zu können und
dabei eine konfliktfreie Interoperabilität, zum Beispiel während des Datenaustausches, zwischen
den konkreten Anwendungsprogrammen zu gewährleisten, sind zwei Anforderungen an XML-Dokumente von besonderer Bedeutung:
- die Wohlgeformtheit
- die Gültigkeit
der Dokumente.
Ein XML-Dokument ist wohlgeformt, wenn sein syntaktischer Aufbau den formalen Ansprüchen von XML genügt.
Die wichtigsten Regeln sind hierbei:
- Es muss genau ein Element geben (das Wurzel-Element), welches alle weiteren Elemente enthält.
- Für jedes dieser Elemente müssen die öffnenden und schließenden Tags vorhanden sein oder das Element muss im Tag explizit als leer gekennzeichnet werden.
- Die Elemente können verschachtelt sein, dürfen aber nicht überlappen.
- Alle Attribute müssen einen Wert haben, der von einfachen oder doppelten Anführungszeichen eingeschlossen ist.
- Elemente dürfen keine zwei Attribute mit demselben Namen haben.
Während sich die Wohlgeformtheit nur auf den syntaktischen Aufbau bezieht, betrachtet die Eigenschaft
der Gültigkeit auch die Struktur bzw. den Inhalt eines Dokuments.
Hierbei wird allerdings ein wohlgeformtes Dokument vorausgesetzt, d.h. ein Dokument kann wohlgeformt
und nicht gültig sein. Ein gültiges, nicht wohlgeformtes Dokument ist hingegen unmöglich.
Für die Entscheidung, ob der Inhalt eines Dokuments gültig ist, muss zusätzliche die Angabe eines Schemas erfolgen.
|
Unter einem Schema (griech. von "Gestalt") versteht man in der Wissenschaft die Darlegung, Zeichnung oder Programmierung
eines grundsätzlichen Aufbaues oder Verlaufes.
|
Definiton nach Wikipedia
|
Im Bereich von XML bedeutet diese Definition, dass mit einem Schema die strukturelle Gliederung eines XML-Dokuments beschrieben werden kann.
Dies schließt einerseits die Beschreibung der erlaubten Elemente und Attribute (Namen und mögliche Wertebereiche), sowie andererseits
die Information wie diese Elemente untereinander verschachtelt werden können, ein.
Die Angabe des Schemas kann durch eine beliebige Schema Sprache, wie beispielsweise einer Dokument Typ Definition (DTD), einem
W3C XML Schema oder durch Relax NG, erfolgen.
Der XML-Prozessor ist dann in der Lage, ein Instanz-Dokument gegen das Schema zu validieren und dabei zu prüfen, ob das Dokument der geforderten Struktur
entspricht und somit Gültigkeit besitzt.
Es gilt dabei aber zu beachten, dass der gewählte Prozessor die entsprechende Schema Sprache unterstützt und allen am Austausch des XML-Dokuments
beteiligten Anwendern auch zur Verfügung steht.
Im Rahmen dieser Ausarbeitung sollen die Schema Sprachen DTD, W3C XML Schema und Relax NG miteinander verglichen werden. Dabei wird im folgenden Kapitel kurz auf
die Möglichkeiten der Dokument Typ Definition sowie ihrer Stärken und Schwächen eingegangen.
Der Hauptteil dieser Ausarbeitung fokusiert sich anschließend auf die beiden Sprachen W3C Schema und Relax NG, da sie dem aktuellen Entwicklungsstand von Schema Sprachen
entsprechen und eine Vielzahl weiterer Ausdrucksmöglichkeiten bieten.
|