CONTENTS
Writing Rules
Getting Started
Overview: Ways of Expressing a Business Policy
Tutorial: Creating Business Rules
Before You Start
Tutorial Scenario
Viewing the Completed Tutorial
Step 1: Create Categories
Step 2: Create a Business Rule Template
Step 3: Create Business Rules from the Template
Step 4: Create a Business Rule with an Else Part
Step 5: Test Business Rule Execution
Step 6: Fix Business Rule Execution
Tutorial: Editing Decision Tables
Before You Start
Tutorial Scenario
Viewing the Completed Tutorial
Step 1: Create the MinimumAge Decision Table
Step 2: Generate Lines in the Table
Step 3: Correct an Overlapping Data Error
Step 4: Import Data from Excel into a Decision Table
Step 5: Change the Formatting
Step 6: Execute the Decision Table
Concepts
Automatic Variables
Anatomy of a Rule Artifact
Ruleset Variables
Properties and Tags
Business Rules
Structure of a Business Rule
Rule Definitions
What is a Variable
Variables and Rule Eligibility
Types of Variable Definition
Rule Conditions
What are Conditions
Types of Conditions
Precedence of Logical Operators Between Conditions
Groups of Condition Statements
Rule Actions
What are Rule Actions
Action Phrases
Groups of Action Statements
Else Part
Business Rule Editing Errors and Warnings
Decision Tables
Overview of Decision Tables
Columns
Rows and Cells
Preconditions
Decision Table Editing Errors and Warnings
Decision Table to IRL Mapping
Decision Trees
What is a Decision Tree
Decision Tree Editing Errors and Warnings
Technical Rules
What is a Technical Rule
Variables in Technical Rules
Technical Rule Conditions
Technical Rule Actions
Action Part of a Technical Rule
If/Else Control
Loops
Branching Statements
Exception Handling Statements
Else Clause with an Evaluate Statement
Business Rule Templates
Tasks
Defining Ruleset Variables
Creating Business Rules
Creating a Business Rule
Building Rules Using the Intellirule Editor
Switching to the Intellirule Editor
Creating Rule Parts
Inserting a Term or a Phrase
Accessing the Name of the Currently Executed Rule in an Action Part
Defining a Variable
Negating a Condition Statement
Navigating from a Business Rule to a Business Element
Avoiding Ambiguity in Rules
Building Rules Using the Business Rule Guided Editor
Switching to the Business Rule Guided Editor
Creating Rule Parts
Adding or Removing Rule Statements
Defining a Variable
Choosing Whether to Enter Values or Select Items
Inserting an Arithmetic Expression
Adding a Statement to a Group of Statements
Controlling How Condition Statements are Combined
Changing the Grouping Order of Condition Statements
Negating a Condition Statement
Adding Restrictions to Definition or Condition Statements
Specifying the Origin of Objects Used in a Definition Statement
Specifying the Source of Objects Used in a Definition or Condition Statement
Selecting Your Business Rule Editing Mode
Setting Up a Business Rule Template
Working With Decision Tables
Creating a Decision Table
Defining Columns
Adding and Populating Rows
Specifying Values and Operators
Specifying Values
Defining Condition Column Statements
Disabling Action Cells
Populating a Decision Table from an Excel Spreadsheet
Defining Preconditions
Formatting a Decision Table
Defining Checking Options
Value Test Conditions
Using Decision Table Locking Facilities
Viewing Rules
Viewing the Decision Table as a Spreadsheet
Documenting a Decision Table
Working With Decision Trees
Creating a Decision Tree
Labelling and Defining Condition Nodes
Labelling and Defining Branches
Labelling and Defining Actions
Defining Preconditions
Defining Checking Options
Viewing Rules
Correcting Errors Using Quick Fix
Refactoring Rule Artifacts
Defining a Category Filter on a Business Rule Artifact
Working with Technical Rules
Creating a Technical Rule
Using the Technical Rule Editor
Using Content Assist in a Technical Rule
Identifying Errors in the Technical Rule Editor
Organizing Import Statements
Opening Declarations from the Technical Rule Editor
Defining IRL Editing Settings
Writing Technical Rules
Structure of a Technical Rule in IRL
Defining a Variable
Writing Conditions in IRL
Adding Tests to a Condition
Extending Objects Available for a Condition
Writing Actions in IRL
Writing a Rule with an Else Action Clause
Notifying the Rule Engine of Object Changes
Using a Custom Rule Type