prev up next


Extensionen und Schlüssel

Eine Extension ist die Menge aller Instanzen eines Objekt-Typs incl. seiner spezialisierten Untertypen (siehe später). Sie kann verwendet werden für Anfragen der Art ``Suche alle Objekte eines Typs, die eine bestimmte Bedingung erfüllen``. Man kann zu einem Objekttyp auch Schlüssel definieren, deren Eindeutigkeit innerhalb der Extension gewährleistet wird. Diese Schlüsselinformation wird jedoch nur als Integritätsbedingung verwendet und nicht zur Referenzierung von Objekten:
class Studenten (extent AlleStudenten key MatrNr) {
  attribute    long             MatrNr;
  attribute    string           Name;
  attribute    short            Semester;
  relationship set(Vorlesungen) hoert         inverse Vorlesungen::Hoerer; 
  relationship set(Pruefungen)  wurdeGeprueft inverse Pruefungen::Pruefling;
};

prev up next