




















|
 |
OpenRules Release
4.0 adds new
features and components requested "from the trenches" by real-world OpenRules customers and consultants. The major improvements
include:
 |
Single-Hit and Multi-Hit Decision Tables
 | Starting
with the release of 4.0
OpenRules will support two different types of decision tables:
 | Multi-hit decision table executes
all rules when conditions for
these rules are satisfied - this is a standard OpenRules
behavior for all previous releases. Multi-hit tables allow
rule overrides |
 | Single-hit decision table executes no more than one
rule and will stop its execution upon the
"first hit" (when a rule is satisfied for the
first time).
Single-hit table may return values produced by the last executed action. Single-hit tables do not
allow rule overrides and provide a more natural support for
representing "IF-THEN-ELSE" or "SWITCH" logic |
|
 | Single-hit
tables essentially expedite rules execution when decision tables are
used to find/calculate only one value out of a large number of
possible combinations |
 | See
examples and
description |
|
 |
Use of Natural Language Expressions Inside Decision Tables
 | Instead of
creating multiple columns for defining different ranges for
integer and real values, a business user may define any from-to
intervals in practically unlimited English using such phrases
as:
"500-1000", "between 500 and 1000", "Less than 16",
"More or equals to 17", "17 and older", "< 50",
">= 10,000", "70+", "from 9
to 17", "[12;14)", etc.
Having an
access to the source code, a customer may
customize and/or expand the standard implementation. In particular, the provided features may be easily
customized to support different national
languages |
 | A user may
define different domains of integer and real numbers, various
sequences of characters and words inside the same decision table
cell by separating them with spaces or commas. This removes a
necessity to create multiple sub-columns |
 | See
examples and
detailed description
|
|
 |
DB-based
Rule Repositories
 | Release 4.0 introduces DB-based rule repositories.
A user may move their Excel files with rules and other OpenRules
tables into any RDBMS such as Oracle, MySQL, MS SQL or Apache
Derby |
 | OpenRules Engine will dynamically access such
repositories without necessity to move Excel files back into a file
system |
 | Release 4.0 include two new protocols: 1)
"db:" for simple db repositories; 2) "dbv:" for repositories
with a built-in version control. It also allows a user to
create custom db-protocols. Read
more
|
|
 |
Parameterized
Rule Repositories
 | Release 4.0 allows you to parameterize your
OpenRules repository in such a way that different rules may be
invoked from the same rule repository under different
circumstances. For example, you may want to define rules
that offer different travel packages for different years and
seasons. You may specify a concrete year and a season by
using environment variables YEAR and SEASON and parameterize
your include statements, e.g. ../${YEAR}/${SEASON}Rules.xls.
Read
more |
|
Additional new
features include:
 |
Enhanced List of Predefined Data Types
 | Release
4.0 introduces predefined data types for easier handling of Excel-based arrays of
integers, doubles, and strings - see
examples |
|
 | Use of Formulas
Inside Decision Table Cells
 | OpenRules
allows the use of formulas presented as Java snippets directly
inside rules table cells if these formulas are enclosed in curly
brackets. New
release also allows a user to start formulas with ":="
and without closing ";" - see
examples |
|
 |
Extended OpenRules API
 | Along with
an array of objects, OpenRulesEngine's method "run"
now accepts a single
Java object as a parameter or may run without parameters at all |
|
 |
Combined jar-files
 |
openrules.jar now includes classes previously kept in
com.openrules.java.eval.jar used for syntax validation. All
build-files inside standard samples are corrected to
reflect these changes |
|
 |
Additional Sample Projects
 | To demonstrate the use of new features
the following new sample project have been included in the
standard OpenRules installation:
 |
HelloJavaDB and RuleRepositoryDB - show the use of a simple
"db:" protocol |
 |
RuleRepositoryDBV - show the use of the "dbv:" protocol with
a built-in version control |
 |
DataArray - shows the use of predefined datatypes |
 | Loan1
- expanded with different natural language expressions. |
|
|
Release 4.0 also fixes several bugs in the code,
installation, and documentation found by OpenRules customers and testers. The web site
www.openrules.com as well as the
online User's Guide have been modified to reflect introduced
changes.
The OpenRules development team thanks all
customers and consultants who contributed to the creation of this release.
|
 |

|