Show TOC

 Mehrwertige Merkmale in Tabellenaufrufen

Verwendung

In Tabellen sollten Sie nur einwertige Merkmale verwenden. Bei mehrwertigen Merkmalen kann es zu Schwierigkeiten bei der Abarbeitung in Beziehungswissen kommen.

Wenn das Merkmal der Klasse mehrwertig ist, sollten Sie daher für die Tabelle ein eigenes einwertiges Merkmal anlegen, das das gleiche Format und die gleichen Werte hat, wie das Merkmal der Klasse, dem es zugewiesen wird.

Beispiel Beispiel

In der Klasse FAHRRAD ist das mehrwertige Merkmal ZUBEHOER und das einwertige Merkmal MODELL. Sie möchten eine Tabelle definieren, in der abhängig vom Modell des Fahrrads das Zubehör festgelegt wird.

Dazu ist es notwendig für die Tabelle ein zusätzliches Merkmal ZUBEHOER_EINW zu definieren. Für das Merkmal MODELL braucht kein eigenes Merkmal für die Tabelle definiert zu werden, da es einwertig ist.

In der Tabelle erfassen Sie die Wertekombinationen für MODELL und ZUBEHOER_EINW.

In einer Aktion wird das einwertige Merkmal mit dem mehrwertigen Merkmal verglichen:

TABLE Zubehoer (Modell = Modell, Zubehoer_einw = $Self.Zubehoer)

Ende des Beispiels.

Funktionsumfang

Herleitung für ein mehrwertiges Merkmal

Die Herleitungen aus einer Tabelle müssen immer eindeutig sein. Das bedeutet, daß auch für mehrwertige Merkmale über eine Tabelle nur ein Wert hergeleitet werden kann:

Table Zubehoer01

Modell

Zubehoer_einw

JOURNEY

Seitenständer

CITY

Korb

COUNTRY

Mantelschoner

Für ein Modell können nicht gleichzeitig ein Seitenständer und ein Korb als Zubehör über die Tabelle hergeleitet werden.

Mehrwertige Merkmale in Bedingungen

Ein einwertiges Merkmal der Tabelle kann in Bedingungen nicht mit einem mehrwertigen Merkmal der Klasse verglichen werden, da die Aussage nicht eindeutig interpretiert werden kann.

Folgender Tabellenaufruf ist z.B. in einer Vorbedingung unzulässig:

TABLE Zubehoer (Modell = Modell, Zubehoer_einw = Zubehoer)

Für das System ist nicht eindeutig, wie es den Vergleich von ZUBEHOER_EINW und ZUBEHOER interpretieren soll, damit die Bedingung gültig ist:

  • Muß der Wert von ZUBEHOER_EINW in den Werten, die für ZUBEHOER gesetzt wurden, enthalten sein?

  • Oder darf nur genau der in der Tabelle angegebene Wert für ZUBEHOER gesetzt sein?

Siehe auch:

Merkmale einschränken mit Variantentabelle