Informationsmodellierung in XML und SGML
Springer Berlin Heidelberg New York Barcelona Budapest Hongkong London Mailand Paris Singapur Tokio
Henning Lobin InforrnationsITlodellierung in XML und SGML Mit 33 Abbildungen und 4 Tabellen
Prof. Dr. Henning Lobin Justus-Liebig-Universitiit GieSen FB 9, Arbeitsbereich Angewandte Sprachwissenschaft und Computerlinguistik Otto-Behaghel-Str. 10 D 35394 GieSen Henning.Lobin@uni-giessen.de Die Deutsche Bibliothek - Einheitsaufnahme Lobin, Henning: Informationsmodellierung in XML und SGML/Henning Lobin. - Berlin; Heidelberg; New York; Barcelona; Budapest; Hongkong; London; Mailand; Paris; Singapur; Tokio: Springer, 2000 ISBN-13:978-3-642-64046-9 e-isbn-13:978-3-642-59604-9 DOl: 10.1007/978-3-642-59604-9 ACM Computing Classification (1998): 1.7,1.5 ISBN-13:978-3-642-64046-9 Springer-Verlag Berlin Heidelberg New York Dieses Werk ist urheberrechtlich geschutzt. Die dadurch begriindeten Rechte, insbesondere die der Obersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der Vervielfaltigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen, bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine Vervielfaltigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zulassig. Sie ist grundsatzlich vergutungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des Urheberrechtsgesetzes. Springer-Verlag Berlin Heidelberg 2000 Softcover reprint of the hardcover 1st edition 2000 Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dab solche Namen im Sinne der Warenzeichen - und Markenschutz-Gesetzgebung als frei zu betrachten waren und daher von jedermann benutzt werden durften. Umschlaggestaltung: Kunkel + Lopka, Werbeagentur, Heidelberg Satz: Reproduktionsfertige Vorlagen des Autors SPIN 10698384 45/3142/SR - 5 4 3210 - Gedruckt auf saurefreiem Papier
Vorwort Wahrend der Arbeit an diesem Buch hat XML, die Extensible Markup Languge, einen Boom erlebt, den noch vor zwei Jahren kaum jemand hatte voraussagen konnen. Fast taglich sind Meldungen darliber zu lesen, in welche Technologiebereiche XML Einzug erhalten hat, beinahe im Wochenrhythmus werden beim World Wide Web Consortium Standardisierungsvorschlage eingereicht, die die Erweiterung oder die Nutzung von XML zum Gegenstand haben. Dabei ist XML lediglich die vereinfachte Version einer Sprache, die schon in den siebzieger und achtziger Jahren entwickelt worden ist: die Standard Generalized Markup Language (SGML). Viele der seitdem im Umfeld von SGML entstandenen Substandards und Verarbeitungstechniken finden sich heute wieder bei der Auskleidung einer XML-basierten Informationstechnologie. 1m vorliegenden Buch soli nicht versucht werden, ein vollstandiges Panorama der noch reichlich unlibersichtlichen XML-Szenerie zu vermitteln. Vielmehr geht es urn das, was in in den vergangenen funfzehn Jahren fur SGML zentral war und nun auch - zweifellos nicht nur fur einen kurzen technologischen Innovationszyklus, sondern vielleicht fur weitere funfzehn Jahre - auch fur XML im Zentrum stehen wird: Information so zu modellieren, dass sie sich zu Baumstrukturen fligen lasst, ganze Klassen derartiger Baume durch Grammatiken zu beschreiben und so die Grundlage zu bilden fur eine Vielzahl halb- oder vollautomatischer Verarbeitungsprozesse. Denn auch wenn noch so raffinierte Verarbeitungswerkzeuge verfiigbar sind, so wird die Nutzung von SGML und XML immer verknlipft bleiben mit der intellektuellen Arbeit der Informationsmodellierung und ihrer formalen Beherrschung. Viele der in SGML vorgesehenen Konstruktionen gelten heute mit Recht als veraltet - sie werden auch in diesem Buch keine Rolle spielen. Andere sind eindeutig als Vorteile von SGML gegenliber XML anzusehen; insbesondere die Weiterentwicklung von SGML, die im Anhang des HyTime-Standards dokumentiert ist, offnet mit der Idee der Metastrukturierung vollig neue Raume fur die Informationsmodellierung. Gleichzeitig ist es mit dem Erfolg von XML deutlich geworden, dass Einfachheit und Uberschaubarkeit eines Standards wichtige Richtgrol3en sind. Dieses Buch geht deshalb aus von der Ausdrucksmachtigkeit von XML, zeigt aber, an welchen Punkten die zusatzlichen Moglichkeiten von SGML von Nutzen sind. Dadurch wird es moglich, die zur Beherrschung dieser
VI Vorwort Technologie notwendigen Grundlagen in systematischer Weise gleichzeitig flir SGML und XML zu erwerben. Die ErstelIung der ersten Fassung dieses Buches falit noch in meine Zeit an der Universitat Bielefeld, in der ich die Gelegenheit bekommen hatte, zusammen mit Andreas Witt und Jan-Torsten Milde einen Forschungs- und Lehrbereich "Texttechnologie" aufzubauen. Beiden KolIegen bin ich flir eine Vielzahl von Hinweisen und Anregungen zu besonderem Dank verpflichtet. VerI, im September 1999 Henning Lobin
Inhalt 1 Einleitung... 1 1.1 1986 - eine neue Zeit beginnt...... 1 1.2 Was ist,textuelle Informationsmodellierung'?... 3 1.3 Zur Darstellung... 4 Teill: Primare Strukturierung - Strukturgrammatiken 2 Elemente... 9 2.1 Einheiten der Informationsmodellierung... 9 2.2 Hierarchische Anordnung von Elementen... 12 2.3 Leere Elemente und gemischte Elementtypen... 14 2.4 Inklusionen und Exklusionen als Metaregeln in SGML... 16 3 Attribute... 19 3.1 Attribute als Information tiber Information... 19 3.2 Weitergehende Moglichkeiten der Attribut-Deklaration... 23 3.3 Identifikatoren und Verweise... 27 3.4 Information in Elemente oder Attribute?... 30 3.5 Unterschiedliche Datentypen... 32 4 Dokumente... 37 4.1 Repriisentation von Informationsbiiumen... 37 4.2 Modularisierung und Flexibilisierung... 42 4.3 Die Dokumenttyp-Deklaration (DTD)... 45 4.4 Flexibilisierung der DTD... 51
VIII Inhalt 4.5 Besondere Informationsstrukturen... 55 4.5.1 Zweidimensionale Strukturen (Tabellen)... 56 4.5.2 Gerichtete Graphen... 61 5 SGMl-Versionen... 69 5.1 XML und SGML... 69 5.2 Die SGML-Deklaration: Versionsdefinition durch den Benutzer... 73 5.3 Weiterentwicklung von SGML.... 77 Teilll: Sekundare Strukturierung - Architekturen 6 Sekundare Strukturierung durch Architekturen... 85 6.1 Motivation... 85 6.2 Deklaration einer Meta-DTD im Oberblick... 86 6.3 Architektur-Deklaration in XML... 94 7 Deklaration von Architekturen... 99 7.1 Architektonische Formen... 99 7.1.1 Element -Formen... 99 7.1.2 Attribut- und Notationsformen... 103 7.2 Die Support-Attribute... 109 7.2.1 Uberblick... 109 7.2.2 Allgemeine Attribute... 111 7.2.3 Kontroll-Attribute... 115 7.2.3.1 Zuordnung von Element-Formen... 115 7.2.3.2 Zuordnung von Attribut-Formen... 117 7.2.3.3 Status von untergeordneten Elementen und Dateninhalten... 122 7.2.4 Minirnierung des architektonischen Markup... 126 7.2.5 Modularisierung... 128 8 Architektur-Definition und link-prozess-deklarationen... 133 8.1 Definition und Funktion von LPDs... 133 8.2 LPDs filr die Spezifikation von Kontroll-Attributen... 136 8.3 Weitergehende Nutzung von LPDs... 140
Inhalt IX 9 Anwendungen... 149 9.1 Restringierung... 149 9.1.1 Einleitung... 149 9.1.2 Zeichenketten und Grammatiken... 150 9.1.3 Restringierung von Attributen und Element-Inhalten... 155 9.1.4 DTD-Kontrolle und Restringierung von DTDs... 164 9.1.5 Muster... 169 9.2 Datenmanipulation... 172 9.2.1 Umbenennung, Filterung, Konvertierung... 172 9.2.2 Bildung von partiellen Dokumenten... 173 9.2.3 DTD-Netze... 179 9.3 Zum VerhaItnis von primarer und sekundarer Strukturierung... 181 Anhang A Standardisierte Informationsmodelle... 187 A.1 Standardisierte DTDs... 187 A.1.1 TEl... 187 A.1.2 ISO 12083... 189 A.1.3 HTML... 190 A.2 Standardisierte Architekturen... 191 A.2.1 HyTime... 191 A.2.2 Die General Architecture... 192 A.2.3 Topic Maps... 193 A.2.4 ICADD... 194 A.2.5 Standard-DTDs als Architekturen... 195 8 XML-Syntaxregeln mit SGML-Erweiterungen... 197 B.1 Allgemeines... 197 B.2 Dokument-Struktur... 198 B.2.1 Dokument-Struktur in XML... 198 B.2.2 Dokument-Struktur in SGML... 199 B.3 Element-Deklaration... 200 B.3.1 Element-Deklaration in XML... 200 B.3.2 XML-Inhaltsmodelle... 200 B.3.3 Element-Deklaration in SGML... 201 B.3A SGML-Inhaltsmodelle... 201 B.4 Attributlisten-Deklaration... 202 BA.1 Attributlisten-Deklaration in XML... 202 B.4.2 XML-Attribut-Definition... 202 BA.3 Attributlisten-Deklaration in SGML... 203
X Inhalt B.4.4 SGML-Attribut-Definition... 203 B.S Notationsdeklaration... 204 B.S.1 Notationsdeklaration in XML... 204 B.S.2 Notationsdeklaration in SGML... 204 B.6 Entitatsdeklaration... 204 B.6.1 Deklaration Genereller EntWiten in XML... 205 B.6.2 Deklaration Genereller Entitaten in SGML.... 205 B.6.3 Deklaration von Parameter-Entitaten in XML.... 205 B.6.4 Deklaration von Parameter-Entitaten in XML... 206 B.7 Marked section-deklaration... 206 B.7.1 Marked section-deklaration in XML... 206 B.7.2 Marked section-deklaration in SGML... 206 B.8 Verarbeitungsanweisungen (Processing instructions)... 207 B.8.1 Verarbeitungsanweisungen in XML... 207 B.8.2 Verarbeitungsanweisungen in SGML... 207 B.9 Annotation... 207 B.9.1 Anfangstags fur nicht-leere Elemente in XML... 207 B.9.2 Tags fi.ir leere Elemente in XML... 207 B.9.3 Anfangstags und Tags fi.ir leere Elemente in SGML... 208 B.9.4 Endtags in XML und SGML... 208 B.9.S Entitatsreferenzen in XML und SGML... 208 B.IO Kommentare... 208 B.IO.I Kommentare in XML... 208 B.IO.2Kommentare in SGML... 209 C Architektonische Verarbeitung in SP... 211 C.I Einleitung... 211 C.2 Einfache architektonische Verarbeitung... 212 C.3 Architektonische Verarbeitung h6herer Ordnung... 213 C.4 LPDs bei der architektonischen Verarbeitung... 213 C.S LPDs und architektonische Verarbeitung h6herer Ordnung... 216 o SGML-Deklarationen fur XML... 219 D.1 Deklaration fur Standard-SGML.... 219 D.2 Deklaration fur WebSGML... 221 E Abbildungsverzeichnis... 224 F Verzeichnis von Definitionen und Beispielen... 225
Inhalt XI G Register... 228 H Materialien... 232 H.I Standards... 232 H.2 Literatur... 232 H.3 1m Text erwahnte Software... 233 H.4 URLs... 233