Einfache Prioritäten für Regeln festlegen

Regeln haben Prioritäten, die statisch oder dynamisch sein können. Verwenden Sie eine Konstante, um eine statische Priorität zu definieren, oder verwenden Sie einen Ausdruck, der eine Regelsatzvariable enthält, um eine dynamische Priorität zu definieren.
Wenn Sie definieren wollen, in welcher Reihenfolge die Ausführung von Regeln erfolgt, müssen Sie die Priorität einer Regel in der Ansicht Eigenschaften des betreffenden Regelartefakts mit der Eigenschaft Priorität festlegen.
Hinweis: Um die Eigenschaft bearbeiten zu können, stellen Sie sicher, dass das Handsymbol Handsymbol, um Eigenschaften bearbeitbar zu machen neben der Spaltenüberschrift Wert in der Ansicht Eigenschaften sichtbar ist.

Statische Priorität

Verwenden Sie eine Priorität vom Typ 'static', um die Reihenfolge der Regelausführung unter den Regeln zu ändern. Statische Prioritäten sind ganze Zahlen, deren relative Werte die Prioritäten unter den Regeln bestimmen. Sie können auch eine Priorität vom Typ 'static' verwenden, um die Reihenfolge der Ausführung unter mehreren Instanzen derselben Regel zu ändern, wenn diese gleichzeitig zur Ausführung infrage kommen.

Statische Prioritäten werden unter Verwendung einer Konstanten definiert. Im Feld Wert der Eigenschaft Priorität geben Sie eine Zahl ein, die für die Priorität steht. Die Zahl kann eine beliebige Java™ -Ganzzahl zwischen -109 und + 109 sein. Je höher die Zahl ist, desto höher ist die Ausführungspriorität der Regel.

Dynamische Priorität

Bei einer Priorität vom Typ 'dynamic' handelt es sich um einen Ausdruck, dessen Wert von Regelsatzvariablen abhängt, die im Bedingungsteil einer Regel gebunden sind.
Anmerkung: Es wird eine Fehlernachricht angezeigt, wenn ein Regelsatzarchiv eine Regelaufgabe im sequenziellen Modus enthält, die Regeln mit einer dynamischen Regelpriorität auswählt.

Im Feld Wert der Eigenschaft Priorität geben Sie einen Ausdruck ein, in dem eine Regelsatzvariable verwendet wird. In dem Ausdruck kann jede Variable verwendet werden, die im Bedingungsteil der Regel definiert ist, sofern ihr Geltungsbereich der gesamte Regelsatz ist. Wenn der Ausdruck eine Zahl zurückgibt, die keine ganze Zahl ist, wird sie nach der Java-Sprachspezifikation in eine ganze Zahl konvertiert.

Im Folgenden sehen Sie zwei Beispiele:
  • prior1 + ?p

  • -?a

Konstanten

In Regelprioritäten können Konstanten verwendet werden. Diese Prioritätswerte sind ganze Zahlen, die als Literal oder als Ausdruck mit einem ganzzahligen Wert geschrieben werden.

In der folgenden Liste sind die Konstanten für die Festlegung von Prioritäten für Regeln aufgeführt:

  • maximum: Die höchste Priorität. Ihr Wert beträgt eine Milliarde.
  • high: Die zweithöchste Priorität. Ihr Wert beträgt eine Million.
  • low: Die zweitniedrigste Priorität. Ihr Wert beträgt minus eine Million.
  • minimum: Die niedrigste Priorität. Ihr Wert beträgt minus eine Milliarde.