Drools 如何定义一个事件与前一个单流模式之间的差异规则

Drools 如何定义一个事件与前一个单流模式之间的差异规则,drools,Drools,我正试图检测斜坡方向的变化 因此,我试图计算dx/dt,因此需要找出如何将事件(n)与事件(n-1)关联起来 任何想法看起来都会奏效 rule "deltas" dialect "mvel" salience 1000 when $sQ : MyEvent($id1 : Id) from entry-point MyEventStream $sQ2 : MyEvent($id2 : Id, $id1 == $id2 - 1) from e

我正试图检测斜坡方向的变化 因此,我试图计算dx/dt,因此需要找出如何将事件(n)与事件(n-1)关联起来


任何想法看起来都会奏效

rule "deltas" 
    dialect "mvel"
    salience 1000
    when
        $sQ : MyEvent($id1 : Id) from entry-point MyEventStream
        $sQ2 : MyEvent($id2 : Id, $id1 == $id2 - 1) from entry-point MyEventStream
    then
        System.out.println( "Associated event " + $id1 + " with event " + $id2);
end

我要看看向事件类添加一个uniqueID是否允许我定义一个规则,当事件(n)和事件(n-1)出现在工作内存中时触发该规则。这只在事件具有顺序id并且按顺序插入时才有效。