SGML-Dokumente


... [ Seminar WWW und JAVA ] ... [ Thema SGML ] ... [ SGML in der Praxis ] ...

Übersicht: SGML-Dokumente


Dokumententyp

Eine Instanz, also das eigentliche SGML-Dokument, muß mit der Referenz auf die Document Type Definition beginnen (Ausnahme: Kommentare). Dieses erfolgt in einer SGML-Anweisung durch das Schlüsselwort DOCTYPE gefolgt vom Namen des Typs und entweder einer Referenz auf die externe DTD (mit dem reservierten Wort SYSTEM) oder einer Inline-DTD (in eckigen Klammern [ ]).

Die Erstellung der Instanz ist Aufgabe des Autors selbst; die DTD wird meist von SGML-Entwicklern vorgenommen. Da die Erstellung einer DTD Ähnlichkeit mit der Entwicklung von Software-Programmen hat, kann bzw. sollte dieses nur von erfahrenen Leuten vorgenommen werden (Endlos-Rekursionen sind leicht programmiert!).


Beispiele

Folgendes einfache Beispiel enthält eine Inline-DTD:

<!DOCTYPE artikel [

<!ELEMENT artikel O O (autor, titel, rumpf)>
<!ELEMENT autor O O (#PCDATA)>
<!ELEMENT titel O O (#PCDATA)>
<!ELEMENT rumpf O O (#PCDATA)>
]>
Charles F. Goldfarb
<titel>
Die Kunst der Struktur
<rumpf>
Die typographische Gestaltung von Texten sollte Sache von Fachleuten sein...

Die DTD endet hierbei mit den eckigen und runden Klammern ' ] ) ' ; sie legt fest, daß das Dokument die Elemente autor, titel und rumpf in dieser Reihenfolge enthalten muß.
Die Instanz selbst liegt minimiert vor d.h. da sämtliche Elemente des Dokumentes mit dem 'O' als omitted gekennzeichnet sind, dürfen die - für den Kontext nicht notwendigen - Start- und End-Tags weggelassen werden. Die unminimierte Dokumenteninstanz würde wie folgt aussehen:

<!DOCTYPE artikel SYSTEM "artikel.dtd">
<artikel>
<autor>
Charles F. Goldfarb
</autor>
<titel>
Die Kunst der Struktur
</titel>
<rumpf>
Die typographische Gestaltung von Texten sollte Sache von Fachleuten sein...
</rumpf>
</artikel>

In diesem Fall wurden sämtliche Start- und End-Tags angegeben. Auf die DTD wird hierbei nur verwiesen (unter der Annahme, daß diese in einer Datei namens "artikel.dtd" im aktuellen Verzeichnis vorliegt).

Weitere kurze Beispiele befinden sich im Abschnitt "Document Type Definition" bei der Erläuterung der Elemente etc. .


... [ Seminar WWW und JAVA ] ... [ Thema SGML ] ... [ SGML-Dokumente ] ... [ SGML in der Praxis ] ...