The Drools team has been actively following the specification and the direction it is taking. The team believes that, in accordance with its long time commitment to open standards, it is now time to support the specification and provide a compliant implementation for the benefit of its users.
The specification defines among other things:
- an expression language called FEEL used to express constraints and decisions
- a graphical language to model decision requirements
- a metamodel and runtime semantics for decision models
- an XML-based interchange format for decision models
As part of the investigation, the Drools team implemented a PoC that is now public and available here. The PoC already covers:
- a complete, compliance level 3, FEEL language implementation.
- complete support for the XML-based interchange format for marshalling and unmarshalling.
- A partial implementation of the metamodel and runtime semantics
We expect to have a complete runtime implementation released with Drools 7.0 (expected for Q1/2017).
On a related note, this is also a great opportunity for community involvement. This being a standard implementation, and relatively isolated from other existing components, it is the perfect chance for any community member that wishes to get involved with Drools and open source development to get his/her hands dirty and help bring this specification to life. Contact me on the Drools mailing list or on IRC if you would like to help.
We will publish over the next few weeks several blogs on this subject, with both general explanations about the specification and with details of our plans and our implementation. Bellow you can find a quick Q&A. Feel free to ask additional questions you might have about this subject on the mailing list.