| [news.eclipse.technology.ecp] Re: JSR-94 Rules Engine API |
This spec, http://www.jcp.org/en/jsr/detail?id=94, details the minimum standard spec for a Java Rules Engine. Rules engines are complex beasts and I personally hate them, but others think they're better than sliced bread. There are many use cases for them but one I'm familiar with is "Class of Service". A lot of businesses group their customers into different 'classes' (right or wrong this is just what they do). For a customer who buys a lot of @#$$^ from you on a monthly basis may get a better class of service than Joe Blow who only orders $10 every six months. So you set a discount rule that if you spend over $50,000/month the previous month then you get 25% all orders in the current month. You can also set a rule where if it is a new account then you will automatically give a 10% discount on the 1st order. You go on and on creating these Rules. What makes rules engines so attractive, to some people, is the idea that they can be manipulated by "Business" people without having to involved developers to create and (un)deploy new rules, etc. Of course if you aren't careful you can create rules that run into conflict.
As for rules engines, I believe http://drools.codehaus.org/ and Jess are names I have heard of. Although I seem to remember something not really compatible about the Jess license/code.
Wendell