Die Extensible Markup Language (XML) als Kern neuer Technologien für das Web


Term Paper (Advanced seminar), 2000

22 Pages, Grade: 1,3


Excerpt


Inhaltsverzeichnis

1 Einleitung - Aufgabenstellung

2 Die Extensible Markup Language XML
2.1 Verschiedene Arten der Auszeichnung
2.2 Entstehungsgeschichte und Entwurfsziele
2.3 Struktur von XML-Dokumenten
2.3.1 Prolog
2.3.2 XML-Dokumentinstanz
2.3.3 Dokument Typ Deklaration

3 Beziehung zu anderen Standards des W3C
3.1 Anwendungen von XML
3.2 Standards zum Datenzugriff
3.3 Standards zur Darstellung und Transformation

4 Einsatzmöglichkeiten von XML

5 Literaturverzeichnis

Beispielverzeichnis

2.1 Visuelles Markup - Satzanweisungen in TgX

2.2 Generisches Markup - Makro in PTgX

2.3 Allgemeines logisches Markup

2.4 Ein wohlgeformtes und gültiges XML·Dokument

2.5 Ein XML-Dokument mit Prolog und Dokumenteninstanz

2.6 Eine XML Dokument Typ Deklaration

3.1 Ein XHTML 1.0 Dokumente

3.2 MathML Presentation Markup

3.3 MathML Content Markup

3.4 Location Path

3.5 Ein erweiterter Link in XLink

3.6 XPointer

3.7 Cascading Style Sheet

3.8 Prinzip von XSLT

Abkürzungsverzeichnis

Abbildung in dieser Leseprobe nicht enthalten

1 Einleitung - Aufgabenstellung

Das Ziel dieser Hauptseminararbeit besteht in der Darstellung der Extensible Markup Language XML als Kern neuer Technologien im Web. Die Aufgabenstellung lautet:

Es sollen die wesentlichen Ideen und Einsatzmöglichkeiten von XML erläutert und die Beziehung dieser Meta-Sprache zu anderen Standards des W3C wie DOM, XSL, XPath, XLink, XQL, HTML, XHTML usw. dargesteht werden.

Zum besseren Verständnis sollen die Konzepte und die grundlegende Syntax an einem Beispiel demonstriert werden.

In dieser Arbeit wird nun versucht die Konzepte von XML sowie den grundsätzliche Aufbau von XML^Dokumenten darzustellen. Anschließend werden im Überblick verschiedene Standards des World Wide Web Consortiums (W3C) vorgestellt. Diese umfassen Anwendungen von XM L, Möglich^ keitenzum Datenzugriff sowie Sprachen zur Transformation und Formatierung von XML^Dokumenten. Da diese Arbeit als thematischer Überblick konzipiert ist, wird an mancher Stelle auf tiefergehen­de Informationen verzichtet. Zur intensiveren Beschäftigung mit dem Thema sei die angeführte Literatur empfohlen.

2 Die Extensible Markup Language XML

2.1 Verschiedene Arten der Auszeichnung

Um die Konzepte von XM L zu verstehen werden in dieser Arbeit zu Beginn die verschiedenen Arten der Auszeichnung erläutert. Danach wird auf die Entstehungsgeschichte und die Entwurfsziele von XML eingegangen.

Die folgende Darstellung und Abgrenzung der verschiedenen Möglichkeiten der Auszeichnung (Mark­up) lehnt sich an [GO/RA 2000] S. 270 f. an.

Visuelle Auszeichnung

Mit dem Einzug der Computertechnik in den Schriftsatz bzw. die elektronische Text- und Doku- mentenverarbeitung ging auch die Frage einher, wie Struktur und Layout von Dokumenten neben dem eigentlichen Inhalt zu behandeln und zu speichern sind.

Das visuelle Markup beschreitet dabei den zunächst einfacheren Weg. Es bettet die Formatierungs­anweisungen direkt in den Text ein. Hierdurch ist eine sehr genaue Kontrolle über das Layout zu erreichen. Eine bekannte Ausprägungsform der visuellen Auszeichnung ist das "What you see is what you get“-Prinzip (WYSIWYG), das vor allem zusammen mit den grafischen Benutzerober­flächen auch in die Textverarbeitungsprogramme Eingang gefunden hat.

Durch visuelles Markup lassen sich schnell Ergebnisse erzielen, die zudem sofort überprüft und abgeändert werden können. Trotzdem werden eigentlich Fachleute benötigt, um wirklich anspre­chende Layouts zu verwirklichen. Ein schwerwiegender Nachteil besteht allerdings in dem hohen Änderungsaufwand von solchermaßen ausgezeichneten Dokumenten. Dieser rührt daher, daß bei visueller Auszeichnung keine klare Trennung der Struktur der Information auf der einen Seite und der Darstellung auf der anderen Seite erfolgt.

Im Beispiel 2.1 ist hier ein Codefragment der Satzsprache TgX zu sehen. Ohne den Inhalt der 3. Zeile zu kennen, ist wohl nicht sofort ersichtlich, daß hier eine Kapitelüberschrift formatiert wird.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 2.1: Visuelles Markup - Satzanweisungen in TgX

Generische Auszeichnung

Durch die stark anwachsende Menge an zu verarbeitenden elektronischen Dokumenten stellt sich heute die Frage, ob der Ansatz des visuellen Markups richtig ist. Die Dokumente sollen nach Möglichkeit einfach eingegeben, verarbeitet, eingesehen, ausgetauscht und verteilt werden. Zu­dem sollen aus einem Quelldokument möglichst alle der gewünschten verschiedenartigen Ansich­ten erzeugt werden. All dies wird durch die visuelle Auszeichnung praktisch nicht unterstützt.

An dieser Stelle setzt die generische Auszeichnung an. Sie trennt klar zwischen Struktur, Inhalt und Layout eines Dokumentes. Bei generischer Auszeichnung bleiben hierarchische Strukturen und lo­gische Bezüge zwischen Elementen der Dokumente erhalten. Diese Strukturinformation sind wert­volle Meta-Informationen, die in einem generisch ausgezeichneten Dokument erhalten bleiben.

Es ergeben sich somit bei konsequenter Anwendung einer generischen Auszeichnung folgende Vor­teile:

- Höhere Qualität der Dokumente

Dies wird unter anderem durch die leichtere und damit weniger fehleranfällige Eingabe und einer erhöhten Lesbarkeit der Dokumente erreicht. Dariiberhinaus kann die Struktur des Dokumentes gegen Vorlagen geprüft werden.

- Längerer Lebenszyklus der Dokumente

Durch die rationelleren Möglichkeiten der Überarbeitung, Verarbeitung und Pflege der Do­kumente können diese über einen längeren Zeitraum hinweg sinnvoll genutzt werden.

- Geringere Kosten der Publikation

Die Kosten der Publikation sinken, da aus einem Quelldokument die unterschiedlichsten Zieh dokumente erzeugt werden können.

- Gesteigerte Wiederverwendbarkeit

Dokumente und die darin enthaltenen Informationen können durch die enthaltenen Meta­Informationen einfacher wiederverwendet werden. Der Wert des Dokumentes steigt hier­durch.

Im Beispiel 2.2 wird eine Codefragement der Makrosprache ШеХ gezeigt. Es ist sehr leicht zu erkennen, daß hier eine Kapitelüberschrift generisch ausgezeichnet wird. Das konkrete Layout ist an dieser Stelle noch nicht festgelegt.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 2.2: Generisches Markup - Makro in ETgX

Allgemeine logische Auszeichnung

Der nächste Schritt führt nun vom Gedanken der generischen Auszeichnung zur allgemeinen lo­gischen Auszeichnung. Es werden Dokumenteninstanzen die eine gleiche oder ähnliche logische Struktur aufweisen (z.B. Bücher, Artikel , ...) zu Dokumentklassen zusammengefaßt. Dies er­scheint sinnvoll, da z.B. jedes Buch weitgehend die gleichen Strukturen aufweist (Titel, Vorwort, Inhaltsverzeichnis, Kapitelüberschrift, ...)

Die Beschreibung einer Klasse von Dokumenten ist die Dokument Typ Deklaration (DTD). Darin werden die erlaubten Elemente und ihre strukturelle Beziehung festgelegt.

Ein Dokument wird nun mit diesen Elementen und nach den definierten Regeln mittels Marken (engl.: Tags) ausgezeichnet. Die Tags enthalten die Meta-Information und schließen den eigentli­chen Inhalt ein.

Im Beispiel 2.3 wird etwas "SGML und XML“ mit <tit> als Titel ausgezeichnet.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 2.3: Allgemeines logisches Markup

2.2 Entstehungsgeschichte und Entwurfsziele

Entstehungsgeschichte

Nachdem nun die verschiedenen Arten der Auszeichnung erläutert worden sind, folgt nun die EnV Wicklungsgeschichte der Auszeichnungssprachen bis hin zu XML. Die Ausführungen lehnen sich dabei an [GO/RA 2000] S. 272 ff. an.

Man erkannte schnell, daß zur Nutzung des vollen Potentials einer Auszeichnungssprache ein stan­dardisiertes und möglichst auch offenes Format benötigt wird. Der erste Standard war ein generi­scher Drucksatzcode (GenCode) der Graphic Communications Association in den 60er Jahren. Auch IBM entwickelte für den eigenen Gebrauch eine "Generalized Markup Language“ (GML), die be^ reits die bis heute verwendeten Tags zur Auszeichnung verwendet. Diese beiden Standards waren Grundlage der schließlich 1986 von der International Standards Organization (ISO) in ISO 8879 spezifizierten Meta Auszeichnungssprache "Standard Generalized Markup Language“ (SGML).

Mit SGML steht eine mächtige Sprache bereit um Dokumente generisch auszuzeichnen. Leider ist SGM L sehr komplex und erfordert einigen Aufwand bis sinnvolle Ergebnisse erzielt werden können. Aus diesem Grund wird es bis heute vornehmlich von großen Organisationen genutzt.

Dagegen hat die "Hypertext Markup Language“ (HTML), die als SGML^DTD definiert ist, mit dem Siegeszug des World Wid Web (WWW) eine sehr große Verbreitung gefunden. Neben dem Vorteil der Einfachheit leidet HTML aber auch an einigen Nachteilen. Hier wäre der statische HTML^ Syntax zu nennen, der keine Erweiterung der Sprache erlaubt. Genausowenig erfolgt eine echte Validierung eines Dokumentes vor der Benutzung. Heute wird HTML in den meisten Fällen für visuelles Markup eingesetzt.

Bedingt durch die Mängel beider Auszeichnungssprachen und durch die schnelle Entwicklung des gesamten Internets entstand bald der Bedarf nach einer flexiblen, erweiterbaren aber trotzdem einfachen standardisierten Auszeichnungssprache. In einer SGM L^Arbeitsgruppe des W3C wurde in relativ kurzer Zeit eine solche Metasprache entwicklt und am 10.02.1998 unter dem Titel "Extensi­ble Markup Language (XML) 1.0“ als Empfehlung (Recommendation) herausgegeben. Mittlerweile ist eine geringfügig überarbeitet zweite Version "XML 1.0 Second Edition“ [W3C^XML 2000] am 06.10.2000 als Empfehlung veröffentlicht worden.

Entwurfsziele

Die Ziele,die mit dem Entwurf von XML nach [W3C^XML 2000] verfolgt wurden, sollen hier kurz erläutert werden:

- XML soll sich im Internet auf einfache Weise nutzen lassen. Insbesondere sollen XML^Dokumente so schnell und einfach wie HTML^Dokumente ange^ sehen werden können.
- XML soll ein breites Spektrum von Anwendungen unterstützen. Damit wird der Anwendungsbereich von XML nicht auf das Web festgelegt sondern sehr viel allgemeiner gefaßt.
- XML soll zu SGML kompatibel sein. XML als echte Teilmenge von SGML soll Kompatibi­lität mit vorhandenen SGML-Systemen sicherstellen, um Know-How und Investitionen zu schützen.
- Es soll einfach sein, Programme zu schreiben, die XML-Dokumente verarbeiten. Durch Vermeidung von schwierigen und aufwendig zu implementierenden Funktionen soll die Sprache einfach gehalten werden.
- Die Zahl optionaler Merkmale in XML soll minimal sein, idealerweise Null. Mit dieser Maßnahme soll die Kompatibilität von XML-Dokumenten mit jeder XML-Anwendung sichergestellt werden.
- XML-Dokumente sollten für Menschen lesbar und angemessen verständlich sein. Damit wird ein besseres Verständnis ermöglicht und man kann XML Dokumente mit einfa chen Werkzeugen erstellen.
- Der XML-Entwurf sollte zügig abgefaßt sein. Durch diese Forderung soll (und wurde) schnell ein offener Standard geschaffen.
- Der Entwurf von XML soll formal und präzise sein. Dadurch wird die Beherrschung der Sprache erleichtert und es wird die Möglichkeit geschah fen, mit relativ einfachen Technologien XML-Dokumente zu analysieren.
- XML-Dokumente sollen leicht zu erstellen sein. Korrekte XML-Dokumente sollen sich ohne größere Schwierigkeiten z.B. mit intelligenten Editoren erstellen lassen.
- Knappheit von XML-Markup ist von minimaler Bedeutung. Mit diesem Teilziel soll die Lesbarkeit für den Benutzer gesteigert werden.

Das Ergebnis dieser Bemühungen ist eine Meta-Auszeichnungssprache, von der es in [GO/RA 2000] auf S. 275 heißt: "XML biete etwa 90% der Funktionalität von SGML, bei nur etwa 10% seiner Kom­plexität.“ Damit bietet sich XML im Gegensatz zu SGML für viele Nutzer und die verschiedenar­tigsten Anwendungsbereiche an.

2.3 Struktur von XML-Dokumenten

Nachdem nun die Entwicklungsgeschichte und die Entwurfsziele dargestellt wurden, soll nun ein Überblick über den Aufbau von XML-Dokumenten gegeben werden. Dieser ist keinesfalls als vollständig zu sehen. Der interessierte Leser sei hier insbesondere an die Empfehlung des W3C zu XML [W3C-XML 2000] verwiesen. Der folgende Überblick über die Struktur von XML-Dokumenten lehnt sich an [GO/RA 2000] S. 277 ff. an.

Grundidee

Grundsätzlich besteht ein XML-Dokument aus einer Menge von Entitäten bzw. Objekten. Dies können z.B. Dateien, Bilder oder sonstige Multimedia-Dokumente sein.

Jede Entität muß in der Regel ein Wurzelelement (root element) enthalten. Ausgehend von die­sem "Wächst“ die hierarchische Baumstruktur aus geschachtelten Elementen eines jeden XML- Dokumentes. Zudem können Elemente Attribute besitzen, mit denen sich bestimmte Eigenschaft ten von Elementen näher beschreiben lassen.

Dariiberhinaus wird von einem korrekten XM L Dokument die Wohlgeformtheit (engl. : well-formedness) gefordert. Die Wohlgeformtheit wird durch das Einhalten gewisser Regeln erreicht. Im wesentli­chen wird die Existenz eines Prologs, eines Wurzelelements und die korrekte Anordnung der Tags gefordert. Das bedeutet insbesondere eine ausgeglichene und nicht überlappende Anordnung der Tags. Die Wohlgeformtheit ist die notwendige Voraussetzung, um Dokumente später sinnvoll mit einem XML-Parser analysieren und manipulieren zu können. Das Beispiel 2.4 zeigt alleine in den Zeile 7-15 schon ein wohlgeformtes XML-Dokument.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 2.4: Ein wohlgeformtes und gültiges XML-Dokument

Dieses beispielhafte XML-Dokument geht aber noch einen Schritt weiter und erfüllt auch das Kri­terium der Gültigkeit (validity). Das bedeutet, daß es den in der DTD deklarierten Regeln entspricht und aus den dort definierten Elementen aufgebaut ist. Im Beispiel 2.4 wurde eine interne DTD in Zeile 2-6 deklariert. In Zeile 2 wird als Wurzelelement das Element dok angegeben und in Zeile 3 sein Inhalt deklariert. Im Beispiel besteht es wahlweise mindestens aus den Elementen liste oder punkt. Diese strukturelle Beziehung wird auch in den Zeilen 7 -15 im Rumpf des Dokumentes erfüllt. Es liegt hier also ein gültiges und damit auch wohlgeformtes XML-Dokument vor.

2.3.1 Prolog

Ein gültiges XML-Dokument beginnt immer mit einem Prolog. Im Prolog erfolgt die XML-Deklaration und die Dokument Typ Deklaration.

In der ersten Zeile muß zwingend die XML-Deklaration stehen wie am Beispiel 2.5 zu erkennen ist. Durch das ersten Attribut wird die genutzte Version von XM L festgelegt (zur Zeit ist nur Version 1.0 möglich). Das zweite Attribut legt die Zeichensatzcodierung fest. Das ist nötig, da XML vollständig auf Unicode basiert. Im dritten Attribut wird schließlich festgelegt, daß externe Entitäten einge­bunden werden müssen.

Auf die XM [^Deklaration folgt in Zeile 2 die Deklaration des Dokumenttyps mittels des DOCTYPE- Schlüsselwortes. In diesem Beispiel wird das Element invitation aus einer externen DTD als Wur­zelelement deklariert. Mittels des SYSTEM-Schlüsselwortes wird eine externe DTD eingebunden und eine lokale Datei als Quelle festgelegt.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 2.5: XML-Dokument mit Prolog und Dokumenteninstanz (nach [GO/RA 2000] S. 280)

2.3.2 XML-Dokumentinstanz

Nach den Deklarationen im Prolog folgt nun die eigentliche Dokumenteninstanz: Der mit Tags ausgezeichnete Text. Im Beispiel 2.5 sind dies die Zeilen 3 -14. Dem Inhalt wird durch Einschluß in ein Anfangstag (gegebenenfalls mit Attributen) und ein Endtag die gewünschte Semantik verliehen. In Zeile 6 des Beispiels wird mit <date> und </date> der Zeichenkette 11.12.2000 die Bedeutung eines Datums verliehen. Durch Einschachtelung in die Tags <front> und <invitation> wird auch klar, daß es sich dabei um das Datum einer Einladung handelt und dieses mit anderen Daten auf der Vorderseite erscheinen soll. Durch diese konsequente Anwendung der definierten Elemente wird ausgehend vom Wurzelelement eine hierarchische Baumstruktur aufgebaut.

2.3.3 Dokument Typ Deklaration

Die Regeln zum Aufbau dieser Baumstruktur werden in der DTD definiert. Mit den Regeln der DTD wird also die Meta-Sprache XML zu einer konkret anwendbaren und überprüfbaren Aus­zeichnungssprache für die unterschiedlichsten Zwecke.

Um eine Grammatik zu definieren, kann eine DTD sowohl im XML-Dokument selbst deklariert werden als auch eine externe DTD eingebunden werden. Das macht Sinn, denn hierdurch lassen sich Standard-DTD entwickeln und zur Verfügung stellen. Durch deren Benutzung ist dann bei ge­nau definiertem Sprachumfang die Kompatibilität des damit ausgezeichneten XML-Dokumentes gesichert.

Grundsätzlich werden in einer DTD die wesenlichen Elemente sowie deren logischer Zusammen^ hang, deren Attribute und Entitäten deklariert. Im Beispiel 2.6 wird in Zeile 1 invitation als Wur^ zelelement deklariert. Es muß sich zwingend und in dieser Reihenfolge aus den Elementen front, body und back zusammensetzen. Das Element body wiederum muß eines oder mehrere Elemente des Typs par enthalten (Zeile 8). Auf eine weitere und genauere Beschreibung aller Möglichkeiten wird an dieser Stelle verzichtet.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 2.6: Eine XML Dokument Typ Deklaration (aus [GO/RA 2000] S. 281 f.)

Neben Elementen können Attribute für Elemente definiert werden. Zu diesem Zweck stehen Type wie Zeichenketten, zerlegte Typen oder Aufzählungstypen zur Verfügung.

Über Entitätsdeklarationen können Abkürzungen definiert werden oder externe Entitäten in das Dokument eingebunden werden. Beispielsweise läßt sich so ein auf verschiedene Dateien aufge^ teiltes Dokument wieder zusammenfassen oder Bilder in den Text einbinden.

Durch die Möglichkeiten, eine DTD für jeden beliebigen Anwendungsbereich zu definieren, erreicht man eine sehr große Flexibilität und Erweiterbarkeit der Metasprache XML. Auf der anderen Seite wird die Kompatibilität von XML^Dokumente aber durch die Bereitstellung standardisierter und öffentlich verfügbarer DTD ermöglicht.

3 Beziehung zu anderen Standards des W3C

3.1 Anwendungen von XML

Nachdem jetzt die grundsätzlichen Konzepte und Strukturen von XML geklärt sind, soll die Be- ziehnung von XML zu anderen Standards des W3C geklärt werden. Als Quelle dienen in der Regel die jeweiligen Dokumente auf den Webseiten des W3C.

In diesem Kapitel sollen nun verschiedene Anwendungen von XML vorgestellt werden. Zwei Emp­fehlungen des W3C werden etwas ausführlicher dargestellt. Andere Anwendungsmöglichkeiten von XML, die zum Teil auch noch nicht als Empfehlung des W3C ausgesprochen wurden, werden nur kurz angeführt.

Extensible HyperText Markup Language (XHTML)

Die Auszeichnungssprache "Extensible HyperText Markup Language 1.0“ wurde vom W3C im Ja­nuar 2000 als Empfehlung ausgesprochen [W3C-XHTML 2000]. In dieser Empfehlung wird HTML 4.0 als XML-DTD neu formuliert. Dabei wurden Semantik, Elemente und Attribute in den drei DTD XHTML 1.0 Strict, XHTML 1.0 Transitional und XHTML 1.0 Frameset deklariert.

Es wurden in diesem Zuge keine weitreichenden Erweiterungen von HTML vorgenommen, sondern lediglich einige nicht mit XML verträglichen Konstrukte und Eigenschaften von HTML konform zu XML redefiniert. Zum Beispiel muß jetzt auch ein XHTML-Dokument wohlgeformt sein, sich überlappende oder fehlende End-Tags sind verboten und Attribute müssen immer in der Form Attribut="Wert" innerhalb eines Tags genutzt werden.

Mit diesem Schritt wurden einige Vorteile erschlossen. Durch die Formulierung als XML-Anwen- dung ist sichergestellt, daß XHTML-Dokumente XML-konforme Dokumente sein müssen. Als wohlgeformte und gültige XML-Dokumente können XHTML-Dokumente auch leicht mit jedem XML-Werkzeug transformiert oder automatisiert ausgewertet werden. Über das DOM (vgl. Sei­te 11) für XML oder XHTML sind Zugriffe und Manipulationen des XHTML-Dokumentes durch andere Anwendungen möglich. Als echte XML-Anwendung ist XHTML natürlich auch erweitere bar. Trotzdem ist es in der Version 1.0 bei Beachtung weniger Richtlinien mit jedem HTML 4.0 konformen Browser darstellbar. Mit der Abwärtskompatibilität sollten also keine Probleme bei der frühzeitigen Umstellung von Dokumenten nach XHTML auftreten. Das volle Potential wird XHTML aber erst entfalten können, wenn die Browser und sonstige Anwendungen mehr der nun möglichen Méta-Information auswerten.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 3.1: Ein XHTML 1.0 Dokumente aus [W3C-XHTML 2000]

Im Beispiel 3.1 ist in Zeile 2 die verwendete DTD (XHTML 1.0 Strict) zu erkennen. Klar ist auch zu sehen, daß im Gegensatz zu HTML das <p> mit </p> zu schließen ist.

Mit dem Attribut xmlns kann innerhalb eines XM [^Dokumentes auf verschiedenen Namensräume zugegriffen werden. Das bedeutet, daß in einem XML^Dokument verschiedene DTD und damit Sprachen Verwendung finden können. Um Verwechselungen zu verhindern, wird für jede Sprache ein eigener Namensraum genutzt.

Mathematical Markup Language (MathML)

Neben einer Empfehlung zu XHTML existiert bereits eine Empfehlung des W3C von Juli 1999 zu "MathML 1.01“ [W3C-MATHML 1999]. Mit MathML soll es ermöglicht werden, mathematische Inhalte über das Netz anzubieten, abzurufen und zu verarbeiten. Ebenso soll eine Transformation in andere mathematische Notationen möglich sein. Damit will MathML vor allem die Beschränkt^ heit von HTML in Bezug auf die Publikation von mathematischen Ausdrücken aufheben. Meist werden mangels anderer geeigneter Möglichkeiten mathematische Formeln in HTML als Grafiken eingebunden. Das bringt eine Reihe von Nachteilen mit sich. Es sei nur auf das Problem der Ska- lierung und die Suche nach einer solchen Formel hingewiesen.

MathML versucht diese Probleme zu lösen, in dem es Möglichkeiten bietet einmal die Notation einer mathematischen Formel zu beschreiben (Presentation Markup) und zum anderen den ma­thematischen Sachverhalt an sich auszuzeichnen (Content Markup).

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 3.2: MathML Presentation Markup nach [W3C-MATHML 1999]

Bei der Auszeichnung mittels Presentation Markup werden wie in Beispiel 3.2 dargestellt Lay^ outelemente ausgezeichnet. Mit <mrow> wird eine horizontale Anordnung der eingeschlossenen Elemente vorgegeben. Mit <mi> wird eine Variable ausgezeichnet und mit <mo> ein Operatior. Es wird also eine konkrete mathematische Notation vorgegeben.

Oft ist es aber vorteilhafter, statt einer konkreten Notation den zu Grunde liegenden mathemati- sehen Sachverhalt auszuzeichnen. Das ist von Vorteil, wenn es einerseits gar nicht um eine visuelle Darstellung des Sachverhaltes geht. Andererseits ermöglicht diese Vorgehensweise weitergehende Auswertungsmöglichkeiten des Inhaltes von MathML^Dokumenten.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 3.3: MathML Content Markup nach [W3C-MATHML 1999]

Dieses Konzept des Content Markup wird auch von MathML unterstützt. Im Beispiel 3.3 ist der gleiche Sachverhalt wie im Beispiel 3.2 dargestellt. Allerdings wurde er diesmal als Content Markup ausgezeichnet. Mit Hilfe des Tags <apply> wird das mathematische Konzept der Summe (Tag <plus/>) auf die eingeschlossenen Elemente angewendet.

Weitere Anwendungen

Im weiteren soll noch kurz auf einige weitere Anwendungen von XML eingegangen werden.

Seit Juni 1998 liegt eine Empfehlung des W3C zur "Synchronized Multimedia Integration Language (SMIL) 1.0“ [W3C-SMIL 1998] vor. Mit dieser Sprache sollen unabhängige multimediale Objekte in eine synchrone Multimedia-Präsentation eingebunden werden. Dabei läßt sich das zeitliche Verhalten und das Layout der Präsentation mit SMIL beschreiben. Außerdem sind Verknüpfungen zwischen den Multimediaobjekten möglich.

Noch im Status als Anwärter einer Empfehlung (Candidate Recommendation) befindet sich die "Scalable Vector Graphics (SVG) 1.0 Specification“ [W3C-SVG 2000]. Mittels SVG können zweidi­mensionale Vektorgrafiken und gemischte Vektor-Rastergrafiken beschrieben werden. Interessant ist dabei der Zugriffund die Manipulation der Grafik über ein eigenenes DOM. Außerdem können Ereignisse über das DOM bearbeitet werden.

Ebenfalls eine Candidate Recommendation ist "XML Schema“ [W3C-XMLSCH 2000]. XML Sche­ma kann als Möglichkeit zur Deklaration von DTD betrachtet werden. Dabei wird der XML Syntax benutzt und nicht wie zur Zeit eine eigene Syntax zur Deklaration der DTD. Zudem wird die Typi­sierung von Elementen und Attributen ermöglicht, sowie die Möglichkeit geschaffen, Constraints zu definieren. Diese Eigenenschaften machen XML Schema vor allem für den elektronischen Da­tenaustausch (man denke an E-Business) mittels offener standardisierter Formate interessant.

Genau wie XML Schema ist auch die "Resource Description Framework (RDF) Schema Specification 1.0“ [W3C-RDF 2000] nur ein Empfehlungskandidat. Sie definiert ein Rahmenwerk als Grundlage für den Austausch und die Verarbeitung von Metadaten über (Web-)Resourcen. Hiermit soll unter anderem eine automatisierte Verarbeitung erleichtert werden. Anwendungsmöglichkeiten sind z.B. Suchmaschinen oder intelligente Agenten, die diese Information auswerten.

3.2 Standards zum Datenzugriff

Nachdem nun einige konkrete in XML definierte Sprachen vorgestellt wurden, soll nun auf die Möglichkeiten des Zugriffs auf Struktur und Inhalt von XML-Dokumenten eingegangen werden. Auf DOM wird nur relativ kurz ein Blick geworfen, da zu diesem Thema ein eigener Vortrag im Rahmen der Hauptseminarreihe gehalten werden wird.

Document Object Model (DOM)

Das "Document Object Model (DOM) Level 2“ [W3C-DOM 2000] wird in einer Reihe im Novem­ber 2000 vom W3C veröffentlichten Empfehlungen beschrieben.

Es bietet eine plattform- und sprachunabhängige Schnittstelle zum dynamischen Zugriff auf die Struktur und den Inhalt von XML-Dokumenten. Programme und Skripte können über diese Schnitt­stelle XML-Dokumente auslesen und auch manipulieren.

Zu diesem Zweck wird das XML-Dokument komplett eingelesen und seine Struktur analysiert (engl.: parsing). Die Struktur wird anschließend im Hauptspeicher als Baumstruktur mit einem

Wurzelknoten dargestellt. Über diesen Baum können dann die verschiedenen Operationen aus­geführt werden. Außerdem bietet DOM ein generisches Event-System mit dem z.B. auf Aktionen der Benutzer reagiert werden kann.

XML Path Language (XPath)

Um auf Teile von XML-Dokumenten zugreifen zu können, benötigt man Mechanismen um Doku­mente und Teile davon zu adressieren. Diese Sprache wurde im November 1999 als "XML Path Language (XPath) Version 1.0“ [W3C-XPATH 1999] vom W3C empfohlen. Teile dieser Empfehlung stellen die Grundlage für die später dargestellten Sprachen XPointer und XLST dar. Dazu ist noch zu bemerken, daß XPath keine eigenständig verwendbare Sprache ist.

Nach [STO 2000] S. 70 besteht das Hauptziel von XPath aus der Abfrage von Teilen eines XML- Dokumentes. Aus diesem Grund enthält XPath Funktionalitäten, um Strings, Nummern und bool- sehe Datentypen behandeln zu können. Wie DOM betrachtet XPath das XML-Dokument als einen Baum mit unterschiedlichen Knotentypen (z.B. Wurzel-, Element-, Attribut-, Textknoten). Inner­halb des Baumes wird nun ein Weg definiert um den gesuchten Knoten erreichen zu können. Diesen Weg bezeichnet XPath als Location Path. Dieser kann absolut (vom Wurzelknoten aus) oder relativ (vom aktuellen Knoten aus) beschrieben werden.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 3.4: Location Path (aus [W3C-XPATH 1999])

Im Beispiel 3.4 wird in Zeile 1 ein Location Path gezeigt, der auf den Wurzelknoten paßt. Zeile 2 selektiert alle Kindknoten vom Typ Element des aktuellen Knotens. In der letzten Zeile wird schließlich nach einem ersten Kindknoten vom Typ para des aktuellen Knotens gesucht.

XML Linking Language (XLink)

Die Funktionalität von XPath wird von XLink verwendet, um Verknüpfungen aus XM L Dokumenten zu beschreiben. Die "XML Linking Language (XLink) Version 1.0“ [W3C-XLINK 2000] wurde im Juli 2000 vom W3C als Empfehlungskandidat veröffentlicht.

Im Zusammenhang mit Links sollen hier kurz die Begriffe Uniform Resource Identifier (URI), Uni­form Resource Name (URN) und Uniform Resource Locator (URL) geklärt werden. Der Oberbegriff URI ist allgemein gehalten und umfaßt sowohl URN als auch URL. Unter einem URI versteht man einen kurzen Bezeichner um eine Resource zu referenzieren. Ein URN ist ein URI für die (von einer Organisation) für die Beständigkeit und Verfügbarkeit garantiert wird. Ein URL ist hingegen ein URI bei dem explizit die Art und Weise des Zugriffs angegeben ist. Das zeigt sich bei einem URL durch die Angabe des Protokolls, mit dessen Hilfe auf die Resource zugegriffen werden soll.

XLink ermöglicht nun die Beschreibung von Links aus XML-Dokumenten auf eine Resource die durch einen URI adressiert wird. Diese Links können einfache unidirektionale Links sein. Diese Links bieten im Wesentlichen die gleichen Funktionalitäten wie die bekannten Links aus HTML. Zusätzlich kann aber bei allen Links mittels Attributen z.B. die Rolle oder Behandlung bestimmt werden.

Neben einfachen Links stellt XLink auch erweiterte Links bereit. Diese können bidirektional sein und sogar auf mehrere Ziele verweisen. Über Durchlaufregeln kann die Reihenfolge bestimmt wer­den, in der die einzelnen Links angesprungen werden. Zudem können entfernte Resourcen durch den Link nicht nur referenziert werden, sondern auch direkt bei der Darstellung im Dokument am gezeigt werden.

Beispiel 3.5 zeigt ein erweiterter Link. In dem Link (Zeile 1) werden vier mögliche Zielresourcen (Zeile 2-5) angegeben. Ein Browser könnte hier z.B. ein entsprechendes Menü öffnen, über den der jeweilige Link dann ausgewählt werden kann.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 3.5: Ein erweiterter Link in XLink (aus [BE/MI])

XML Pointer Language (XPointer)

Genau wie XLink basiert die vorgeschlagene Empfehlung "XML Pointer Language (XPointer) Ver­sion 1.0“ [W30XPTR 2000] des W3C vom Juni 2000 auf XPath. XPointer stellt Möglichkeiten zur adressierung von XML^Fragmenten in XML-Dokumenten dar. Die interne Struktur eines XML- Dokumentes kann über Elementtypen, Attributtypen, Inhalt oder relative Position adressiert wer­den. Mit einem XPointer im Format UEI#XPointer kann einerseits gezielt ein Ort (Point) anderer^ seits auch ein ganzer Bereich (Range) angesprochen werden.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 3.6: XPointer (aus [BE/MI])

Über den XPointer in Zeile 1 des Beispiels 3.6 wird auf das vierte Element des Typs Kapitel im Dokument verwiesen. In Zeile 2 wird über einen XPointer ein ganzer Bereich angesprochen. Der Bereich erstreckt sich vom vorletzten Absatz (P) des vierten Kapitels bis zum dritten Absatz des fünften Kapitels.

Weitere

Im Zusammenhang mit XPointer kann noch XML Base [W3C-XMLBASE 2000] erwähnt werden. In dieser Spezifikation wird eine Möglichkeit beschrieben, wie Basis URI für Teile eines XML- Dokumentes ähnlich dem HTML BASE definiert werden können.

Erwähnenswert ist auch XML^Query [W3C^XMLQ 2000]. Diese an SQL angelehnte Sprache soll die bequeme Formulierung von Anfragen an XML-Datenquellen ermöglichen. Zur Zeit befindet sich die Spezifikation aber noch in einer sehr frühen Entwurfsphase.

3.3 Standards zur Darstellung und Transformation

Ein wesentliches Merkmal einer generischen Auszeichnungssprache ist eine möglichst strikte Tren­nung von Layout und Inhalt. Um nun die mit XML ausgezeichneten Daten auch dem Nutzer präsen­tieren zu können, wird aber eine Ausgabeform benötig. Mit den Möglichkeiten zur Formatierung der Ausgabe und der Umwandlung von XML-Dokumenten werden sich die folgenden Abschnitte beschäftigen.

Cascading Style Sheets (CSS)

Ein Satz von Vorlagen die zur Formatierung auf ein Dokument angewendet werden, nennt man im Allgemeinen auch Stylesheet. Vom W3C wurde im Mai 1998 die Empfehlung "Cascading Style Sheets, level 2 CSS2 Specification“ [W3C-CSS 1998] verabschiedet.

Ziel der CSS ist es, die in HTML mit der Struktr teilweise vermische Darstellung wieder zu tren­nen. Um dies zu erreichen wählt CSS einen deklarativen Ansatz. Jedem Element kann in einem CSS konformen Stylesheet ein Style-Element zugewiesen werden. Im Beispiel 3.7 werden etwa Schriftattribute verändert oder die Textausrichtung für bestimmte XML-Elemente bestimmt.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 3.7: Cascading Style Sheet (aus [GO/RA 2000])

Da auch mehrere Style-Sheets gleichzeitig auf ein Dokument angewendet werden können wird das richtige Stilelement nach der explizit oder implizit vergebenen Priorität ausgewählt. Durch dieses Vorgehen können Konflikte aufgelöst werden, wenn z.B. neben der vom Autor vorgesehenen Stil­vorlage noch eine benutzereigene Stilvorlage angewedet werden soll.

Die Möglichkeit Dokumente mittels CSS zu formatieren bietet sich vor allem bei einfach struk­turierten und möglichst linearen Dokumenten wie etwa (X)HTML an. Diese können dann ohne weitere Nachbearbeitung dargestellt werden. Für komplexere XML-Dokumente ist dieser Mecha­nismus der Formatierung hingegen wenig geeignet. Darüberhinaus sind CSS auch nicht erweiter­bar.

Extensible Stylesheet Language (XSL)

Um diese Probleme zu lösen wurde vom W3C eine "Extensible Stylesheet Language (XSL) Versi­on 1.0“ [W3C-XSL 2000] im November 2000 als Empfehlung vorgeschlagen. Diese Sprache lehnt sich an vorangegangene Spezifikationen der ISO wie z.B. DSSSL (Document Style Semantics and Specification Language) bzw. DSSSL-Online an. XSL übernimmt die meisten Elemente von DSSSL- Online sowie CSS und erweiterte den Sprachumfang um für Stilsprachen nützliche Funktionen. Die Sprache besteht aus zwei Teilen. Einmal dem Transformationsteil "XSL Transformations“ (XSLT) und zum anderen einem Formatierungsteil. Da XSL im Detail in einem weiteren Hauptseminar dieser Reihe vorgestellt werden soll und außerdem noch nicht als Empfehlung vorliegt, soll hier nicht weiter darauf eingegangen werden. Da aber mit XSLT bereits ein Teil von XSL als Empfehlung vorliegt, sollen die Merkmale hier kurz dargestellt werden.

XSL Transformations (XSLT)

Der Transformationsteil von XSL ist bereits im November 1999 vom W3C als Empfehlung unter dem Titel "XSL Transformations (XSLT) Version 1.0“ [W3C^XSLT 1999] herausgegeben worden. XSLT stellt Funktionalitäten bereit, mit denen Quelldokumente in Zieldokumente umgewandelt werden können. Bei der Transformation der Quellbaumstruktur in die Zielbaumstruktur ist da^ bei Filterung, Neuordnung oder auch das Einfügen von Strukturen möglich. Beispielsweise ist es denkbar, daß ein Inhaltsverzeichnis durch Filterung mittels XSLT aus einem XML^Dokument er^ stellt wird. Zur Überführung von der Quelü in die Zielbaumstruktur definiert man in einem XSL^ Dokument so genannte "Template^Rules“. Diese enthalten ein Muster und eine Vorlage. Wird das Muster im XML^Dokument bei der Bearbeitung gefunden, wird die Vorlage entsprechend in die Zielbaumstruktur eingefügt. Im Beispiel 3.8 ist dies graphisch veranschaulicht.

Abbildung in dieser Leseprobe nicht enthalten

Beispiel 3.8: Prinzip von XSLT (aus [STO 2000] S. 93)

Nachdem nun in diesem Kapitel die Beziehung von XML zu weiteren Standards des W3C beschrie^ ben wurde soll nun im abschließenden Kapitel ein kurze Betrachtung der Vorteil und der möglichen Anwendungsbereiche der hier vorgestellten Standards erfolgen.

4 Einsatzmöglichkeiten von XML

Als Meta^ Auszeichnungssprache erschließt XML einen großen Bereich an Einsatzmöglichkeiten. Für den jeweiligen konkreten Anwendungsfall kann eine problemangepaßte Auszeichnungssprache definiert werden. Durch die formale Definition in der DTD kann ein XML^Dokument validiert und auf Konsistenz geprüft werden. Gleichzeitig erlaubt der semistrukturierte Ansatz der Datenhaltung aber größere Flexibilität als z.B. die Datenhaltung in streng strukturierten relationalen Datenbank^ Systemen.

Durch die strikte Trennung von Struktur, Inhalt und Darstellung werden die Aspekte der Wieder^ und Mehrfachverwendung sowie der automatisierten Verarbeitung sehr gut unterstützt.

Gerade im Business sind viele Aspekte von Bedeutung die durch XM L abgedeckte werden können. Als offener Standard ist es ein ideales Format um Daten zwischen Unternehmen (B2B) oder zwi- sehen Unternehmen und Kunde (B2C) auszutauschen. Die Vorteile treten vor allem zu Tage, wenn die Information über das WWW bzw. allgemeiner über das Internet ausgetauscht werden sollen.

Bereits jetzt existieren viele Werkzeuge um XML^Dokumente zu bearbeiten oder Geschäftsanwem düngen die sich auf XML stützen. Als Beispiel können die vielen XML-Parser, Editoren und som stigen Prozessoren angeführt werden. Mit Tamino gibt es bereits das erste Datenbanksystem, das XML direkt abspeichern kann. Mit all diesen Werkzeugen steht die Plattform bereit, um auf Basis von XML viele neue Anwendungsmöglichkeiten zu realisieren.

Selbständigkeitserklärung

Ich erkläre, daß ich diese Arbeit ohne fremde Hilfe angefertigt und nur die im Literaturverzeichnis angeführten Quellen und Hilfsmittel benutzt habe.

Ilmenau, den 18. Dezember 2000

Heiko Steigerwald

5 Literaturverzeichnis Literatur

Abbildung in dieser Leseprobe nicht enthalten

Excerpt out of 22 pages

Details

Title
Die Extensible Markup Language (XML) als Kern neuer Technologien für das Web
College
Technical University of Ilmenau  (Institut für Praktische Informatik und Medieninformatik)
Grade
1,3
Author
Year
2000
Pages
22
Catalog Number
V6183
ISBN (eBook)
9783638138154
File size
581 KB
Language
German
Notes
Sehr dicht - einzeiliger Zeilenabstand. 363 KB
Keywords
Extensible, Markup, Language, Kern, Technologien
Quote paper
Heiko Steigerwald (Author), 2000, Die Extensible Markup Language (XML) als Kern neuer Technologien für das Web, Munich, GRIN Verlag, https://www.grin.com/document/6183

Comments

  • No comments yet.
Look inside the ebook
Title: Die Extensible Markup Language (XML) als Kern neuer Technologien für das Web



Upload papers

Your term paper / thesis:

- Publication as eBook and book
- High royalties for the sales
- Completely free - with ISBN
- It only takes five minutes
- Every paper finds readers

Publish now - it's free