CONTENTS

Creating Rule Projects

Getting Started
Overview: A Vocabulary for Rule Editing
Tutorial: Defining a Vocabulary
Gray bulletBefore You Start
Gray bulletTutorial Scenario
Gray bulletViewing the Completed Tutorial
Gray bulletStep 1: Create a BOM Entry
Gray bulletStep 2: Verbalize New Business Elements
Gray bulletStep 3: Test the Vocabulary in a Business Rule
Gray bulletStep 4: Extend the Business Object Model
Gray bulletStep 5: Refine the Vocabulary
Gray bulletStep 6: Create a Domain
Concepts
Execution Object Model (XOM)
Rule Project
Gray bulletRule Project and Content
Gray bulletRule Project Templates
Gray bulletRule Project References
Gray bulletGuidelines for Defining an Architecture for Large Rule Projects
Gray bulletGuidelines for Improving Build Performance on Large Rule Projects
Business Object Model (BOM)
Gray bulletThe Purpose of the BOM
Gray bulletDomains
Gray bulletCollections
Gray bulletObject State Update
BOM and XOM
Gray bulletBOM to XOM Mapping
Gray bulletBusiness Elements Originating from a Java XOM
Gray bulletThe BOM to XOM Mapping Mechanism
Gray bulletIRL and Extender Mapping
Gray bulletExecution Class
Gray bulletIRL Mapping
Gray bulletExtender Mapping
Vocabulary
Gray bulletVerbalization
Gray bulletVocabulary Elements
Gray bulletPhrase Templates
Gray bulletPhrase Template Elements
Gray bulletPlaceholders
Gray bulletSimplified Phrase Templates
Gray bulletDefault Verbalization
Gray bulletVocabulary Errors and Warnings
Categories
Functions
Tasks
Setting Up a Rule Project
Gray bulletCreating a Rule Project
Gray bulletDefining Rule Project References
Gray bulletDefining a Structure for Rule Project Items
Gray bulletDefining the Execution Object Model
Gray bulletDefining a Java XOM
Gray bulletDefining a Dynamic XOM
Gray bulletCreating a Rule Package
Exploring a Rule Project
Gray bulletOpening the Rule Perspective
Gray bulletOpening Rule Explorer
Gray bulletUsing the Rule Explorer
Gray bulletSetting Filter Elements
Creating a Function
Searching
Gray bulletSearching Rule Project Elements
Gray bulletSearching the Execution Object Model
Gray bulletSearching the Business Object Model
Working With BOM Entries
Gray bulletBOM Entries
Gray bulletCreating an Empty BOM Entry
Gray bulletDisabling BOM to XOM Mapping Checks
Gray bulletAssociating an Empty BOM Entry to a XOM
Gray bulletCreating a BOM Entry from a XOM
Gray bulletOrdering BOM Entries
Working With Business Elements
Gray bulletCreating New Business Elements
Gray bulletDefining Domains
Gray bulletNotifying the Rule Engine of Object Updates
Gray bulletAdding Custom Properties to Business Elements
Defining How Business Elements Map to the XOM
Gray bulletMapping Business Elements to the XOM
Gray bulletMapping Classes
Gray bulletMapping a Business Class to An Execution Class
Gray bulletAdding Tests to Filter Out Class Instances
Gray bulletMapping an Attribute to a Computed Value
Gray bulletMapping an Attribute Assignment to a Function
Gray bulletMapping a Method Call to an Expression
Gray bulletMapping a Constructor Call to an Expression
Gray bulletAccessing Ruleset Variables and Parameters from IRL Mapping Code
Gray bulletAccessing Functions from IRL Mapping Code
Gray bulletAccessing Rule Instances from IRL Mapping Code
Gray bulletImplementing Synthetic Objects
Managing XOM Changes in the BOM
Gray bulletManaging Changes to the XOM from a Java Project
Gray bulletManaging Changes to the XOM from a Rule Project
Defining a Vocabulary
Gray bulletDefining the Vocabulary for a BOM Entry
Gray bulletEditing Terms
Gray bulletEditing and Creating Phrases
Gray bulletEditing a Phrase
Gray bulletEditing the Subject of a Phrase
Gray bulletCreating New Phrases
Gray bulletUsing a Reduced Verbalization for Simpler Rules
Gray bulletEditing Constants
Gray bulletEditing the Verbalization of Ruleset Variables
Gray bulletEditing the Verbalization of Ruleset Parameters
Gray bulletDocumenting the Vocabulary
Defining Categories
Setting Up Automatic Variables