Go to main content
1/21
Contents
Title and Copyright Information
Preface
Audience
Documentation Accessibility
Related Documentation
Conventions
What's New in This Guide
New and Changed Features for 12c (12.1.3)
1
Overview of Oracle Business Rules
Differences Between Using this Component in the Cloud and On-Premises Environments
Introduction to Oracle Business Rules
Why Use Oracle Business Rules?
Understanding Oracle Business Rules Terminology
What Are Facts and Valuesets?
What Are Rulesets?
What Are Dictionaries?
What Are Globals?
What Are Decision Functions?
What Are Decision Points?
What Are Business Phrases?
Understanding Oracle Business Rules Formats
Rules
What Are Rule Conditions?
What Are Rule Actions?
How are Verbal Rules Different from General Rules?
Decision Tables
Oracle Business Rules Runtime and Design Time Elements
Decision Component (Business Rules) in a SOA Composite Application
Using Rules Engine with Oracle Business Rules in a Java EE Application
Oracle Business Rules RL Language
Oracle Business Rules SDK
Rules Designer
Oracle SOA Composer Application
Oracle Business Process Composer Application
Oracle Business Rules Engine Architecture
Declarative Rules
The Rete Algorithm
The Non-Rete Algorithm
Configuring the Non-Rete Algorithm
What Is Working Memory?
Rule Firing and Rule Sessions
2
Working with Data Model Elements
Introduction to Working with Data Model Elements
Introduction to Dictionaries and Dictionary Links
Working with Dictionaries and Dictionary Links
How to Create a Dictionary in the SOA Tier Using Rules Designer
How to Create a Dictionary in the Business Tier Using Rules Designer
How to View and Edit Dictionary Settings
How to Change the Dictionary Alias
How to Edit the Preferences tab
How to Edit the Data Model tab
How to Link to a Dictionary
How to Update a Linked Dictionary
What You Need to Know About Dictionary Linking
What You Need to Know About Dictionary Linking and Dictionary Copies
What You Need to Know About Dictionary Linking to a Deployed Dictionary
What You Need to Know About Business Rules Inputs and Outputs with BPEL
How to Compare or Merge Two or More Dictionaries
How to See Differences Between Dictionaries
How to Merge Dictionaries
Working with Oracle Business Rules Globals
How to Add Oracle Business Rules Globals
How to Edit Oracle Business Rules Globals
What You Need to Know About the Final and Constant Options
Working with Decision Functions
Introduction to Oracle Business Rules Functions
How to Add an Oracle Business Rules Function
Localizing Oracle Business Rule Resources
How to Localize the Resources in Oracle Business Rules
3
Working with Facts and Value Sets
Introduction to Working with Facts and Value Sets
Working with XML Facts
How to Create XML fact types
How to Import the XML Schema and Add XML Facts
How to Display and Edit XML Facts
How to Reload XML Facts with Updated Schema
What You Need to Know About XML Facts
Working with Java Facts
How to Import Java Classes and Define Java Facts
How to Display and Edit Java Facts
What You Need to Know About Java Facts
Working with RL Facts
How to Define RL Facts
How to Display and Edit RL Facts and Add RL Fact Properties
What You Need to Know About RL Facts
Working with ADF Business Components Facts
How to Import and Define ADF Business Components Facts
What You Need to Know About ADF Business Components Fact Classpaths
What You Need to Know About ADF Business Components Circular References
What You Need to Know About ADF Business Components Facts
Working with Value Sets
How to Define a List of Values Global Value Set
How to Define a List of Ranges Global Value Set
How to Define an Enumerated Type (Enum) Value Set from XML Types
How to Define an Enumerated Type (Enum) Value Set from Java Types
What You Need to Know About List of Values Value Sets
What You Need to Know About Range Value Sets
What You Need to Know About the Value Set Allowed in Actions Option
What You Need to Know About Values
Associating a Value Set with Business Terms
How to Associate a Value Set with a Fact Property
How to Associate a Value Set with Functions or Function Arguments
How to Associate a Value Set with a Function Argument
How to Associate a Value Set with a Global Value
4
Working with Rulesets and Rules
Introduction to Working with Rulesets, Rules, and Business Phrases
Working with Rulesets
How to Create a Ruleset
How to Set the Effective Date for a Rule Set
How to Set the Effective Date for a Rule
How to Use a Filter to Display Matching Rules in a Ruleset
Using Auto Complete when Selecting Component Values from a List
Working with Rules
How to Add General Rules
How to Add Verbal Rules
How to Define a Test in a Rule
How to Define a Test in a Verbal Rule
What You Need to Know About Oracle Business Rules Test Variables
How to Define Range Tests in Rules
How to Define Set Tests in Rules
How to Define an Action in a General Rule
Basic Actions in a General Rule
How to Define an Action in a Verbal Rule
What You Need to Know About Rule Actions
What You Need to Know About Oracle Business Rules Performance Tuning
Introduction to Verbal Rules and Business Phrases
Working with Business Phrases
Business Phrases Tab
Draft Business Phrases and Verbal Rules
How to Create Business Phrases
Example Business Phrase Creation Scenario
Translating Business Phrases
Choosing or Adding Business Phrases in Verbal Rules
Instantiating New Business Phrases While Authoring a Verbal Rule
Choosing Business Phrases While Creating a Verbal Rule
Derived Business Phrases
Choosing Which Business Phrases to See in the List
Validating Dictionaries
Understanding Data Model Validation
Understanding Rule Validation
Understanding Decision Table Validation
How to Validate a Dictionary
Using Advanced Settings with Rules and Decision Tables
How to Show and Hide Advanced Settings in a Rule or Decision Table
How to Select the Advanced Mode Option
How to Select the Active Option
How to Select the Logical Option
How to Set a Priority for a Rule
How to Specify Effective Dates
Working with Nested Tests
Working with Advanced Mode Rules
How to Use Advanced Mode Pattern Matching Options
How to Use Advanced Mode Matched Fact Naming
How to Use Advanced Mode Action Forms
Advanced Mode Action Options in Rule Designer
How to Use Advanced Mode Aggregate Conditions
Using Aggregate Functions
What You Need to Know About Advanced Mode Rules
How to Clear Advanced Mode Option
Working with Extended Tests
Extended Test Forms
Working with Tree Mode Rules
Sample Abbreviated PO XML Instance
Understanding Tree Mode Rules (Non-Advanced Mode)
Understanding Advanced Tree Mode Rules
How to Create Simple Tree Mode Rules
How to Create Advanced Tree Mode Rules
What You Need to Know About Tree Mode Rules
Using Date Facts, Date Functions, and Specifying Effective Dates
How to Use the Current Date Fact
What You Need to Know About Effective Dates
How to Use Duration, JavaDate, OracleDate, and XMLDate Methods
Introduction to Expression Builder
How to Use the Expression Builder
What You Need to Know About Working with Expressions
Using Value Sets as Constraints for Options Values in Rules
How to Use a List of Ranges Value Set as a Constraint for a Business Term
How to Use a List of Values Value Set as a Constraint for a Fact Property
How to Use Value Sets to Provide Options for Test Expressions
Importing Runtime Rules Changes From Repository Into JDeveloper
How to Model Rules When the Data Model is Deep
5
Working with Decision Tables
Introduction to Working with Decision Tables
What is a Decision Table?
What You Need to Know About Decision Table Conditions
What You Need to Know About Decision Table Actions
What You Need to Know About Decision Table Rules
Understanding Condition Cell Values
Understanding Action Cell Values
What You Need to Know About Decision Table Loops
Creating Decision Tables
How to Create a Decision Table
How to Add Condition Rows to a Decision Table
How to Use or Specify the Value Set for a Decision Table Condition
How to Add Actions to a Decision Table
How to Set Values for Action Cells in a Decision Table
How to Deselect an Action Cell in a Decision Table
How to Add a Rule to a Decision Table
How to Define Tests in a Decision Table
Introduction to Decision Table Operations
Understanding Decision Table Split and Compact Operations
Understanding Decision Table Move Operations
Understanding Decision Table Gap Checking
Understanding Decision Table Conflict Analysis
How to Compact or Split a Decision Table
How to Merge or Split Conditions in a Decision Table
How to Use the Condition Cell Operations
How to Merge Sibling Cells in a Condition in a Decision Table
How to Split a Cell in a Condition in a Decision Table
How to a "Do Not Care" Value for a Cell in a Condition in a Decision Table
How to Select all Value Sets to Specify a "Do Not Care" Value for a Cell in a Condition:
How to Perform Decision Table Gap Checking
How to Perform Decision Table Manual Conflict Resolution
How to Set the Decision Table Auto Override Conflict Resolution Policy
How to Set the Decision Table Ignore Conflicts Policy
Creating and Running an Oracle Business Rules Decision Table Application
How to Obtain the Source Files for the Order Approval Application
How to Create an Application for Order Approval
How to Create a Business Rule Service Component for Order Approval
How to View Data Model Elements for Order Approval
How to Add Value Sets to the Data Model for Order Approval
How to Add CreditScore Value Set to the Data Model
How to Associate Value Sets with Order and CreditScore Properties
How to Add a Decision Table for Order Approval
How to Create an action in a Decision Table
Split the Cells in the Decision Table and Add Actions
How to Add Actions for Each Rule in the Decision Table
Compact the Decision Table
Replace Several Specific Rules with One General Rule
Add a General Rule
How to Enable the Auto Override Conflict Resolution Policy
How to Check the Business Rule Validation Log for Order Approval
How to Deploy the Order Approval Application
How to Test the Order Approval Application
Editing Decision Tables in Microsoft Excel
Understanding What is Exported
How to Export Decision Tables
How to Import Edited Decision Tables Back to the Dictionary
How to Edit Decision Tables in Excel
Adding or Deleting Rules and Merging or Splitting Cells
Adding or Removing Value Sets
Showing or Hiding Value Sets and Editing the Description
Setting Preferences
Using Simple or Advanced Mode
Hiding or Showing the Readme Worksheet
Editing Condition Cells
Editing Actions
Editing Expressions
Editing Action Expression Parameters
Editing Descriptions
Using the Auto-Addition Feature
Aliases of Values in the Value Sets Worksheet
Syncing Value Sets and Conditions
6
Working with Decision Functions
Introduction to Decision Functions
Working with Decision Functions
How to Edit an Existing Decision Function
How to Change the Order of Inputs
How to Change the Order of Outputs
How to Edit a Decision Function
What You Need to Know About Rule Firing Limit Option for Debugging Rules
What You Need to Know to About Decision Function Arguments
What You Need to Know About the Decision Function Stateless Option
7
Testing and Validating Business Rules
Overview
Components of the Test Feature
Testing Rules in JDeveloper
How to Create and Manage Test Suites and Cases
How to Create Test Templates
How to Run Test Suites or Cases
How to Run Ad-hoc Tests from Test Templates
How to Run Tests for a Specific Decision Function
Testing Rules in Business Process Composer
Testing Rules in SOA Composer
How to Create and Manage Test Suites and Cases
How to Create Test Templates
How to Run Test Suites or Cases
How to Run Ad-hoc Tests from Test Templates
How to Run Tests for a Specific Decision Function
Testing Decision Functions Using a Rules Function
What You Need to Know About Testing Decision Functions
Testing Decision Services in SOA Composites
8
Working with Rules in Standalone (Non SOA/BPM) Scenarios
Loading a Dictionary from the Repository
Executing a Rule Dictionary
Introduction to the Rules SDK Decision Point API
Working with Decision Point API
How to Obtain the Car Rental Sample Application
How to Open the Car Rental Sample Application and Project
Creating a Dictionary for Use with a Decision Point
How to Create Data Model Elements for Use with a Decision Point
How to View a Decision Function to Call from the Decision Point
How to Create Rules or Decision Tables for the Decision Function
What You Need to Know About Using Car Rental Sample with a Decision Table
Creating a Java Application Using Rules SDK Decision Point
How to Add a Decision Point Using Decision Point Builder
How to Use a Decision Point with a Pre-loaded Dictionary
How to Use Executor Service to Run Threads with Decision Point
How to Create and Use Decision Point Instances
Sample Code to Create a Decision Point Instance with getInstance()
Running the Car Rental Sample
Sample Output from Car Rental
What You Need to Know About Using Decision Point in a Production Environment
What You Need to Know About Decision Point and Decision Tracing
Sample Usage of Decision Tracing
9
Creating a Rule-enabled Non-SOA Java EE Application
Introduction to the Grades Sample Application
Creating an Application and a Project for Grades Sample Application
How to Create a Fusion Web Application for the Grades Sample Application
How to Develop Accessible ADF Faces Pages
How to Create the Grades Project
How to Add the XML Schema and Generate JAXB Classes in the Grades Project
How to generate JAXB 2.0 content model from grades schema
How to Create an Oracle Business Rules Dictionary in the Grades Project
Creating Data Model Elements and Rules for the Grades Sample Application
How to Create Value Sets for Grades Sample Application
How to Associate a Value Set with a Fact Property
How to Add a Decision Table for Grades Sample Application
How to Add an Action to a Decision Table
How to Add Rules in the Decision Table for Grades Sample Application
How to Rename the Decision Function for Grades Sample Application
Adding a Servlet with Rules SDK Calls for Grades Sample Application
How to Add a Servlet to the Grades Project
Adding an HTML Test Page for Grades Sample Application
Preparing the Grades Sample Application for Deployment
How to Create the WAR File for the Grades Sample Application
How to Add the Rules Library to the Grades Sample Application
How to Add the MDS Deployment File to the Grades Sample Application
How to Add the EAR File to the Grades Sample Application
Deploying and Running the Grades Sample Application
How to Deploy to Grades Sample Application
How to Run the Grades Sample Application
10
Working with Oracle Business Rules and ADF Business Components
Introduction to Using Business Rules with ADF Business Components
Understanding Oracle Business Rules ADF Business Components Fact Types
Understanding Oracle Business Rules Decision Point Action Type
Sample ActionType Implementation
Using Decision Points with ADF Business Components Facts
How to Call a Decision Point with ADF Business Components Facts
Setting the Decision Point Transaction
Setting Runtime Properties
Calling the Invoke Method for an ADF Business Components Rule
What You Need to Know About Decision Point Invocation
Sample to Invoke a Decision Point Using setinputs Method
Sample to Invoke a Decision Point Using setViewObject Method
How to Call a Decision Function with Java Decision Point Interface
What You Need to Know About Decision Function Configuration with ADF Business Components
Creating a Business Rules Application with ADF Business Components Facts
How to Create an Application That Uses ADF Business Components Facts
How to Create ADF Business Components Application for Business Rules
How to Update View Object Tuning for Business Rules Sample Application
How to Create a Dictionary for Oracle Business Rules
How to Add Decision Point Dictionary Links
How to Import the ADF Business Components Facts
How to Mark a Property as Non-visible
How to Set Alias for DepartmentsView and EmployeesView
How to Add and Run the Outside Manager Ruleset
How to Add the Outside Manager Ruleset and Add a Decision Function
How to Create the ActionType Java Implementation Class
How to Import the Message Action Java Fact
How to Add the Find Managers Rule
How to Add the Outside Manager Finder Class
How to Update ADF META INF for Local Dictionary Access
How to Copy Definitions/Dictionary to MDS Accessible Location
How to Build and Run the Project to Check the Outside Manager Finder
How to Add and Run the Department Manager Ruleset
How to Add the Department Manager Finder Ruleset
How to Add the Find Rule in the Department Manager Finder Ruleset
How to Add Retract Employees Ruleset
How to Add the Find Department Managers Decision Function
How to Add the Department Manager Finder Java Class
How to Copy the Dictionary to an MDS Accessible Location
How to Build and Run the Project to Check the Find Managers Rule
How to Add and Run the Raises and Retract Employees Rulesets
How to Add the Raises Ruleset
How to Create the Raise ActionType Java Implementation Class
How to Import the Raise Action Java Fact
How to Add the 12 Year Raise Rule
How to Add the Employee Raises Decision Function
How to Add the Employee Raises Java Class
How to Copy Dictionary to MDS Accessible Location
How to Build and Run the Project to Check the Raises Rule
11
Working with Decision Components in SOA Applications
Introduction to Decision Components
Working with a Decision Component
Working with Decision Component Metadata
Working with Decision Components that Expose a Decision Function
Using Stateful Interactions with a Decision Component
What You Need to Know About Stateful Interactions with Decision Components
Decision Service Architecture
12
Using Oracle SOA Composer with Oracle Business Rules at Runtime
Introduction to Oracle SOA Composer
Creating and Publishing Sessions
Publishing Changes for an Oracle Business Rules Dictionary
Creating a Bookmark
Reviewing Dictionary Settings
Using Oracle SOA Composer User Authentication
What You Need to Know About SOA Composer Access Control and User Authentication
Setting Accessibility Options
How to Set Accessibility Features Before Logging In
How to Set Accessibility Options After Logging In
Opening and Viewing an Oracle Business Rules Dictionary
How to View and Edit Rulesets
How to Add Verbal Rules in SOA Composer
How to View and Edit Value Sets
How to View and Edit Globals
How to View and Edit Business Phrases
How to View and Edit Tests
How to View Explorer
How to View and Edit Facts
How to View Decision Functions
How to View Linked Dictionary Names
How to Work With Dictionary Links in an Oracle Business Rules Dictionary
How to View and Edit Translations
Getting Started with Editing a Dictionary
What You May Need to Know About Localized Number Formatting Support in Oracle SOA Composer
What You May Need to Know About Cutting/Copying and Pasting Rule Elements
How to Edit Globals in an Oracle Business Rules Dictionary
How to Edit Value Sets in an Oracle Business Rules Dictionary
How to Edit Decision Functions in an Oracle Business Rules Dictionary
What You May Need to Know About Oracle Business Rules Dictionary Editor Declarative Component
What You May Need to Know About Oracle Business Rules Dictionary Editor Task Flow
Editing Rules in an Oracle Business Rules Dictionary
Using the Rulesets Tab
How to Edit Rules in an Oracle Business Rules Dictionary
How to Add a Rule
How to Delete a Rule
How to Show and Edit Advanced Settings for Rules
How to Add Rule Conditions
How to Delete Rule Conditions
How to Modify Rule Conditions
How to Add Rule Actions
How to Delete Rule Actions
How to Modify Rule Actions
How to Work with Advanced Mode Rules
Working with Advanced Mode Options
How to Work with Extended Tests
How to Work with Tree Mode Rules
What You May Need to Know About Oracle Business Rules Editor Declarative Component
What You May Need to Know About Oracle Business Rules Dictionary Editor Declarative Component
What You May Need to Know About Oracle Business Rules Dictionary Editor Task Flow
Using the Oracle SOA Composer Browser Windows
Expression Builder
Condition Browser
Date Browser
Right Operand Browser
Editing Decision Tables in an Oracle Business Rules Dictionary
Adding a Decision Table
Adding Condition Rows to a Decision Table
Adding Actions to a Decision Table
Adding Rules to a Decision Table
Editing Decision Table Cells
Controlling the Order of Rules in a Decision Table
Deleting Rules in a Decision Table
Defining Tests in a Decision Table
Splitting and Compacting a Decision Table
Checking for Missing Rules in a Decision Table
Performing Conflict Resolution in Decision Tables
Switching From Rows to Columns
Working with Advanced Mode Options in a Decision Table
Deleting a Decision Table
Editing Decision Tables in Microsoft Excel
Understanding What is Exported
How to Export Decision Tables
How to Import Decision Tables to the Dictionary
How to Edit Decision Tables in Excel
What You Need to Know About Rule Test Variables
Comparing and Merging Oracle Business Rules Dictionaries
How to see Differences Between Dictionaries
Localizing Names of Resources in Oracle Business Rules
How to Localize the Alias of a Oracle Business Rules Component
Synchronizing Rules Dictionary in Oracle JDeveloper With Runtime Dictionary Updates
Validating and Diagnosing an Oracle Business Rules Dictionary
Understanding the Validation Log Tab
Understanding the Diagnostics Tab
Understanding the History Center Tab
Understanding the Save Log Tab
Working with Tasks
How to View Task Metadata
How to Configure a Task or an AMX Rule Metadata
Configuring Event-Driven Settings
Configuring Data-Driven Settings (Rule or Condition)
A
Oracle Business Rules Files and Limitations
Rules Designer Naming Conventions
Ruleset Naming
Dictionary Naming
Alias Naming
XML Schema Target Package Naming
B
Oracle Business Rules Built-in Classes and Functions
String Classes
List Classes
Numeric Classes
Time and Duration Classes
Miscellaneous Classes
Functions
C
Oracle Business Rules Frequently Asked Questions
Why Do Rules Not Fire When A Java Object is Asserted as a Fact and Then Changed Without Using the Modify Action?
What are the Differences Between Oracle Business Rules RL Language and Java?
How Does a RuleSession Handle Concurrency and Synchronization?
Sample RuleSession Shared Objects
Sample RuleSession Producer Code
Sample RuleSession Consumer Code
How Do I Correctly Express a Self-Join?
Sample Find All Combinations of Fact F
Sample Finding Combinations of Fact F
Sample Fast Complete Comparison
How Do I Use a Property Change Listener in Oracle Business Rules?
What Are the Limitations on a Decision Service with Oracle Business Rules?
How Do I Put Java Code in a Rule?
Can I Use Java Based Facts in a Decision Service with BPEL?
How Do I Enable Debugging in a BPEL Decision Service?
How Do I Support Versioning with Oracle Business Rules?
What is the Priority Order Using Priorities with Rules and Decision Tables?
Why do XML Schema with xsd:string Typed Elements Import as Type JAXBElement?
Why Are Changes to My Java Classes Not Reflected in the Data Model?
How Do I Use Rules SDK to Include a null in an Expression?
Is WebDAV Supported as a Repository to Store a Dictionary?
Using a Source Code Control System with Rules Designer
D
Oracle Business Rules Troubleshooting
Getter and Setter Methods are not Visible
Java Class with Only a Property Setter
Runtime NoClassDefFound Error
RL Specific Keyword Naming Conflict Errors
java.lang.IllegalAccessError from Business Rules Service Runtime
JAXB 1.0 Dictionaries and RL MultipleInheritanceException
Why Does XML Schema with Underscores Fail JAXB Compilation?
How Are Decision Service Input Output Element Types Restricted?
How Are Decision Service Input Output Schema Restricted?
How Do I Handle Java Reserved Names in an Imported Fact Type?
E
Working with Oracle Business Rules and JSR-94 Execution Sets
Introduction to Oracle Business Rules and JSR-94 Execution Sets
Creating JSR-94 Rule Execution Sets from Oracle Business Rules Rulesets
Creating Rule Execution Set with Oracle Business Rules RL Language Text
Creating a Rule Execution Set from Oracle RL Text Specified in a URL
Creating Rule Execution Sets with Rulesets from Multiple Sources
Using the JSR-94 Interface with Oracle Business Rules
Creating a Rule Execution Set with createRuleExecutionSet
Creating a Rule Session with createRuleSession
Working with JSR-94 Metadata
Using Oracle Business Rules JSR-94 Extensions
Using the Extended createRuleExecutionSet to Create a Rule Execution Set
Invoking an RL Language Function in JSR-94
Scripting on this page enhances content navigation, but does not change the content in any way.