Specify Your Rule's Logic

Use a logic operator in your statement rule to enforce a relationship, such as Requires, Negates, Implies, and so on.

Consider this pseudocode:

If you select option a in the x configured item, then you must also select option y.

Note

  • You can propagate logic from operand x to operand y, or from operand y to operand x.
  • If your logic doesn't propagate the value for a relationship, then the rule doesn't modify the option's logic on the other side of the rule.
  • The term true means the configuration includes the option.
  • The term false means the configuration doesn't include the option.
  • We use the terms true and false here only to document how the rule works. You don't use true and false in your code.

Requires

If the user selects an option, then Oracle Configurator applies the same value to the other option.

The effect of the Requires relation

Note

  • If the user selects option a, then Configurator also selects option b.
  • If the user deselects option a, then Configurator also deselects option b.
  • If the user selects option b, then Configurator also selects option a.
  • If the user deselects option b, then Configurator also deselects option a.

Negates

If the user selects an option, then Configurator applies the opposite value to the other option.

The effect of the Negates relation

Note

  • If the user selects option a, then Configurator deselects option b.
  • If the user deselects option a, then Configurator selects option b.
  • If the user selects option b, then Configurator deselects option a.
  • If the user deselects option b, then Configurator selects option a.

Implies

Here's how an Implies rule works.

The effect of the Implies relation

Note

  • If the user selects option a, then Configurator also selects option b.
  • If the user deselects option a, then Configurator deselects option b, and the user can select or deselect option b.
  • If the user selects option b, then Configurator deselects option a, and the user can select or deselect option a.
  • If the user deselects option b, then Configurator also deselects option a.

Excludes

Here's how an Excludes rule works.

The effect of the Excludes relation

Note

  • If the user selects option a, then Configurator deselects option b and prevents the user from selecting b because the rule excludes b from the configuration.
  • If the user deselects option a, then option b becomes available and the user can select or deselect option b.
  • If the user selects option b, then Configurator deselects option a and prevents the user from selecting option a.
  • If the user deselects option b, then option a becomes available and the user can select or deselect option a.

Logic States and Rule Variables

Configurator attempts to narrow the values that your user can set for each model’s node at run time. You can specify the minimum value and the maximum value for each node. If your user doesn't:

  • Select or exclude an option, then Configurator doesn't bind the variable.
  • Make a selection, enter a value, or click Finish and Review, then Configurator doesn't bind the variable.
  • Make a selection, or if Configurator hasn't excluded an option at run time, then the value of the SelectionState attribute and the DetailedSelectionState attribute is Selectable.
  • Configurator might also exclude an option through a default, search decision, or autocomplete.