Unterabschnitte

© 1999 François Bry
Dieses Lehrmaterial wird ausschließlich zur privaten Verwendung angeboten. Eine nichtprivate Nutzung (z.B. im Unterricht oder eine Veröffentlichung von Kopien oder Übersetzungen) dieses Lehrmaterials bedarf der Erlaubnis des Autors.


2.5 Exkurs: Das Entitäts-Relations-Modell und der Tupel-Kalkül

Im Datenbankbereich sind Formalismen eingeführt worden, die einerseits syntaktisch wesentlich von der Prädikatenlogik erster Stufe abweichen, andererseits aber leicht darin übertragen werden können.

Entitäts-Relations-Modell.

Das Entitäts-Relations-Modell (ER-Modell) dient dazu, die Struktur eines zu modellierenden Ausschnitts der Realität zu beschreiben und damit ein Datenbankschema zu spezifizieren.

Wir führen das Entitäts-Relations-Modell informell anhand eines Beispiels ein. In dem zu modellierenden Ausschnitt der Realität gebe es Angestellte, Abteilungen, Abteilungsleiter und Standorte. Jeder Angestellte arbeitet in einer Abteilung. Jeder Abteilungsleiter steht einer Abteilung vor. Alle Abteilungsleiter sind Angestellte. Jeder Angestellte hat einen Standort, der auch der Standort seiner Abteilung ist.

Bild

Die wichtigsten Bestandteile des Entitäts-Relations-Modell sind Entitäten (durch Rechtecke dargestellt), Relationen (durch Rauten dargestellt) und Hierarchiebeziehung (durch Pfeile dargestellt). Letztere ist eigentlich nur ein häufig vorkommender Spezialfall einer zweistelligen Relation. Im Englischen wird sie auch die ,,is-a relationship`` genannt

Die Anzahl der Kanten, die mit einer Raute verbunden sind, ist die Stelligkeit der Relation, die die Raute definiert. Diese Kanten werden mit ,,Rollen`` beschriftet. Zum Beispiel könnte die linke Kante der Relation ,,arbeitet`` mit ,,wer`` und die rechte mit ,,wo`` beschriftet sein. Weitere Beschriftungen der Kanten erlauben die Angabe von ,,Kardinalitäten`` wie z.B.:

Bild

In diesem Beispiel wäre die Bedeutung der Kardinalitätsbeschriftung, dass jeder Angestellte in bis zu 3 Abteilungen arbeiten kann. Beschriftet man beiden Kante der Relation ,,stehtvor`` mit der Kardinalität 1, bedeutet dies, dass jeder Abteilungsleiter genau einer Abteilung vorsteht und jede Abteilung genau einen Abteilungsleiter hat.

Es gibt noch weitere Bestandteile des Modells, zum Beispiel Attribute von Entitäten, auf die hier nicht näher eingegangen werden soll.

Die Übersetzung aus dem Entitäts-Relations-Modell in eine Sprache der PL1S geschieht nach folgendem Schema:

Aufgrund einer solchen Übersetzung kann die Bedeutung der Bestandteile des Entitäts-Relations-Modells mit Hilfe der - in Kapitel 3 zu besprechenden - wohlverstandenen Semantik der Prädikatenlogik erster Stufe präzisiert werden.

Tupel-Kalkül.

In der PL1S stehen die Variablen für Objekte, wie etwa Angestellte, Abteilungen, usw. Im Tupel-Kalkül gibt es dagegen Variablen für Atome.
Die Aussage
,,arbeitet`` ist eine Beziehung zwischen Angestellten und Abteilungen
kann z.B. in einem Tupel-Kalkül wie folgt dargestellt werden:
∀ (xarbeitet) ⇒ (x.werAngestellterx.woAbteilung)
wenn die Rollen so benannt sind wie im obigen Beispiel. Statt xarbeitet könnte man auch arbeitet(x) schreiben. Im Gegensatz zur Prädikatenlogik steht das x dann aber nicht für ein einziges Argument, sondern für das ganze Argumenttupel, in diesem Fall also für das Paar (x.wer,x.wo).

Der Grund für die im Tupel-Kalkül hervorgehobene Stellung der Tupel gegenüber den einzelnen Argumenten ist, dass die Tupel die Modellierungs- und Speicherungseinheiten des relationalen Datenmodells sind.

Validierung