Show TOC

 Constraints: Wertebereich einschränken

Sie können unter INFERENCES nicht nur Werte herleiten, sondern bei einschränkbaren Merkmalen auch den Wertebereich einschränken.

  • Dazu muß bei der Merkmalpflege das Merkmal der Klasse als einschränkbar gekennzeichnet worden sein (vgl. Thema Einschränkbare Merkmale ).

  • Die herzuleitenden Variablen müssen entweder alle einschränkbar oder alle nicht einschränkbar sein.

Hinweis Hinweis

Die Einschränkung von Wertebereichen geht zu Lasten der Performance Ihres Systems.

Bei der Verwendung von Tabellen zur Einschränkung des Wertebereiches kommt es insbesondere auf die Größe der Tabelle und auf die Anzahl der Tabellenspalten an, die für Herleitungen verwendet werden.

Ende des Hinweises

Es gibt verschiedene Möglichkeiten, um den Wertebereich einzuschränken:

Einschränken über Tabellenzugriff

Um den Wertebereich eines Merkmals über ein Constraint dynamisch zu verwalten, können Sie sich auf Tabellen beziehen. Sie können in der Tabellenpflege zulässige Wertkombinationen definieren. Sie können in einem Constraint auf die Tabelle zugreifen. Entsprechend den Kombinationen in der Tabelle kann dann der Wertebereich für Merkmale eingeschränkt werden.

Weitere Hinweise zum Arbeiten mit Tabellen erhalten Sie im Abschnitt Tabellen und Funktion Thema Tabellen in Constraints .

Einschränkung über IN

Eine weitere Möglichkeit, Angaben zu einem zulässigen Wertebereich zu machen, besteht darin, über den Ausdruck IN die zulässigen Werte anzugeben:

OBJECTS: PC IS_A (300) PC WHERE GH = Gehaeuse;FP = Festplatte.

RESTRICTIONS:

FP IN (‘1275’, ‘1620’, ‘2000’) IF GH = ‘Tower’.

INFERENCES:

FP.

Einschränken über lineare Funktion

Diese Art der Einschränkung ist nur bei numerischen Merkmalen möglich. Im Restriktionsteil eines Constraints, kann für einschränkbare, numerische Merkmale eine Einschränkung der Form f(x) < 0 (rechte Seite konstanter Wert) angegeben werden, wenn f(x) ein linearer Ausdruck in der Variablen X ist. An Stelle von ‘<‘ sind auch alle anderen Vergleichsoperatoren zulässig.

Beispiel Beispiel

RESTRICTIONS:

5L - 20 > 0

Ende des Beispiels.

Einschränken über Vergleich

Sie können den Wertebereich für Character-Merkmal über den Vergleich zweier Character-Merkmale einschränken:

OBJECTS: PC is_a (300)PC

RESTRICTIONS:

PC.FARBE_1 = PC.FARBE_2

INFERENCES:

PC.FARBE_1

Farbe_1 und Farbe_2 sind beides einschränkbare Merkmale. Dem Merkmal FARBE_1 werden über das Constraint die gleichen Werte wie dem Merkmale FARBE_2 zugewiesen.