Was sind und was sollen Bibliothekarische Datenformate. 3. Aufl. 1999
 
 

Kapitel 1

Daten - Programme - Protokolle : Verschachtelte Hierarchien



 
 
 
Inhaltsübersicht

Auf dem Gebiet der Datenkommunikation hat man es zuerst erkannt, daß man Ebenen oder Schichten definieren muß, um sich nicht in einem wuchernden Dickicht von Definitionen, Normen, Funktionen und Abläufen rettungslos zu verlieren. Das auch im Bibliothekswesen oft zitierte OSI-Modell [4] definiert einen siebenschichtigen Aufbau der Vorgänge, die bei jeder Datenkommunikation ablaufen. Die sieben Schichten wurden auf der Basis wohlüberlegter Grundsätze gegeneinander abgegrenzt. Unter anderem:

Statt "Objekt" stehen in den OSI-Dokumenten Worte wie "Vorgang", "Protokoll", "Dienst", "Funktion" etc. Im aktuellen Sprachgebrauch der Softwareschaffenden sind jedoch seit einer Weile Objekt und objektorientierte Programmierung zum beherrschenden Oberbegriff für alle strukturierbaren Gegebenheiten der Computerwelt geworden. Und so zeigt es sich, daß nicht nur Datenübertragungsprotokolle sondern auch Datenstrukturen und Programme sich in hierarchisch aufeinander bezogene Schichten von Objekten einteilen lassen - nach den eben genannten Grundsätzen.

In dieser Arbeit werden deshalb zunächst in drei Übersichten versuchsweise solche Einteilungen vorgestellt: für Daten und Programme handelt es sich um neue Vorschläge, für Protokolle entspricht die Liste (Übersicht 3) dem bekannten OSI-Schichtenmodell. Anschließend wird für die Ebenen 6 und 7 eine anwendungsspezifische Verfeinerung ("Typologie", Kap.5) für Bibliotheksdaten dargestellt. Die so gewonnene logische Klassifikation wird auf die bekannten Datenformate angewendet. Es wird dann erkennbar, daß das modernste Format, UNIMARC, die aus dem logischen Ansatz entwickelte Gliederung am besten verkörpert, während die anderen Formate sich aus dieser neueren Sicht als weniger "sauber" erweisen: sie sind bunte Mischungen unterschiedlicher Datentypen.

Diese Arbeit ist in engem Zusammenhang mit der Entwicklung des allegro-Systems und insbesondere seiner Import- und Exportfunktionen und seines Standardformates entstanden. Der Leser möge es deshalb nachsehen, daß auf diese Software nicht ganz selten Bezug genommen wird.


Übersicht 1: Daten


D1

 

Physikalische Ebene - Bit-Ebene
physikalische (elektromagnetische) Darstellung im Rechner und auf den Datenträgern
(Magnetisierung, Halbleiterzustände)
Objekte: nur NULL und EINS
D2
 

 

Zeichenebene - Byte-Ebene
logische Gruppen von je 8 Bits
hier noch unabhängig von speziellen Codes wie ASCII oder EBCDIC
Objekte: Zahlen zwischen 0 und 255, also genau 28 verschiedene Werte
D3
 

 

Blockebene - Speicherverwaltung
Einteilung von Arbeits- und Massenspeichern in Blöcke fester Länge (z.B. 512 oder 1024)
Kennzeichnung der Blöcke als "frei" oder "belegt" mit Hilfe von Tabellen (die auch nur Blöcke von Bytes sind!)
Objekte: Blöcke von Bytes und deren Nummern
D4
 
 
 

 

Dateiebene - Sicht des Betriebssystems
logische Gruppen von Blöcken = Dateien
Betriebssystem verwaltet Tabellen, Zeiger und Steuerdaten, um die zu einer Datei gehörenden Blöcke zusammenzuhalten. Auch sog. "Cache-Speicher" zur Leistungssteigerung sind hier anzusiedeln.
Unzugänglich für Endbenutzer.
Objekte: Dateien als variabel lange Ketten von Blöcken
 ab hier sind die Strukturen für "Normalbenutzer" zugänglich:
D5
 
 

 

Meta-Dateiebene - Verwaltung von Dateien
logische Gruppen von Dateien, Verzeichnisse ("Kataloge") von Dateien und deren Attributen,
Zuordnung zu "Benutzern", Registrierung von Zugriffsrechten (z.B. Paßwortschutz)
Zugänglich mit Befehlen des Betriebssystems, z.B. MS-DOS, Unix...
Objekte: Listen von Dateinamen mit Attributen
D6
 
 
 
 

 

Strukturebene - Ebene des Programmierers
formal-funktionelle Interpretation der Daten.
Datendefinition: Zeichen (ASCII...), Felder, Sätze ?  ==Ø Details siehe Kap. 2
Kontext: bibliographische Formate wie MARC, MAB,
Normen für Satzstruktur: ISO 2709 / DIN 1506.
Zusammenhänge zwischen Datenfeldern, Sätzen und Dateien,
formale Unterscheidung von Satztypen und Dateitypen
Objekte: Zeichen, Felder (Kategorien), Sätze; Dateien als variabel lange Ketten solcher Objekte
D7
 
 
 
 

 

Funktionsebene - Ebene des Endbenutzers?  ==Ø Details siehe Kap. 3
Funktionsbezogene Präsentation von aufbereiteten Daten
sog. "Benutzersicht" (Bildschirm oder Ausdruck),
z.B. Anzeige einer Titelaufnahme oder Liste im Klartext, z.B. ohne Kategorienummern, Steuerzeichen etc.
Kontext: Regelwerke wie RAK und AACR, ISBD.
Ausblendung "unnötiger" Angaben (funktionsbezogen)
Objekte: Zugriffskriterien, logische Datensätze als Repräsentation realer Objekte; ein logischer Satz kann aus mehreren, verteilten physischen Sätzen bestehen
(D8)
 

 

Bedeutungsebene :  außerhalb des Computers und für ihn unzugänglich)
inhaltliche Interpretation der Daten;
Bewertung, Einordnung in Zusammenhänge ?  ==Ø  Details siehe Kap. 4
Erst hier werden "Daten" zu "Information" im umgangssprachlichen, intuitiven Wortsinn
Kontext: Konventionen im Vor- und Umfeld der EDV; Aufgaben des Katalogs und der Bibliothek
Objekte: die Gegenstände selbst


Übersicht 2: Programme


P1
 
 

 

Prozessorebene - Bitmanipulation
Sprache: Microcode (physikalische Datenbearbeitung)
Operationsgebiet: Register des Prozessors;
kleinste Programmschritte, "fest verdrahtet",d.h. für den Programmierer (meist) unzugänglich
wichtig: höchste Geschwindigkeit;
Prozessorspezifisch.
P2
 
 

 

Zeichenebene - Bytemanipulation
Sprache: Maschinensprache, Assembler, oft auch C
Operationsgebiet: Arbeitsspeicher (Hauptspeicher);
Umgang mit einzelnen Zeichen, direkter Zugriff auf alle Teile des Rechners
wichtig: Mächtigkeit des Befehlssatzes
Prozessorspezifisch.
P3
 
 

 

Untere Betriebssystemebene: Programmablaufsteuerung
Sprache: Makrobefehle (Assembler-Unterprogramme), oft auch C.
Operationsgebiet: Hauptspeicher, Geräteschnittstellen; Arbeitsspeicherverwaltung, elementare Ein-/Ausgabe,
Zuteilung von Ressourcen (insbes. Rechenzeit), Steuerung der Ausführung geladener Programme
System- und prozessorabhängig.
P4
 
 
 

 

Mittlere Betriebssystemebene: Programmiererschnittstelle
Sprache: Dienstfunktionen für Programmierer
(aufrufbar z.B. aus COBOL- oder C-Programmen).
Operationsgebiet: "Kanäle" - zuordnen, öffnen, schließen; Massenspeicher- und Geräteverwaltung,
Standardprozeduren für genau definierte Aufgaben, insbes. Kommunikationssoftware.
Programmiersprachenabhängig.
 ab hier sind die Funktionen für "Normalbenutzer" zugänglich:
P5
 
 
 

 

Obere Betriebssystemebene: Benutzerschnittstelle
Sprache: Betriebssystem-Befehle (z.B. MS-DOS, UNIX, BS2000)
Operationsgebiet: Massenspeicher;
Grundfunktionen für den Umgang mit Dateien und Programmen: Finden, Ordnen, Bearbeiten (Editor),
Löschen, Umbenennen, Kopieren, Starten ...
Betriebssystemabhängig.
P6
 
 
 

 

Höhere Programmiersprachen-Ebene
Sprachen: z.B. Cobol, Pascal, C, BASIC
(sog. "Höhere Sprachen"), Software-Tools
Operationsgebiet: "Programmierumgebungen"; vor allem Compiler und Zubehör,
Datenbanksysteme (Datenmanipulationssprachen, Reportgeneratoren, Parametrierung etc.;)
Nur noch wenig betriebssystemabhängig
P7
 
 
 

 

Anwenderebene
Sprachen: z.B. Abfragesprachen (query language), höhere Kommandosprachen
Operationsgebiet: Arbeitsumgebungen;
Menüsysteme, interaktive Vorgänge, "Dialoge", "Benutzeroberfläche", Editor. Inhaltsorientierter
Zugang zu und Umgang mit den Daten.
Abhängig von einer Basis-Software, z.B. GRIPS, dBase, Pica-LBS3 (IBW), ...
(P8)
 

 

Sinn- und Vernunftebene : außerhalb des Computers und für ihn unzugänglich)
Pflichtenheft in natürlicher Sprache
Operationsgebiet: Gehirn, sozialer Kontext.
Verantwortlicher Umgang mit Computern. Soll man überhaupt Computer einsetzen?
Entwicklung präziser Zielvorstellungen mit Beachtung von Zusammenhängen, genaue Aufgabendefinition.


Übersicht 3: Protokolle : Datenkommunikation


K1
 
 

 

Physikalische Ebene - Bitübertragung
Spannungen, Frequenzen, physikalische Dimensionen
Übertragungsgeschwindigkeit (baud)
Normen: V.24/RS232, X.21
ungesicherte Übertragung, in der Regel eng verbunden mit der 2. Ebene:
K2
 
 
 

 

Sicherungsschicht
Gesicherte Übertragung von Paketen, Adressierung von Stationen
Erkennung von Steuerzeichen (Byte-Ebene)
Flußregelung (z.B. Warten auf Bereitschaft)
Normen: HDLC (X.25 level 2), CSMA/CD (Ethernet)
Fehlermeldung an Ebene K3
K3
 
 
 

 

Vermittlungsschicht - Netzwerkebene
Auf- und Abbau von (virtuellen oder festen) Endsystemverbindungen,
d.h. zwischen Hostsystemen oder Kommunikationsrechnern über Knotenrechner;
Datentransport in "Paketen"; Multiplexen; Rücksetzen einer Verbindung;
schnelle Signalübermittlung (interrupt)
Normen: Internet Protocol (IP), X.25 level 3
K4
 
 
 
 

 

Transportschicht - Übertragungsebene
Auf- und Abbau von Teilnehmerverbindungen
d.h. zwischen Dialogteilnehmern oder Programmen; Datenflußsteuerung (Reihenfolge von Paketen),
Verwaltung von "Warteschlangen" für die zu transportierenden Daten;
Netzwerk-unabhängige Dienste für die Anwendungsschichten K5 bis K7.
Normen: Transmission Control Protocol (TCP)
 ab hier sind die Vorgänge für "Normalbenutzer" sichtbar:
K5
 

 

Logische Verbindungsebene
Kommunikationssteuerschicht
Verantwortlich für Sitzungsablauf (logon, Passwort, Abbruch, logoff...)
Normen: LU6.2, RPC
K6

 

Darstellungsebene
Zeichenkodierung, Datentypenkodierung, Datenfeld-Darstellung, Menü- und Maskentechnik;
Normen: ASN.1, XDR, HTTP (Hypertext Transport Protocol, das WWW-Protokoll) mit HTML
K7
 
 
 
 

 

Anwendungsebene
funktionsbezogene Kommunikation,
u.U. vom Benutzer gar nicht bewußt ausgelöst, sondern automatisch (z.B. bei verteilten Datenbanken)
Dienste wie Message Handling (X.400), File Transfer, Directory Services, Job Transfer, Virtual Terminal
befinden sich teilw. noch in Entwicklung, Normung und Erprobung. Auf der Basis des TCP/IP (siehe 3/4) gibt es das File Transfer Protocol (FTP) und das Telnet Protocol für Terminalverbindungen zu entferten Hosts. Diese Protokolle erstrecken sich über die Ebenen 5 bis 7.
(K8) 
 
 

 

Systementwurf)
Frage: Muß Datenkommunikation sein? Welche Art von Verbindung?
Lokale Verarbeitung <-> Zentralisierung
Wahl der optimalen Verbindung (Kosten!) für das konkrete DV-Konzept: leitungsorienierte Verbindung (Standleitung, Wählleitung, ISDN) oder paketvermittelte Verbindung (z.B. Datex-P).

In Nordamerika werden in einem "Linked Systems Project", an dem die Library of Congress, OCLC, RLG und andere teilnehmen (auch Softwarefirmen), die für bibliothekarische Anwendungen relevanten Protokolle auf allen oben genannten Ebenen festgelegt bzw. werden noch erarbeitet. Auf den höheren Ebenen geht es dabei um Funktionen wie Fernleihanfragen (ILL-Protokoll), systemübergreifende Suchformulierungen (SR-Protokoll), Übertragung von Datensätzen (vor allem für Normdateien, aber auch schon bibliographische Daten).

Das LSP ist in die Norm Z39.50 eingemündet, für die auch heute noch die Library of Congress federführend ist.
Mittlerweile (1999) werden in der Praxis nur noch die SR-Protokollen verwendet, die der Norm Z39.50 entsprechen. OSI ist so gut wie "gestorben", alle Welt macht TCP/IC (auf den Ebenen K3 und K4), weil dies die Eckpfeiler des Internets sind. Das Projekt DBV-OSI heißt nur noch aus historischen Gründen so.



[4] Bork, Heinz: OSI für Bibliotheken : Normen, Projekte und Vorschläge zur Anwendung elektronischer Kommunikation :
eine Studie im Auftrag der Deutschen Forschungsgemeinschaft. - Berlin: DBI, 1989. - 152 S. - (Dbi-Materialien ; 84) -
ISBN 3-87068-884-X.