Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Polymorphe Konsistenzbedingungen (1) Bedingung 1: Schlüsselbedingung. Mit der auf Skalierbarkeit zugeschnittenen Konstruktion der Extension geht ein key-Konstruktor.

Ähnliche Präsentationen


Präsentation zum Thema: "Polymorphe Konsistenzbedingungen (1) Bedingung 1: Schlüsselbedingung. Mit der auf Skalierbarkeit zugeschnittenen Konstruktion der Extension geht ein key-Konstruktor."—  Präsentation transkript:

1 Polymorphe Konsistenzbedingungen (1) Bedingung 1: Schlüsselbedingung. Mit der auf Skalierbarkeit zugeschnittenen Konstruktion der Extension geht ein key-Konstruktor einher, mit dem sich innerhalb einer Extension eine Schlüsseleigenschaft für strukturierte Objekte durchsetzen läßt. key ::= Extent (2 sel 2 Literaltyp ) Objekttyp Ziel: Bessere Handhabbarkeit der Eindeutigkeit von Tupeln in Extension dadurch dass zur Feststellung der Eindeutigkeit die Kenntnis der Werte unter ausgewählten Attributen genügt.

2 Polymorphe Konsistenzbedingungen (2) Schlüsselbedingungen können durch Angabe einer key-Spezifikation formuliert werden: class Ticket (key ticketNr) { attribute string ticketNr, Kunde inhaber; } Beachte: Objekt-Identifikator ist separat von ticketNr-Wert (letzterer kann sich ändern, ersterer nicht).

3 Polymorphe Konsistenzbedingungen (3) Bedingung 2: Erlaubt referenzielle Konsistenz zwischen zwei Objekttypen, indem man ein ref- Attribut als relationship spezifiziert. relationship ::= Objekttyp Objekttyp Zweiseitige referentielle Konsistenz zwischen zwei Objekttypen erhält man, indem man in beiden Typen dem relationship-Konstrukt eine inverse-Angabe hinzu fügt, die das relationship-Konstrukt in der jeweils anderen Klasse benennt. Nur zweistellige Beziehungen können spezifiziert werden.

4 Polymorphe Konsistenzbedingungen (4) Semantik ist die der Mengeninklusion. Beispiel: 1:n-Beziehung zwischen Klassen Tickets einerseits sowie Kunde und Buchung andererseits: class Ticket {attribute string ticketNr; relationship Kunde inhaber inverse Kunde::tickets; relationship Set buchungen inverse Buchung::ticket; void buche (in Flug flug, in date datum, in string platzCode); void storniere (in string flugNr, in date datum);};} }


Herunterladen ppt "Polymorphe Konsistenzbedingungen (1) Bedingung 1: Schlüsselbedingung. Mit der auf Skalierbarkeit zugeschnittenen Konstruktion der Extension geht ein key-Konstruktor."

Ähnliche Präsentationen


Google-Anzeigen