Implementing Library Circulation Policies Using Drools
Drools: in OLEError rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.
Drools is an open source rules management system (http://www.drools.org/) that has been used in OLE to implement library circulation policies. Drools has proven to be far superior over the current implementation (Kuali Rules Management System - KRMS) in the following areas;
- Performance
- Ease of authoring rules
- Ease of updating the rules repository
Workflows: in OLE
The following workflows have been implemented so far.
Checkout Item(s):
Click the figure below to look at the actual gliffy image
Technical Details:
- A rule(s) file in Drools has the extension of .drl and is a simple text file with rules specified in a drools specific language. A sample of general checks for a patron can be found in general/general-checks.drl in the drools-chicago-poc branch and the 1.6.2 branch and the trunk of the code repository.
- The expression language is very much like Java and can be easily understood by a java programmer.
- For functional people, a more user friendly Rules Editor will be provided in a later release of OLE.
- The Drools Engine in OLE upon start up loads policies (.drl files) under the ${user.home/kuali/main/${environment}/olefs-webapp/rules} directory. The directory can contain sub-directories or simply files.
- Updates to policy files can be made at any time and re-loaded by setting a system parameter LOAD_CIRC_POLICIES_IND 'Y'.
- A rule(s) file in Drools has the extension of .drl and is a simple text file with rules specified in a drools specific language. A sample of general checks for a patron can be found in general/general-checks.drl in the drools-chicago-poc branch and the 1.6.2 branch and the trunk of the code repository.
Also see Drools Technical Documentation
Operated as a Community Resource by the Open Library Foundation