Sie sind auf Seite 1von 13

49 Grundlagen der Informationsmodellierung

3 Grundkonzepte
der Entity-Relationship-Modellierung
Im folgenden wird nun eine Diagrammtechnik zur Darstellung von
Entity-Relationship-Modellen eingefhrt, die sog.
Entity-Relationship-Design-Diagramme
(kurz: ERDD oder auch E/R-Diagramme)
Wir werden dabei die textuelle und graphische Syntax der E/R-
Modellierung ausfhrlich darstellen, die Methodik zur Verwendung
der graphischen Sprache im Kontext von textuellen Beschreibungen
und terminologischen Glossaren erlutern, die Grundlagen einer
formalen Semantik einfhren und die Beziehungen zum Daten-
bankentwurf (tabellarische Darstellung) diskutieren.
50 Grundlagen der Informationsmodellierung
Basiskonzepte
Innerhalb der Entity-Relationship-Modellierung mit den ERDD
werden wir zunchst nur die bereits vorgestellten Basiskonzepte
verwenden:
Entity,
Relationship,
Entity-Typ,
Relationship-Typ.
E/R-Diagramme auf dieser Basis-Ebene bezeichnet man auch als
flache E/R-Diagramme. Spter werden diese dann durch Abstrak-
tionskonzepte angereichert.
51 Grundlagen der Informationsmodellierung
3.1 Syntax fr die E/R-Modellierung
Jedes Entity, jeder Entity-Typ, jede Relationship und jeder Relati-
onship-Typ hat einen Bezeichner.
Notationelle Konventionen
Bezeichner fr Entity-Typen und Relationship-Typen beginnen mit
einem groen Anfangsbuchstaben, Bezeichner fr Entities und Rela-
tionships mit einem kleinen Anfangsbuchstaben.
Aus pragmatischen Grnden sollen sich die Bezeichner von Relati-
onships (bis auf den kleinen Anfangsbuchstaben) nicht von den
Bezeichnern ihres Relationship-Typs unterscheiden.
52 Grundlagen der Informationsmodellierung
Beispiele:
Entity-Typen: Fahrrad, Auto, Bahn
bzw. allgemein: E, E
1
, E
2
, ..., E
k
Entities: ralfs_Fahrrad, petras_Auto, okertaler_Bahn
bzw. allgemein: e, e
1
, e
2
, ..., e
k
Relationship-Typen: Gehrt, Ist_Fahrer_von
bzw. allgemein: R, R
1
, R
2
, ..., R
k
Relationships: gehrt, ist_Fahrer_von
bzw. allgemein: r, r
1
, r
2
, ..., r
k
53 Grundlagen der Informationsmodellierung
Eindeutige Benennung
Bei der Benennung von Entities, Entity-Typen, Relationships und
Relationship-Typen ist auf die Wahl eindeutiger Bezeichner inner-
halb eines E/R-Modells zu achten.
Spezialfall:
Entities, die zu verschiedenen Entity-Typen gehren, drfen gleich
benannt werden, wenn der Bezeichner des Entity-Typs mitgefhrt
wird. Der Gltigkeitsbereich von Entity-Bezeichnern ist also ihr Entity-
Typ.
Notationen: a(E
1
), e
2
(E
2
) bzw. alternativ a:E
1
, e
2
:E
2
54 Grundlagen der Informationsmodellierung
3.1.1 Entity-Relationship-Diagramme
In der Diagrammtechnik werden die vier vorgestellten Basiskon-
zepte durch die folgenden graphischen Symbole reprsentiert:
Entity:
Relationship:
Entity-Typ:
Relationship-Typ:
e
r
E
R
55 Grundlagen der Informationsmodellierung
Ein Entity-Relationship-Diagramm besteht stets aus mindestens
zwei Entities und einer diese Entities verbindenden Relationship.
1
Stehen genau zwei Entities ber eine Relationship in Beziehung, wird
die Relationship eine binre Relationship oder einfach Entity-Rela-
tionship genannt. Das sie darstellende Diagramm wird elementares
Entity-Relationship-Diagramm genannt und durch einen Pfeil
zwischen den beiden Entity-Symbolen und einen Bezeichner fr die
Relationship reprsentiert. Der Pfeil wird eingefhrt, um die Leserich-
tung fr binre Entity-Relationships anzudeuten.
1. Auch ein einzelnes Entity kann man im Sinne einer induktiven Denition als
syntaktisch korrektes E/R-Diagramm verstehen. Eine praktische Relevanz besitzt dieser
Fall i. allg. aber nicht.
56 Grundlagen der Informationsmodellierung
Entity-Relationship-Typ-Diagramme
Im Sinne der konzeptionellen Modellierung spielen solche E/R-
Diagamme auf der Ebene einzelner Entities (Instanzen) eine eher
untergeordnete Rolle (hchstens als Beispiele).
Die Entwicklung von Informationsmodellen erfolgt natrlich auf
der Ebene von Entity- und Relationship-Typen.
57 Grundlagen der Informationsmodellierung
Elementares Entity-Relationship-Diagramm
(Instanz-Ebene)
Elementares Entity-Relationship-Typ-Diagramm
(Typ-Ebene)
Bemerkung: Bei Entity-Relationship-Typen wird in fast allen E/R-
Notationen auf eine Richtungskennzeichnung verzichtet.
e
2
r
e
1
E
1
E
2
R
58 Grundlagen der Informationsmodellierung
Beziehung zwischen Entity-Relationship-Diagramm
und Entity-Relationship-Typ-Diagramm
Entity-Relationship-Typ-Diagramme reprsentieren also das Muster,
nach dem alle zugehrigen Entity-Relationship-(Instanz-)Diagramme
dargestellt werden mssen.
e
1
e
2
r
e
3
r
e
4
E
1
R E
2
mit der Typ-Zuordnung:
e
1
(E
1
), e
3
(E
1
)
r(R)
e
2
(E
2
), e
4
(E
2
)
59 Grundlagen der Informationsmodellierung
Konkretes Beispiel:
hans berlin
fritz
wohnt_in
wohnt_in
dsseldorf
Wohnt_in Person Ort
.
.
.
60 Grundlagen der Informationsmodellierung
Komplexes Entity-Relationship-Diagramm
bzw. Entity-Relationship-Typ-Diagramm
Elementare E/R-Diagramme knnen folgerdermaen zu komplexen
E/R-Diagrammen erweitert werden: Ein Entity, das schon mit einem
anderen Entity ber eine Relationship verbunden ist, kann ber
weitere Relationships mit noch weiteren Entities verbunden werden.
quivalentes gilt natrlich auch fr Entity-Typen bzw. Relationship-
Typen in Entity-Relationship-Typ-Diagrammen.
61 Grundlagen der Informationsmodellierung
Komplexes Entity-Relationship-Diagramm
(Instanz-Ebene)
e
1
e
2
e
3
e
4
r
1
r
2
r
3
e
5
r
4
e
6
e
7
r
6
r
5
r
7
62 Grundlagen der Informationsmodellierung
Komplexes Entity-Relationship-Typ-Diagramm
(Typ-Ebene)
E
1
E
2
E
3
E
4
R
1
R
2
R
3
E
5
R
4
E
6
R
5
E
7
R
6
R
7
63 Grundlagen der Informationsmodellierung
Konkretes Beispiel:
hans berlin deutschland
wohnt_in liegt_in
Person Ort Land
Liegt_in Wohnt_in
64 Grundlagen der Informationsmodellierung
3.1.2 Kombinierte tabellarische Darstellung von
Entities und Entity-Typen sowie von
Relationships und Relationship-Typen
Die mittels E/R-Diagrammen dargestellten Sachverhalte mssen
hufig in ein Datenbankschema berfhrt werden.
Im folgenden wird als Vorbereitung auf die spter noch im Detail
eingefhrte Transformation in das relationale Datenmodell die tabel-
larische Darstellung von E/R-Schemata schematisch eingefhrt.
Tabellarische Darstellungen spielen eine wichtige Rolle als Veran-
schaulichung des Entwurfs relationaler DB-Schemata.
65 Grundlagen der Informationsmodellierung
Tabellarische Darstellung von Entities und Entity-Typ
Beispiel:
Ein Entity-Typ gemeinsam mit einer Menge von ihm zugehrigen
Entities wird durch eine (zun chst)einspaltige Tabelle dargestellt.
Die Kopfzeile enthlt den Bezeichner E des Entity-Typs, jede Zeile
reprsentiert ein Entity mit seinem jeweiligen Bezeichner.
E
2
b
1
b
2
b
3
b
4
b
5
E
1
a
1
a
2
a
3
Entity-Typ-Zuordnung:
a
1
(E
1
), a
2
(E
1
), a
3
(E
1
)
b
1
(E
2
), b
2
(E
2
), b
3
(E
2
), b
4
(E
2
), b
5
(E
2
)
66 Grundlagen der Informationsmodellierung
Tabellarische Darstellung von Entity-Relationships
Ein binrer (Entity-)Relationship-Typ in unserer Diagramm-
Technik zuvor als elementares E/R-Typ-Diagramm graphisch darge-
stellt gemeinsam mit einer Menge von ihm zugehrigen
(Entity-)Relationships (Tupeln) wird (zunchst
1
) durch eine zwei-
spaltige Tabelle dargestellt.
Die Kopfzeile enthlt vorab (in einer Extra-Spalte) den Bezeichner R
des Relationship-Typs sowie die beiden Bezeichner E
1
und E
2
der
beteiligten Entity-Typen, jede Zeile reprsentiert eine konkrete
(Entity-) Relationship (Tupel).
1. In Wirklichkeit ist die Umsetzung von Entity-Relationships in Tabellen des relationalen
Datenmodells etwas komplizierter; hierzu mssen wir allerdings zuerst noch die Begriffe
des Attributs und des Schlsselattributs einfhren.
67 Grundlagen der Informationsmodellierung
Beispiel:
Notationelle Konvention
Bei der Einfhrung der Bezeichner haben wir (bis auf den Anfangs-
buchstaben) Relationships und Relationship-Typen miteinander iden-
tifiziert. In der tabellarischen Darstellung kann daher auf die explizite
Bezeichnung jeder einzelnen Relationship verzichtet werden, wenn
der zugeordnete Relationship-Typ explizit bezeichnet worden ist.
R E
2
b
1
b
2
b
3
b
4
E
1
a
1
a
2
a
3
a
4
a
1
b
1
a
2
b
2
r
r
.
.
.
68 Grundlagen der Informationsmodellierung
Konkretes Beispiel:
(Bemerkung: Dieses Beispiel entstammt noch der guten alten Zeit,
als die Postleitzahlen noch Orte kennzeichneten!)
Postleitzahl Ort Kennzeichnet
berlin
hamburg
bremen
dortmund
1000
2000
2800
4600
69 Grundlagen der Informationsmodellierung
3.1.3 N-re und mehrstellige Relationships / -Typen
Der bisher behandelte Standardfall einer binren Relationship (bzw.
eines binren Relationship-Typs) zwischen genau zwei Entities (bzw.
Entity-Typen) lt sich natrlich verallgemeinern:
Stehen n (wobei n>2) Entities in einer Relationship, so spricht man
von einer n-ren Relationship (auch: Relationship vom Grad n), im
Spezialfall n=3 von einer ternren, im Fall n=4 von einer quaternren
usw. (analog fr Typen).
Diese Relationship-Typen hheren Grades treten in der praktischen
Modellierung nicht sehr oft auf oder lassen sich hnlich gut auch in
mehrere binre Relationships zerlegen; jedoch gibt es Situationen,
wo man ihre Bedeutung nicht ohne weiteres auf mehrere binre Rela-
tionships herunterbrechen kann.
70 Grundlagen der Informationsmodellierung
Beispiel fr einen ternren Relationship-Typ:
Lieferant Produkt
Teil
Liefert_fr
firma_x
Teil
felge
Produkt
fahrrad
firma_y lenker fahrrad
firma_z felge pkw
Liefert_fr Lieferant
71 Grundlagen der Informationsmodellierung
Erluterung:
Es lt sich ohne einen ternren Relationship-Typ nicht ohne
weiteres ausdcken, da firma_x die felge fr das fahrrad und
firma_y die felge fr den pkw liefert, wenn man nur binre Relati-
onships erlaubt.
(bungsaufgabe!)
72 Grundlagen der Informationsmodellierung
Mehrstellige Relationships / -Typen
Ein Spezialfall n-rer Relationships (bzw. Relationship-Typen) ergibt
sich in der folgenden Situation:
Steht ein Entity eines Entity-Typs mit mehreren Entities von
mehreren verschiedenen Entity-Typen in der gleichen Relati-
onship, sprechen wir von einer mehrstelligen Relationship.
73 Grundlagen der Informationsmodellierung
Konkretes Beispiel fr eine mehrstellige Relationship:
firma_x (Firma)
berlin (Standort)
89 (Beschftigte)
chemie (Branche)
Firma Hat Beschftigte
Branche
Standort
hat
74 Grundlagen der Informationsmodellierung
Tabellarische Darstellung mehrstelliger Relationships
In der tabellarischen Darstellung wird erkennbar, da sich ein mehr-
stelliger Relationship-Typ von einem entsprechenden n-ren
Relationship-Typ nicht weiter unterscheidet.
Im E/R-Modell kann man damit aber eine gewisse Asymmetrie zum
Ausdruck bringen, wie wir sie im folgenden bei den Attributen gut
ausnutzen knnen.
Hat Firma
firma_x
Standort
berlin
Beschftigte Branche
89 chemie
firma_y leipzig 120 optik
firma_z bremen 50 chemie
75 Grundlagen der Informationsmodellierung
3.1.4 Einwertige / Mehrwertige Relationships
Steht ein Entity eines Entity-Typs mit nur einem Entity eines
anderen Entity-Typs in einer Relationship, spricht man von einer
einwertigen Relationship.
e
1
r
e
2
76 Grundlagen der Informationsmodellierung
Steht demgegenber ein Entity eines Entity-Typs mit mehreren
Entities eines zweiten Entity-Typs in der gleichen Relationship,
sprechen wir von einer mehrwertigen Relationship.
r
r
r
e
1
(E
2
)
e
2
(E
2
)
e
n
(E
2
)
e
1
(E
1
)
.
.
.
.
.
.
77 Grundlagen der Informationsmodellierung
Beispiel fr eine mehrwertige Relationship:
firma_x
dortmund
mnchen
berlin
Firma Stadt
Hat_Standort_in
hat_Standort_in
hat_Standort_in
hat_Standort_in
78 Grundlagen der Informationsmodellierung
Hinweis!
Die Unterscheidung zwischen einwertigen und mehrwertigen
Relationship-Typen wird in den Typ-Diagrammen nicht sichtbar,
so da ein dort denotierter Relationship-Typ zunchst jede dieser
mglichen Ausprgungen haben kann.
Erst mit dem Konzept der Integrittsbedingungen werden wir
solche Eigenschaften von Relationship-Typen auch auf der Ebene
konzeptueller Modelle ausdrcken knnen.
79 Grundlagen der Informationsmodellierung
Tabellarische Darstellung mehrwertiger Relationships
Schema:
.
.
.
E
1
E
2
e
1
e
1
e
2
e
n
e
1
.
.
.
e
1
R
1
80 Grundlagen der Informationsmodellierung
Konkretes Beispiel:
Firma Standort
mnchen
nrnberg
erlangen
berlin
Hat
berlin
stuttgart
ulm
siemens
daimler-benz
daimler-benz
daimler-benz
siemens
siemens
siemens
81 Grundlagen der Informationsmodellierung
3.1.5 Darstellung von Attributen
In den meisten heute gebruchlichen Entity-Relationship-Konzepten
werden Attribute als weiteres Basiskonzept eingefhrt. Attribute
dienen zur Beschreibung von Eigenschaften von Entities/Entity-
Typen bzw. Relationships/Relationship-Typen.
Graphische Darstellung von Attributen (Typ-Ebene)
E
1
E
2
R
A
3
A
7
A
2
A
5
A
4
A
6
A
1
82 Grundlagen der Informationsmodellierung
3.1.5.1 Attribute bei Entity-Typen
Mit Attributen knnen Entity-Typen charakterisierende Merkmale
zugeordnet werden. Diese Merkmale besitzen bei den einzelnen
Entities eines Entity-Typs dann unterschiedliche Ausprgungen,
d.h. die Attribute nehmen jeweils spezielle Werte (eines dafr vorge-
sehenen Wertebereichs) an.
Die folgende tabellarische Darstellung eines Entity-Typs verdeutlicht
diesen Sachverhalt:
Der Entity-Typ E erhlt die Attribute A
1
, A
2
und A
3
zugeordnet. Diese
Attribute besitzen bei den jeweiligen Entities e
1
, e
2
, e
3
und e
4
entsprechende Werte.
Beachte: Offensichtlich haben hier A
1
und A
2
denselben Wertebe-
reich, A
3
jedoch einen anderen.
83 Grundlagen der Informationsmodellierung
Tabellarische Darstellung von Entity-Attributen
Schema:
E A
1
A
2
A
3
e
1
w
1
w
5
v
3
e
2
w
2
w
6
v
1
e
3
w
3
w
1
v
2
e
4
w
4
w
2
v
1
84 Grundlagen der Informationsmodellierung
Konkretes Beispiel:
Tabelle mit den Attributen Farbe, Rahmengre und Radgre des
Entity-Typs Fahrrad
Fahrrad Farbe Rahmengre Radgre
fahrrad
1
rot 50 cm 24"
fahrrad
2
blau 60 cm 28"
ralfs_Fahrrad grn 58 cm 28"
steffis_Fahrrad pink 64 cm 28"
85 Grundlagen der Informationsmodellierung
Schlsselattribute
Attribute, deren Wertausprgungen gerade die Eigenschaft besitzen,
eindeutig ein jeweils mit diesem Wert versehenes Entity zu identifi-
zieren, werden als Schlsselattribute bezeichnet.
In der graphischen E/R-Darstellung werden die Schlsselattribute
hufig durch irgendein besonderes Symbol gekennzeichnet bei uns
durch den ausgefllten Kreis und in der textuellen Darstellung
sowohl in den Diagrammen als auch in den Tabellenberschriften
unterstrichen.
86 Grundlagen der Informationsmodellierung
Wichtige Bemerkung:
Ein zwingender Grund fr die Unterscheidung zwischen Attributen
und Entity-Typen existiert nicht. Attribute sind Entity-Typen auf
einem niedrigen Granularittsniveau.
Die Gesamtheit der Attribute erst so knnte man sagen konstitu-
iert einen Entity-Typ und selbst der Bezeichner eines einzelnen Entity
ist auch nur ein bestimmter Attributwert bzw. ein identifizierendes
Entity (das zuvor besprochene Schlsselattribut).
Im Umfeld der spter auftretenden abstrakten Entity-Typen werden
wir diese Diskussion noch einmal aufgreifen.
87 Grundlagen der Informationsmodellierung
Bemerkung (Forts.)
Die Einfhrung von Attributen suggeriert zudem, da ein Entity-
Relationship-Modell immer nur auf zwei Granularittsniveaus
dargestellt wird: Auf dem Niveau der Entities und Relationships und
auf dem Niveau der Attribute.
Unser Konzept zur Informationsmodellierung verfolgt dagegen
das Ziel, Informationsmodelle und damit Entity-Relationship-Modelle
mit beliebig vielen Granularittsniveaus darstellen zu knnen.
Wir stellen daher als wichtige Alternative vor, Attribute mit Entity-
Typen zu modellieren. Der sog. Hat-Relationship-Typ liefert dafr
eine Mglichkeit.
88 Grundlagen der Informationsmodellierung
3.1.5.2 Darstellung von Entity-Attributen mit dem
Hat-Relationship-Typ
Mit dem Hat-Relationship-Typ wird zum Ausdruck gebracht, da
ein Entity ein Charakteristikum oder eine Eigenschaft hat.
Hat E Eigenschaft
89 Grundlagen der Informationsmodellierung
Konkretes Beispiel:
Angestellter
Aufgabe
Hat Vorgesetzter
Qualifikation
Gehalt
Name
Personalnummer
90 Grundlagen der Informationsmodellierung
Konkretes Beispiel (Alternative mit Attributen):
Angestellter
Aufgabe
Vorgesetzter
Qualifikation
Gehalt
Name
Personalnummer
91 Grundlagen der Informationsmodellierung
Diskussion der Alternativen:
Atomare Attribute:
Man wird in diesem Beispiel wohl mit Recht annehmen knnen, da
die "Personalnummer" oder das "Gehalt" tatschlich atomare Daten-
werte (etwa vom Typ string oder real) sind und somit als einfache
Attribute dargestellt werden knnen. "Name" knnte in zwei atomare
Attribute aufgebrochen werden: "Familienname" und "Vorname".
Eigenschaften als Entity-Typen:
"Aufgabe" oder "Qualifikation" knnen aber durchaus eine komplexe
innere Struktur und weitere Attribute aufweisen und ggf. mit noch
weitere Entity-Typen in Beziehung stehen, so da hier tatschlich
92 Grundlagen der Informationsmodellierung
eine Modellierung als eigenstndiger Entity-Typ (ggf. auch mit
weiteren Attributen versehen) angemessen erscheint.
Wechsel zu Relationship-Typen:
Noch anders verhlt es sich bei "Vorgesetzter": "Vorgesetzter zu
sein" ist eher eine Beziehung zwischen zwei Angestellten und sollte
konsequenterweise auch als Relationship-Typ modelliert werden.
Wir werden auf derartige Wechselspiele zwischen Entity-Typen und
Relationship-Typen je nach gewhltem Abstraktionsniveau
noch im Kapitel ber die Abstraktionskonzepte eingehen.
93 Grundlagen der Informationsmodellierung
Konkretes Beispiel (Ergebnis der Diskussion):
Angestellter
Aufgabe
V
e
r
a
n
w
o
r
t
l
i
c
h
Qualifikation
Ist
Vorgesetzter
von
Gehalt
Name
Personal-
Vorname
nummer
E
r
f

l
l
t f

r
94 Grundlagen der Informationsmodellierung
Alternative tabellarische Darstellung von Entity-Typen
Haben wir ein Schlsselattribut fr einen Entity-Typen, so kann
dieses zur Identifizierung der Entities verwendet werden. Eine geson-
derte Bezeichnung der Entities ist dann nicht mehr notwendig.
Schema:
E A
1
A
2
A
3
w
1
w
5
v
3
w
2
w
6
v
1
w
3
w
1
v
2
w
4
w
1
v
1
95 Grundlagen der Informationsmodellierung
3.1.5.3 Attribute bei Relationship-Typen
Analog zu den Entity-Typen knnen auch den Relationship-Typen mit
Attributen charakterisierende Merkmale zugeordnet werden.
A
1
A
2
. . .
E
1
E
2
R
96 Grundlagen der Informationsmodellierung
Alternative Darstellungsform:
In dieser Darstellungsform fllt auf, da ein binrer Relationship-Typ
mit zwei "Attributen" notationell mit einem quaternren Relati-
onshiptyp zusammenfllt.
A
1
A
2
. . .
E
1
E
2
R
97 Grundlagen der Informationsmodellierung
Konkretes Beispiel:
Wertebereich von Zeitumfang: {vollzeit, teilzeit}
Wertebereich von Ort: Menge aller Standorte des Unternehmens
Mitarbeiter Projekt
Arbeitet_an
Zeitumfang Ort
98 Grundlagen der Informationsmodellierung
Tabellarische Darstellung von Relationship-Attributen
Schema:
Attribute von Relationships werden zur Abgrenzung von den Entities
durch eine Doppellinie abgetrennt.
R E
1
E
2
R-A
1
R-A
2
... R-A
n
e
11
e
21
w
11
w
21
... w
n1
e
12
e
22
w
12
w
22
... w
n2
e
13
e
23
w
13
w
23
... w
n3
e
14
e
24
w
14
w
24
... w
n4
99 Grundlagen der Informationsmodellierung
Tabellarische Darstellung von Relationship-Attributen
Konkretes Beispiel:
Arbeitet_an Mitarbeiter Projekt Zeitumfang Ort
hans dbms vollzeit berlin
franz dbms teilzeit berlin
karl infmod vollzeit berlin
ursula dbms teilzeit kln
100 Grundlagen der Informationsmodellierung
Bemerkung:
Die bislang erfolgten Ausfhrungen zur tabellarischen Darstellung
von E/R-Diagrammen sollten zur prinzipiellen Einfhrung von
Tabellen als Darstellungsmittel dienen. Die Details der tabellarischen
Darstellung komplexerer E/R-Diagramme speziell die Frage, wie
mit den Attributen und dabei vor allem mit den Schlsseln verfahren
wird werden wir nach der Einfhrung der Integrittsbedingungen
im Zusammmenhang mit unserer Diskussion ber Abstraktionskon-
zepte behandeln (sowie vertiefend dann mit praktischen bungen in
der Lehrveranstaltung "Datenbanksysteme").