Fragen und Antworten |
Haupttext XML-Syntax Glossar |
Und was ist ein Dokumenttyp? Von Dokumenten, die ähnlich strukturiert sind, sagt man, daß sie demselben Dokumenttyp angehören. Beispielsweise gehören alle HTML-Dokumente dem Dokumenttyp HTML an.
Letztlich ist das die Grundidee von XML: Man sorgt dafür, daß
es Dokumente gibt, die alle in ihrem Aufbau gewissen Grundmustern folgen.
Wenn diese Grundmuster eingehalten werden, dann läßt sich
mit den Dokumenten mehr anfangen als wenn jedes Dokument eigenen Regeln
folgt. Denn es ist dann möglich, Programme zu schreiben, die die Dokumente
automatisch verarbeiten.
DTDs haben diese beiden Hauptfunktionen: Sie sagen den Verfassern von Dokumenten, welche Strukturen es in den Dokumenten geben muß. Und den Programmierern sagen sie, auf was ihre Programme "sich gefaßt machen müssen".
Wer die XML-Syntax kennt, erfährt durch Lesen einer DTD, welche Datenstrukturen es in den Dokumenten des entsprechenden Dokumenttyps gibt.
DTDs haben auch schon im Rahmen von HTML eine Rolle gespielt. In den DTDs für HTML ist festgelegt, daß innerhalb eines <UL>-Elements <LI>-Elemente auftauchen können, daß <IMG>-Elemente ALT-Atribute enthalten können und so weiter. Da es von HTML mehrere Versionen gibt, sind auch mehrere DTDs für HTML entstanden.
Im Rahmen von SGML ist es vorgeschrieben, daß jedes Dokument auf eine DTD ausgerichtet wird. Mit XML kommt an diesem Punkt mehr Freiheit ins Spiel. XML erlaubt auch Dokumente, die keinen Verweis auf eine DTD enthalten. Die Angaben, die ein Parser üblicherweise aus der DTD holen würde, muß der Parser dann beim Einlesen des Dokuments ermitteln.
Damit ein XML-Parser auf eine DTD zugreifen kann, muß sie entweder
auf dem lokalen Rechner verfügbar sein, oder aber sie muß über
das Netz abrufbar sein.
Was also ist mit der Erweiterbarkeit gemeint? Gemeint ist das Gesamtgebäude von Auszeichnungssprachen, das auf der Grundlage von XML geschaffen wird. Es ist jederzeit möglich, dieses Gesamtgebäude durch Hinzufügen von neuen Auszeichnungssprachen zu erweitern.
Gemeint ist auch, daß Firmen und Institutionen für das eigene Intranet eigene DTDs entwickeln können. Und zuletzt ist auch gemeint, daß es im Prinzip möglich ist, Tags in die eigenen Dokumente zu setzen, die nirgendwo vorher deklariert wurden. (Wie die zugehörige Praxis aussehen kann, läßt sich allerdings bisher nicht absehen.)
Im wesentlichen wird es dabei bleiben, daß es für den Web-Designer
Listen gibt, in denen aufgelistet ist, welche Tags in den Dokumenten verwendet
werden können.
XML ist eine verkürzte Version von SGML. Die komplexeren und weniger genutzten Teile von SGML wurden weggelassen, so daß es nunmehr leichter ist, verarbeitende Programme zu schreiben.
Bisher hatte HTML SGML als Grundlage. Zukünftig wird HTML XML als
Grundlage haben. Wer Web-Design lediglich als Hobby betreibt, wird von
dieser Umstellung möglicherweise überhaupt nichts bemerken.
Eine andere Frage jedoch ist sehr aktuell: Warum sollten die Office-Programme nicht mit XML-Dokumenttypen arbeiten? Die gängigen Office-Programme sind so eingerichtet, daß sie mit mehreren Dokumenttypen umgehen können, und man kann sich darauf einstellen, daß sie zukünftig auch XML-Formate unterstützen werden.
Da es weniger schwierig ist, Programme zu schreiben, die XML-basierende
Dokumenttypen verarbeiten als Programme zu schreiben, die SGML-basierende
Dokumenttypen verarbeiten, ist der Weg frei, daß neben HTML andere
Dokumenttypen entstehen.
In Dokumenten, die auf XML-DTDs ausgerichtet sind, können alle Arten von Daten übertragen werden. Das gilt für Daten über finanzielle Transaktionen, für Lieferungen von Nachrichten und Wetter-Informationen, für Krankendaten oder Daten aus juristischen Bibliotheken.
Sobald die Daten auf dem lokalen PC sind, können sie von Anwendungen
verarbeitet werden und können dynamisch präsentiert werden.
(1) Auf jeden Start-Tag muß ein Ende-Tag folgen. Es ist bei bisherigen HTML-Dokumenten durchaus üblich, <P>-Tags oder <LI>-Tags ohne nachfolgenden Ende-Tag zu setzen.
(2) Einen Sonderfall stellen die "leeren Elemente" dar. Ein leeres Element ist ein Element, zu dem es keinen Ende-Tag gibt, weil es keine Zeichenfolge gibt, die durch die beiden Tags eingeschlossen würde. Man denke an Tags wie <BR>, <HR> oder <IMG>.
Jedes leere Element muß so abgeändert werden, daß es mit einem `/>' abgeschlossen wird, zum Beispiel so: <IMG SRC="bild.gif" alt="Bild"/> Es gibt allerdings HTML-Browser, die mit diesem abschließenden Schrägstrich nicht umgehen können. Besser ist daher die Variante, an das Ende des Elements einen Tag wie </IMG> zu setzen.
(3) Alle Attributwerte müssen in Anführungszeichen stehen.
Während im Rahmen von SGML gilt, daß jedes Dokument auf eine
Dokument-Typ-Definition (DTD) ausgerichtet sein muß, um von einem
Parser akzeptiert zu werden, gibt es im Rahmen von XML das Konzept der
Wohlgeformtheit. Bei der Prüfung auf Wohlgeformtheit wird kein Abgleich
mit einer DTD durchgeführt.
Beim Dynamischen HTML geht es darum, daß aus Web-Dokumenten Objekt-Modelle
erstellt werden. Wenn ein Objekt-Modell erstellt wurde, kann mit einer
Script-Sprache auf die Objekte zugegriffen werden. Dieses Verfahren ist
zur Zeit (August '98) vom W3C noch nicht abgesegnet worden. Es gibt bisher
nur proprietäre Lösungen - von Microsoft und von Netsacpe. Die
Lösungen, an denen das W3C arbeitet, werden in gleicher Weise für
das bisherige SGML-basierte HTML nutzbar sein wie für das XML-basierte
HTML und ebenso auch für andere XML-Dokumenttypen.
Sie können aber auch komplizierter sein und können einen verweis auf eine DTD enthalten. Es ist auch möglich, im Dokument Angaben zu liefern, durch die die DTD ergänzt wird.<?XML version="1.0" STANDALONE="YES"?> <gespräch> <gruß>Hallo, Leute!</gruß> <antwort>Gleichfalls.</antwort> </gespräch>
Wer XML-Dokumente erstellt, wird - wie schon bei HTML - vor der Wahl
stehen, ob er seinen Quellcode auf direkte Weg in eine Datei setzen
will oder ob er einen speziellen XML-Editor verwenden will. Die XML-Editoren
werden vorgeben, welche Elemente im Rahmen einer DTD genutzt werden können
und werden anzeigen, welche Elemente als Sub-Elemente zu einem Element
zulässig sind.
XML-Dokumente werden danach eingeteilt, in welchem Maße sie mit den alten SGML-Standards konform gehen. Ein "gültiges" Dokument verwendet eine DTD und verhält sich daher weitgehend wie herkömmliche SGML-Dokumente.
Ein DTDloses Dokument kann immerhin noch den Status eines wohlgeformten XML-Dokuments erlangen.
Die wichtigsten Regeln für Wohlgeformtheit:
(1) Das Dokument sollte mit einer XML-Deklaration beginnen. Beispiel:
(3) Alle Attribut-Werte müssen in Anführungszeichen stehen.
(4) Jedes leere Element (das sind jene, die kein Ende-Tag haben, zum
Beispiel <IMG>, <HR>, und <BR>) muß
entweder mit '/>' enden, oder man muß einen regulären Ende-Tag
hinzufügen.
(6) Es muß ein Element geben, das den Container für alle
anderen Elemente bildet. Sowas gab es auch schon bei HTML. Alle Elemente
wurden in einen Bereich gesetzt, der mit <HTML> begann und mit </HTML>
endete.
Die neue Linking-Technologie wird in Spezifikationen festgelegt, die
unter den Überschriften XLink und XPointer herauskommen werden.
Es ist gängige Praxis, XML-Dokumente die nicht-HTML-DTDs verwenden,
nach HTML zu konvertieren, wenn sie angezeigt werden sollen.
Mit XSL können Web-Designer eine Präsentationsstrukur schaffen, die von der originalen Datenstruktur stark abweichen kann. Ein Element kann in unterscheidlichen Formatierungen an unterscheidlichen Stellen einer Seite erscheinen. Die Elemente können also völlig neu arrangiert werden, und es können auch Elemente von der Präsentation ausgeschlossen werden.
Im Zusammenspiel mit einer Script-Sprache sind außerdem Berechnungen möglich. Einfaches Beispiel: Wenn ein XML-Dokument Rechnungsposten liefert, dann kann XSL Style Sheet dazu die Summe berechnen und die Mehrwertsteuer und dergleichen mehr.
Die "Proposed Recommendation" für XSL wird für Juli 1999 erwartet.
Mit XSL wird einiges möglich, was die CSS nicht leisten können. Dazu gehört das Neu-Arrangieren des Dokument-Inhalts und das automatische Generieren von Text.
XSL wird allerdings allerhand Gründzüge von den CSS übernehmen,
so daß sichergestellt ist, daß der Lernaufwand beim Übergang
von CSS nach XSL nicht zu groß ist. Außerdem wird dafür
gesorgt, daß es möglich ist, Cascading Style Sheets automatisch
nach XSL zu konvertieren.
http://members.aol.com/xmldoku,
Version 2.0 (vom 1.9.98)
E-Mail an: Duenhoelter@t-online.de
© Copyright 1998,
Kuno Dünhölter