Chapter 1. Drools 4.0 Release Notes

1.1. What is new in Drools 4.0

Drools 4.0 is a major update over the previous Drools 3.0.x series. A whole new set of features were developed which special focus on language expressiveness, engine performance and tools availability. The following is a list of the most interesting changes.

1.1.1. Language Expressiveness Enhancements

  • New Conditional Elements: from, collect, accumulate and forall

  • New Field Constraint operators: not matches, not contains, in, not in, memberOf, not memberOf

  • New Implicit Self Reference field: this

  • Full support for Conditional Elements nesting, for First Order Logic completeness.

  • Support for multi-restrictions and constraint connectives && and ||

  • Parser improvements to remove previous language limitations, like character escaping and keyword conflicts

  • Support for pluggable dialects and full support for MVEL scripting language

  • Complete rewrite of DSL engine, allowing for full l10n

  • Fact attributes auto-vivification for return value restrictions and inline-eval constraints

  • Support for nested accessors, property navigation and simplified collection, arrays and maps syntax

  • Improved support for XML rules

1.1.2. Core Engine Enhancements

  • Native support for primitive types, avoiding constant autoboxing

  • Support for transparent optional Shadow Facts

  • Rete Network performance improvements for complex rules

  • Support for Rule-Flows

  • Support for Stateful and Stateless working memories (rule engine sessions)

  • Support for Asynchronous Working Memory actions

  • Rules Engine Agent for hot deployment and BRMS integration

  • Dynamic salience for rules conflict resolution

  • Support for Parameterized Queries

  • Support for halt command

  • Support for sequential execution mode

  • Support for pluggable global variable resolver

1.1.3. IDE Enhancements

  • Support for rule break-points on debugging

  • WYSIWYG support for rule-flows

  • New guided editor for rules authoring

  • Upgrade to support all new engine features

1.1.4. Business Rules Management System - BRMS

  • New BRMS tool

  • User friendly web interface with nice WEB 2.0 ajax features

  • Package configuration

  • Rule Authoring easy to edit rules both with guided editor ( drop-down menus ) and text editor

  • Package compilation and deployment

  • Easy deployment with Rule Agent

  • Easy to organize with categories and search assets

  • Versioning enabled, you can easily replace yours assets with previously saved

  • JCR compliant rule assets repository

1.1.5. Miscellaneous Enhancements

  • Slimmed down dependencies and smaller memory footprint