Creating a Rule Set
  • 01 Jul 2022
  • 4 Minutes to read
  • Dark
    Light

Creating a Rule Set

  • Dark
    Light

Overview

Rule Sets are a set of Rules and Flows that are targeted to work together for complex data evaluation. Conditional Rules provide the ability to create Rule Sets within a Rule Set.

A Conditional Rule Set may evaluate conditions to determine if this Rule Set needs to be executed and may extend Rule Set input data.


Rule Set Configuration

  1. In the Designer Project, click CREATE RULE on the Global Action Bar. Select Rule Set.
  2. In the Element Gallery, expand the Rule Set section and then select, name, and create a Rule Set.


  3. On the Rule Set action bar, click Setup. Below is an overview of each property.

Service Settings

PropertyDescription
Integration TypeSets the Integration Settings for the Rule Set, allowing the Rule Set to be accessed outside of Decisions. By default, this is set to None

Rule Set Data

PropertyDescription
InputsDefines the input datatypes used by the Ruleset

Setup

PropertyDescription
UsageDepending on the selected Usage type, this will affect the output of the Rule Set

LogicalOutputs either a True or False boolean when the Rule Set completes

DataReturnOuputs a Data object when the Rule Set completes. Used for data manipulation

ScoringOutputs a numerical value when the Rule Set completes.  When this option is selected, a new option for Scoring Strategy becomes available.
Rule Set TypeDetermines how the Rule Set will be ran

Template w/ InstancesUsed for creating a base set of Rules with specific sub sets for different cases

InstanceUsed for creating only a single set of the Rule set to be ran

ConditionalUsed for creating a Rule Set within a Rule Set. 
Sort by Order before RunSorts the Rules based on the execution order
Advanced

Instance Create NameThe name for a created instance of the Rule Set during run time

Show Messages for Expired or Disabled ItemsCreates a log message when expired or disabled Rules are ran

Stop Processing On ExceptionCauses the Rule Set to end when an exception is thrown

Rule Types

PropertyDescription
Flows - EvaluationEnables Flows to be created to evaluate data within a Rule Set
Flows - Evaluation/Data AdditionEnables Flows to be created to evaluate and add additional data within a Rule Set
Flows - Transform DataEnables Flows to be created which manipulate existing data within a Rule Set
Action RulesEnables Rules that trigger different Rules or Flows to execute based on its outcome
Rule TablesEnables Rule Tables to be created within a Rule Set
Truth TablesEnables Truth Tables to be created within a Rule Set
Matrix RulesEnables Matrix Rules to be created within a Rule Set
Tree RulesEnables Tree Rules to be created within a Rule Set
Allow Interceptor RulesEnables Interceptor Rules to be created within a Rule Set 

Outcome Options

PropertyDescription
Show All True PathDisplays an All True outcome path when the Rule Set is used within a Flow
Show All False PathDisplays an All False outcome path when the Rule Set is used within a Flow
Path For No Rule ResultDetermines what path the Rule Set will travel if there is no result
Defined Outcome PathsUsed to define additional outcome paths for the Rule Set
Done Path NameUpdates the name for the Done outcome path
Lists

Output Error ListOutputs a list of errors that occurred when the Rule Set is ran

Output False ListOutput a list of Rules that returned a False result

Output No Result ListOutputs a list of Rules that returned no result

Output Not Run ListOutputs a list of Rules that did not run when the Rule Set executed

Output True ListOutputs a list of Rules that returned a True result

Data Storage

Property
Result Data StorageDetermines what data will be stored within the Rule Set. By default this value uses Header.
Result Extension TypeDetermines the Rule Set's Result extension type used to store executed data
Store Not RunStores executed data for Rules were not ran



Creating a Rule Set

In this example, a Rule Set will be created and house a Conditional Rule Set. Then, a Flow will test the Conditional Rule SetBelow is a downloadable example which can be imported into Decisions.

  1. Input data to the Rule set will need to be defined. Select Setup.
  2. Under RULE SET DATA > Inputs, click ADD.
  3. Define the Input Data. In this case, Location (String) and Amount (Double) are configured as inputs.
  4. Under the SETUP, select Conditional for Usage and Conditional for Rule Set Type. Then, click SAVE to save changes and close the dialog window.
  5. On the Rule Set action panel, click Create Rule Set [Conditional]. When the dialog box appears, provide a name for the Rule set and click CREATE.
  6. New Rules can be defined using the Add Evaluation Rule. To edit existing rules, click on the Pencil Icon.
  7. The Rule Designer will open where the Rule can be updated/defined.

Running a Rule Set in a Flow

  1. Create a new Flow.
  2. In the Toolbox, select and drag a Run Rule Set from the Designer Entities > Rules category onto the workspace.
  3. On the Properties panel, click PICK under the RULE SET CONFIGURATION category and select the created Rule Set.
  4. Define the inputs needed for the Rule Set.
  5. Since the Rule Set is a conditional Rule Set, the Inclusion Rule Control input is available.

    This input sets the same execution Run Mode for all Evaluation and Intercept Rules, without the need to manually set the values. Below is an overview of the options available
OptionDescription
Run AllRuns all Rules within a Rule Set
Stop on First TrueStops the Rule execution on the first True result
Stop on First FalseStops the Rule execution on the first False result

Debug

  1. Click Debug on the top action bar. When the Debugger window opens, click START DEBUGGING. 
  2. After the Flow runs, the debugger will display the Rule Set that was running, along with the results for each individual Rule, depending on the Run mode configuration.

Adding Additional Rules

On the Rule Set Designer Folder, click Add Evaluation Rule on the Rule Set action bar, then, click CREATE RULE.



Setting Execution Order

If multiple Rules exist within a Rule Set, the order in which they will execute can be configured. Within a Rule Set, click Setup, then check Sort by Order before Run.


To set the execution order: 

Edit the Rule. In the Properties panel of the Rule, check the SETTINGS category. Enter a numerical value in the Order field under the Rule Set sub category.


When the Rule is run through the debugger as part of a Flow, then the rules will execute in their configured order.



For further information on Rules, visit the Decisions Forum.

Was this article helpful?