Unfortunately, I'm afraid your proposal doesn't scale as well
expected behaviour negatively
W3C RIF have tried to document refraction and repeatability.
Under that definition drools already has refraction, what we don't have is
What you've done is more like hard coding repeatability=false. Also as davide
mentions, it's not an efficient implementation.
As Drools implements a modify-in-place we know whether an activation was created or
modified when it reaches the RTN. It can be cheaply filtered (ignored) there, we just need
to add an attribute to be able to control this behaviour per rule.
One reason why I haven't done this, is I believe the concept can be extended further
to give more control. There is a concept of rising and falling edges. I prefer the idea of
allowing or disallowing activations based on these edges.
was true, still true
was false, is true
was true, is false
We also more recently added property reactive, which provides powerful control for
choosing what you do or do not react.
I have always found the definition of refraction hard. My understanding of the OPS5
definition was similar to your interpretation, which is a hard coding of
repetability=false. I believe some of the confusion comes from the fact that OPS5 was list
based, it didn't have objects and slots.
On 22 Jan 2013, at 04:45, Davide Sottara <dsotty(a)gmail.com> wrote:
Recently, Esteban covered the topic quite extensively, you can start
Unfortunately, I'm afraid your proposal doesn't scale as well as impacting
expected behavior negatively
View this message in context:
Sent from the Drools: User forum mailing list archive at Nabble.com
rules-users mailing list