SGML

kefk.net : SGML : Übersicht
xx.xx.xxx/09-Jan-06


12.0. Übersicht


  • 12.5. SGML (Standard Generalized Markup Language) und XML (Extensible Markup Language)
    • 12.5.1. Ablauf eines zeitgemäßen Publikationsvorgangs
    • 12.5.2. Einleitung zu und Geschichte von SGML und XML
    • 12.5.3. Grundzüge von SGML
    • 12.5.4. Zusammenfassung: SGML-gestütztes Publizieren
    • 12.5.5. SGML profiles: XML
  • 12.6. XML -- Extensible Markup Language
  • 12.7. Anwendungen von SGML und XML
    • 12.7.1. Wichtige öffentlich zugängliche Document Type Definitions (DTD) in SGML
    • 12.7.2. Electronic Manuscript Project (-> Z39.50)
    • 12.7.3. HyTime -- Hypermedia/Time-based Structuring Language : ISO 10744
    • 12.7.4. XML und Metadata
    • 12.7.5. Einige XML-konforme Spezial-MLs
  • 12.8. Weiterführende Ressourcen zu SGML und XML

12.5. SGML (Standard Generalized Markup Language) und XML (Extensible Markup Language)


Zu den wichtigsten "Formaten" für den Austausch von Daten gehören SGML (Standard Generalized Markup Language) und XML (Extensible Markup Language).


12.5.1. Ablauf eines zeitgemäßen Publikationsvorgangs


Als Einführung zu SGML und XML soll kurz der Ablauf eines Publikationsvorganges dargestellt werden, der nicht der technischen Revolution Gutenbergs (15. Jahrhundert!) entspricht, sondern der technischen Revolution (Computer und Kommunikation) der zweiten Hälfte des 20. Jahrhunderts.

Ablauf eines zeitgemäßen Publikationsvorgangs

1. Gedankliche Konzeption als solche nicht darstellbar
2. Computer-Fassung von Werk als solche nicht darstellbar
3. Computerfassung von Ausformung als solche nicht darstellbar
4. Computerfassung der Manifestation darstellbar
5. Physische Darstellung des Einzelexemplars benutzbar

Das Folgende folgt den Grundgedanken des IFLA-Draft:

Functional requirements for bibliographic records : draft report for world-wide review / recommended by the IFLA Study Group on the Functional Requirements for Bibliographic Records. -- Frankfurt am Main : Deutsche Bibliothek, 1996. -- 115 S. : graph. Darst.
Fußn.: erarbeitet innerhalb: IFLA Universal Bibliographic Control and International MARC Program

Ausführlicher dazu siehe: 

Payer, Margarete <1942 - >: Datenbankaufbau : Skript / Margarete Payer & Alois Payer. -- Kapitel 3: Datenbank-Design: Entity-Relationship (ER) Modelling. -- Fassung vom 15. Mai 1997. -- URL: http://machno.hbi-stuttgart.de/~payer/dbauf03.html#3.2.1.1.

Den Zweck dieser Studie beschreibt Olivia M. A. Madison, die Vorsitzende der Study Group in ihrem Begleitschreiben zum Draft vom 10. Juni 1996 so:

"Briefly stated, the purpose of this study is to delineate in clearly defined terms the functions performed by the bibliographic record with respect to various media, applications, and user needs. The study covers the full range of functions for the bibliographic record in the widest sense (i.e., a record that encompasses not only descriptive elements, but also access points (name, title, subject, etc.), other »organizing elements« (classification, chronological codes, etc.), and annotations). The study`s ultimate recommendation is a proposed basic level of functionality and basic data requirements for records created by national bibliographic agencies."

Dieser Draft schlägt für die bibliographische Beschreibung folgende Entities vor:

  1. Works -- Werke: "a distinct intellectual or artistic creation" -- eine einzelne intellektuelle oder künstlerische Schöpfung. Werk ist eine abstrakte Entity. Ein Werk ist in individuellen Expressions realisiert. Werk aber ist die abstrakte Gemeinsamkeit der verschiedenen Expressions des Werkes. So ist Asterix und Kleopatra ein Werk, das in verschiedenen Ausgaben, in Originalsprache und Übersetzungen als seinen Expressions realisiert ist.

  2. Expressions -- Ausformungen: "the intellectual or artistic realization of a work in the form of alpha-numeric, musical, or choreographic notation, sound, image, object, movement, etc., or any combination of such forms" -- die intellektuelle oder künstlerische Verwirklichung eines Werkes in Form einer alphanumerischen, musikalischen oder choreographischen Notation, oder in Form von Ton, Bild, Objekt, Bewegung usw. So sind eine Partitur, eine Tonwiedergabe und eine Opernaufführung von Parzival drei Expressions desselben Werkes. Auch Übersetzungen, Bearbeitungen, Arrangements, Überarbeitungen usw. sind Expressions.

  3. Manifestations -- Manifestationen: "the physical embodiment of an expression of a work" -- die physikalische Verkörperung einer Expression. Z. B. die sind die verschiedenen Druckausgaben der Partitur von Parzival verschiedene Manifestationen der Expression Partitur von Parzival. Verschiedene Ausgaben desselben Textes sind Manifestationen, usw.

  4. Items -- Einzelexemplare: "a single exemplar of a manifestation" -- ein Einzelexemplar einer Manifestation. z. B. das vorliegende Exemplar der Ausgabe von 1906 im Buddhistischen Missionsverlag von Friedrich Zimmermann's Buddhistischem Katechismus.

  5. Persons -- Personen: "an individual" -- ein Individuum

  6. Corporate Bodies -- Körperschaften: "an organization or group of individuals and/or organizations acting as a unit" -- eine Organisation oder eine Gruppe von Individuen und/oder Organisationen, die als Einheit handelt. Hierher gehören auch Kongresse, Expeditionen, Ausstellungen, Messen usw.

  7. Concepts -- Begriffe: "an abstract notion or idea" -- ein abstrakter Begriff oder Idee. Begriffe werden hier nur insoweit berücksichtigt als sie Gegenstand eines Werkes sind (z.B. Erlösung als Gegenstand eines theologischen Traktates).

  8. Objects -- materielle Objekte: "a material thing" -- ein materielles Ding. Materielle Objekte werden hier nur insoweit berücksichtigt als sie Gegenstand eines Werkes sind (z.B. Plüschkatzen als Gegenstand einer wissenschaftlichen Abhandlung).

  9. Events -- Ereignisse: "an action or occurrence" -- eine Handlung oder ein Vorkommnis. (z.B. der 2. Weltkrieg als Gegenstand eines Romans)

  10. Places -- Orte: "a location" -- eine Örtlichkeit. Begriffe werden hier nur insoweit berücksichtigt als sie Gegenstand eines Werkes sind (z.B. Ofterdingen als Gegenstand eines Ortsplanes).

Für unsere Zwecke sind bedeutsam die Entitäten Werk, Ausformung, Manifestation, Einzelexemplar:

Beispiel für Werk - Ausformung - Manifestation - Einzelexemplar

Werk

Statistische Datenbanken des Bundes und der Länder

Ausformungen Statistisches Jahrbuch der BRD Länderberichte (ausländische Staaten) Atlas Agrarstatistik usw.
Manifestationen Druckausgabe CD-ROM On-line
Einzelexemplare gedruckte Bücher physische 
CD-ROMs
On-line Sites .....

Wenn man mit Hilfe von Computern publiziert, stehen für die einzelnen bibliographischen Entities folgende Hilfsmittel zur Verfügung:  SGML und XML werden in diesem Kapitel ausführlich behandelt, HTML in Kapitel 13, 2,2.

Publizieren mit Hilfe eines Computer

Werk und seine Derivate Computer-Fassung Physische Darstellung
Werk (work, abstraction) SGML
Ausformung (expression, abstraction) SGML, XML, [HTML (semantische Tags)]
Manifestation (manifestation, rendition, Ausgabe) SGML-DTD,  XML-DTD, HTML (Style-Tags), PostScript, Textverarbeitungsformate, Style sheets ...
Einzelexemplar (item) Verschiedene Medien: Hardcopy, Braille, Bildschirmdarstellung, CD-Rom, Audio, Video ....

12.5.2. Einleitung zu und Geschichte von SGML und XML


SGML -- Standard Generalized Markup Language ist eine Dokument-Definier-Sprache, die den Austausch von Informationen beliebiger Komplexität unabhängig von herstellerspezifischer Soft- und Hardware ermöglichen soll.

SGML ist internationaler ISO-Standard:

ISO 8879 (1986): Information processing -- Text and office systems -- Standard Generalized Markup Language (SGML)

Markup-Languages sind keine neue Erfindung: in der Form von Satzanweisungen waren sie ein unentbehrliches Hilfsmittel für Verfasser und Lektoren, um Schriftsetzern ihre Wünsche mitzuteilen, wie das Manuskript (die "Ausformung" des Werkes) in eine "Manifestation" umgesetzt werden soll. Die folgenden Abbildungen zeigen einen Ausriss einer solchen Markup-Language, wie sie in den 60er und 70er-Jahren des 20. Jahrhunderts in Deutschland gebräuchlich war:

Markup Beispiel

Abb.: "Klassische" Markup-Language: Markup für Buchsatz

Quelle der Abb.: Satzanweisungen und Korrekturvorschriften : mit ausführlicher Beispielsammlung / hrsg. von der Dudenredaktion und der Dudensetzerei. -- Mannheim : Bibliographisches Institut, ©1969. -- 187 S. : Ill. -- (Duden-Taschenbücher ; 5/5a). -- [Ein "klassisches" Regelwerk einer Markup-Language für die Epoche der traditionellen Buchproduktion]

Für den anglo-amerikanischen Raum sind die Regeln einer dieser klassischen Markup-Languages (neben vielem anderen) immer noch enthalten in:

The Chicago Manual of Style. -- 14. ed. -- Chicago [u.a.] : Univ. of Chicago Press, ©1993. -- 921 S. : Ill. -- ISBN 0226103897. -- {Wenn Sie HIER klicken, können Sie dieses Buch bei amazon.de bestellen}

Ausgangspunkt zu SGML in ihrer jetzigen Form war der Paradigmawechsel vom Konzept des Specific Coding (Procedural Markup) zum Konzept des Generic Coding (Descriptive Markup).

  • Specific Coding codiert spezifische Prozeduren (procedural markup), wie z.B. Formatierungskommandos (z.B. ESC, CTRL oder SHIFT Kommandos)
  • Generic Coding codiert dagegen den Zweck oder die Funktion, beschreibt also, was die konkrete Formatierung ausdrücken soll (descriptive markup) (z.B. Titel, Kapitel, Anmerkung)

Vermutlich geht die Anregung zu diesem Paradigmenwechsel auf William Tunnicliffe zurück, der 1967 bei einer Sitzung des Canadian Government Printing Office vorschlug, den Informationsgehalt eines Dokumentes von seinem Format zu trennen. Diese und andere Anregungen führten zur Gründung des Generic Coding Projekt innerhalb des Composition Committe der Graphic Communications Association (GCA). In diesem Projekt wurde das GenCode(R)-Konzept entwickelt: man erkannte, dass verschiedene Arten von Dokumenten verschiedene Codes benötigen und, dass man kleinere Dokumente als Elemente in größere Dokumente einbinden könnte.

Es zeigte sich bald, dass der Versuch, ein Generic Coding für alle Dokumententypen zu entwerfen, daran scheitern würde, dass es zu viele verschiedene Dokumententypen mit zu vielen unterschiedlichen Arten von Elementen gibt. Die Lösung fand man darin, dass man SGML nicht als eine Gesamtheit von standardisierten Codes entwarf, sondern als eine Art Programmiersprache, mit der man eine Dokumenten-Typ-Definition (document type definition) (DTD) erstellen konnte. Die DTD kann die Elemente usw. definieren, die man für ein Dokument oder eine Gruppe ähnlicher Dokumente benötigt. Das Vorbild dafür lieferten Programmiersprachen, die es erlauben "primitives" zu definieren, Grundoperationen, die man in einem header file zusammenstellen kann, um Befehle zu definieren, die das Programm dann benutzt.

1980 wurde ein erster Entwurf von SGML veröffentlicht. Im Oktober 1985 wurde ein Draft International Standard veröffentlicht und vom Office of Official Publications of the European Community angenommen. 1986 wurde der endgültige Text, der am CERN ausgearbeitet wurde, von ISO als Standard akzeptiert und in Rekordzeit veröffentlicht.

Als im WWW (World Wide Web) immer mehr proprietäre HTML-Erweiterungen auftauchten (vor allem von Netscape und Microsoft), reagierte das World Wide Web Consortium unter Leitung von Tim Berners-Lee, dem Erfinder von HTML, ab ca. 1996:

  • man entwickelte eine HTML-spezifische Stylesheet-Language: Cascading Style Sheets (CSS), die es erlaubt, spezifische Formatierungen vorzunehmen, ohne HTML proprietär zu verändern
  • man beschloss, eine vereinfachte Form von SGML zu entwickeln, die die Vorteile von SGML beibehält, aber gleichzeitig einfach ist: XML = Extensible Markup Language
  • man beschloss, XML-entsprechende Standards für die Erstellung von Links zu erstellen: XLink. XLink ist stark beeinflusst von HyTime (s.unten) und TEI (s. unten).
  • man beschloss, XML-entsprechende Standards für Stylesheets zu entwickeln: Extensible Style Sheets (XSL). XSL ist eine Kombination von Prinzipien von CSS und ISO's DSSSL (s. unten) 

XML 1.0 wurde offiziell am 10.2.1998 veröffentlicht.


12.5.3. Grundzüge von SGML


Jedes Dokument besteht aus:

  • dem eigentlichen Inhalt des Dokuments (content data, bestehend aus data characters). Data characters werden von der SGML-Software im CON-mode (für content) gelesen und an die Anwendungssoftware zur Weiterbearbeitung weitergegeben. Die Bestandteile eines Dokuments werden entities genannt. Entities können verschiedenen Dokumenten gemeinsam sein oder auch wieder selbstständige Dokumente sein
  • dem Markup -- den Charakteristika (z.B. visueller Art), die dem Nutzer mitteilen, z.B. welche Stellung im Ganzen (Titel, Paragraphen, Absätze usw.) oder welchen Stellenwert ein Teil des Dokuments hat (Hervorhebungen, Zitate, Fußnoten usw.), bestehend aus markup characters. Markup character werden als solche gekennzeichnet durch delimiter characters. Delimiter characters teilen der Software mit, dass die dadurch gekennzeichneten Zeichen im TAG-mode gelesen werden müssen.
    Die üblichen delimiter characters sind:
    • < > für start tags: zeigen Beginn eines Elementes an
    • </ > für end tags: zeigen Ende eines Elementes an
    • & ; zum Absetzen von Entities wie Graphiken, Sonderzeichen u.ä.

SGML ist eine Sprache zum Definieren des Markup

  • für ein einzelnes Dokument
  • für eine Gruppe von Dokumenten
  • für alle Dokumente, die eine bestimmte Gruppe benutzt

SGML ist eine Computer-Sprache: ein Computerprogramm -- ein validating SGML parser -- liest die Definitionen, lernt die daraus folgenden Regeln und wendet sie auf das Dokument an.


12.5.4. Zusammenfassung: SGML-gestütztes Publizieren


Die folgende Abbildung fasst an einem Beispiel zeitgemäßes SGML- (bzw. XML-)gestütztes Publizieren zusammen:

Abb.: SGML-gestütztes Publizieren

Im hier schematisch wiedergegebenen Beispiel wird die Ausformung eines Werkes (SGML) in verschiedenen Manifestationen publiziert:

  • als Druckanweisung (Postscript)

  • als HTML-File

  • als Audio-File (.au)

Diese Manifestationen werden als Einzelexemplare realisiert:

  • als gedruckte Bücher

  • als Bildschirmdarstellungen bzw. Ausdrucke von WWW-Pages

  • als Lautwiedergabe von Audio-Files (z.B. von Kassette, CD-ROM, im Radio, im WWW usw.)


12.5.5. SGML profiles: XML


Ein SGML profile ist eine Anzahl von Regeln, die auf verschiedene SGML Document types anwendbar sind. Ein profile kann 

  • die Optionen, die SGML offenlässt, einschränken
  • kann Festlegungen treffen, die außerhalb des Bereichs von SGML liegen (z.B. Zeichenkodierung)
  • kann auch die Behandlung von Dokumenten festlegen, die nicht voll SGML-konform sind.

Das erste öffentlich definierte profile von SGML ist XML. XML ist für das WWW optimiert.

XML-Dokumente können sein

  • valid: voll SGML-konform
  • well-formed: nicht voll SGML-konform (meist haben sie keine oder keine vollständige DTD, enthalten aber Elemente, die SGML-konform sind)

Anwendungen

powered by Webcounter