Re
latio
ne
nth
eo
rieO
bje
kto
rien
tiert
e D
ate
nb
an
ken
A
IFB
SS
2001
3
6.2.3 Die Objekt-Definitionssprache ODL 6.2.3 Die Objekt-Definitionssprache ODL (3/24)(3/24)
• Typeigenschaften legen die Klasseneigenschaften fest.
• Objekteigenschaften und -operationen geben an, wie sich ein Objekt der Klasse verhält.
Im folgenden wird der Begriff Klasse anstelle von Typ verwendet (gewohnte OO Begriffswelt)
Besonderheiten der ODL:
• Eine Beziehung (relationships) kann ebenfalls Schlüssel oder Teil eines Schlüssels sein
• Klassenattribute oder Klassenoperationen können nicht deklariert werden.
• Keine Unterscheidung zwischen abstrakten und konkreten Klassen.
Re
latio
ne
nth
eo
rieO
bje
kto
rien
tiert
e D
ate
nb
an
ken
A
IFB
SS
2001
4
6.2.3 Die Objekt-Definitionssprache ODL 6.2.3 Die Objekt-Definitionssprache ODL (4/24)(4/24)
Festlegen von Klasseneigenschaften
•Direkte Oberklassen der beschriebenen Klasse
• Extent der Klasse (Name des „Behälters“, der alle erzeugten Objekte einer Klasse aufnimmt (i.allg. wird der Plural des Klassennamens dafür verwendet)
• Schlüssel der Klasse, d.h. Schlüsselattribute & Beziehungen der Klasse, die es erlauben, Objekte der Klasse eindeutig zu identifizieren (Jedes Objekt hat eigene interne OID, d.h. kein Primärschlüssel nötig)
(angegeben hinter dem Klassennamen nach: mehrere Oberklassen werden durch Komma getrennt)
Re
latio
ne
nth
eo
rieO
bje
kto
rien
tiert
e D
ate
nb
an
ken
A
IFB
SS
2001
5
6.2.3 Die Objekt-Definitionssprache ODL 6.2.3 Die Objekt-Definitionssprache ODL (5/24)(5/24)
Festlegen von Objekteigenschaften und -operationen
• Attribute der Objekte
- Attributtyp
- Attributname
• Beziehungen der Objekte
- Assoziationen oder Aggregationen zu Objekten anderer oder der eigenen Klasse
- Für jede Beziehung wird
• die Klasse angegeben, zu deren Objekten die Beziehung bestehen kann, und
• der Name der Beziehung oder der entsprechende Rollenname
- Beziehungen sind binär
Re
latio
ne
nth
eo
rieO
bje
kto
rien
tiert
e D
ate
nb
an
ken
A
IFB
SS
2001
6
6.2.3 Die Objekt-Definitionssprache ODL 6.2.3 Die Objekt-Definitionssprache ODL (6/24)(6/24)
• Kardinalitäten
- 1:1, 1:n, n:m
• Objektoperationen
- Namen
- Ein- und Ausgabeparameter mit ihren Typen
- Namen für Ausnahmen (exceptions)
Re
latio
ne
nth
eo
rieO
bje
kto
rien
tiert
e D
ate
nb
an
ken
A
IFB
SS
2001
23
6.2.3 Die Objekt-Definitionssprache ODL 6.2.3 Die Objekt-Definitionssprache ODL (23/24)(23/24)
Beispiel 6-3: (Fortsetzung von Beispiel 6-1: und Beispiel 6-2: )
interface Dozent: Person
( extent Dozenten
key Dozenten_Nummer ) : persistent
{ // AttributeAttribute
attribute Unsigned_Short
Dozenten_Nummer;
attribute String Biographie;
attribute Float Umsatz;
attribute Bag <Float> Praemien;
// Multimenge
Re
latio
ne
nth
eo
rieO
bje
kto
rien
tiert
e D
ate
nb
an
ken
A
IFB
SS
2001
24
6.2.3 Die Objekt-Definitionssprache ODL 6.2.3 Die Objekt-Definitionssprache ODL (24/24)(24/24)
// BeziehungenBeziehungen
relationship Set <Seminartyp> kann_fachlich_abhalten inverse Seminartyp :: kann_abgehalten_werden_von ;
relationship Set <Veranstaltung> Referent inverse Veranstaltung :: abgehalten_von;
relationship Set <Veranstaltung> Seminarleiter inverse Veranstaltung :: geleitet_von;
// OperationenOperationen void Praemien_berechnen
(out Float Praemie);Geldeinheit Gehalt();
};
Top Related