Open Your Business Rules!
Rules-based
Operational Decision Services
Release Notes 6.1.3 (Dec-2011)
OpenRules® Release 6.1.3 adds new functionality required by the practical use of the version 6 in real-world environments. Here is a summary of major advances:
Decision
Table Operators for Regular Expressions
We added operators "Match" and "No Match" to the standard
list of decision table operators. They allow you to
match the content of your decision variables with custom
patterns such as phone number or Social Security Number
(SSN). You may present your patterns using the
standard
regular expressions. Here is an example of a decision
table that validates SSN:
DecisionTable testSSN | ||
Condition | Message | |
SSN | Message | |
No match | \d{3}-\d{2}-\d{4} | Invalid SSN |
Use Regular
Expressions inside the Environment table
Large rule repositories may contain many files (workbooks)
and it may become impossible (or inconvenient) to list all
included files by their name. When rules are being
automatically generated by
Rule Learner or another rule discovery tool, the names
of files are not known ahead of time. In these situations
you may use regular expressions inside included file names
like in the following Environment table:
Environment |
|
include |
../category1/*.xls |
include |
../category2/ABC*.xls |
include |
../category3/A?.xls |
Actually along with wildcard characters
*
or ? you may use any standard
regular expressions
to define the entire path to different included files.
Dynamic Glossaries
We added a possibility to programmatically define/extend a Decision's Glossary. You need to do this when the actual content of your business concepts is defined in external applications using Java-based Business Object Models or when business concepts are coming from XML files, database tables, etc. The list of attributes inside business objects can be very large and/or to be defined dynamically. Read more in the User Manual, p. 81.
Rule Tables Classification
Release 6.1.3 restores a more natural classification of rule tables:
Rules -
generic rule tables that may represent virtually any type of
decision tables but that require Java snippets
to represent execution logic of conditions and actions (see
User Manual pp. 18-34)
DecisionTable, DecisionTable1, and DecisionTable2 - specialized rule tables that do not require Java snippets or parameters. They rely on the predefined logic described in the Excel-based templates located in the folder "openrules.config" (see User Manual pp. 35-62)
Method - text-based rules that describe execution logic of any complexity expressed in Java snippets (see User Manual pp. 24, 51).
Changing Decision Variable Types On the Fly
OpenRules® Glossary does not require a user to specify actual types of its decision variable - they are automatically defined from the actual types of decision parameters. It allows us to change types of decision parameters between different runs of the same decision without necessity to download all rules again. So, we added a new Decision's method
execute(boolean objectTypesVary)
If the parameter "objectTypesVary" is true then before executing the decision, the OpenRulesEngine will re-evaluate the decision's glossary and will reset types of all fact attributes based on the actual type of objects passed to the decision as parameters.
Improved Documentation
We have essentially improved the User Manual and all tutorials making them compliant with the latest changes.
As always, OpenRules 6.1.3 remains backward compatible.
You may download the latest OpenRules® release 6.1.3 from www.openrules.com/download.htm. After the download you need to update the folder "openrules.config". If you already have a previous installation you need to do the following:
- delete all openrules.config/*.xls files and replace them with new xls-files
- replace openrules.config/lib/openrules.all.jar with a new one.
Please post your comments and suggestions to the Google Discussion Group or send them to support@openrules.com.