prev up next

Das Objektorientierte Modell

Eine Klasse repräsentiert einen Entity-Typ zusammen mit einer Struktur- und Verhaltensbeschreibung, welche ggf. an Unterklassen vererbt werden können. Binäre Beziehungen können durch mengenwertige Attribute modelliert werden:

class Studenten {
  attribute long   Matrnr;
  attribute String Name;
  relationship set <Vorlesungen> hoert inverse Vorlesungen::Hoerer
}

class Professoren {
  attribute long   PersNr;
  attribute String Name;
  relationship set <Vorlesungen> liest inverse Vorlesungen::gelesenVon
}

class Vorlesungen {
  attribute long   VorlNr;
  attribute String Titel;
  relationship Professoren gelesenVon inverse Professoren::liest
  relationship set <Studenten> Hoerer inverse Studenten::hoert
}
Beispiel-Query: Welche Studenten besuchen Vorlesungen von Sokrates ?
select s.Name
from s in AlleStudenten, v in s.hoert
where v.gelesenVon.Name = "Sokrates"


prev up next