リファレンス accumulate -1

これも同様にfromとあわせて使います、accumulate(蓄積)してその結果を使って何かをするときに便利です。標準のaccumulate用のfunctionも用意されているので簡単なsum functionを使ったサンプルをば.エレベータの体重制限のルール例です(デブネタばかりですいません)
ルールはこう書きます。

rule "You guys over!!"
when
  $sum    : Number( intValue >= 509 ) 
                from accumulate( Person( $weight : weight  ),
                sum( $weight ) );
then
  System.out.println( "you guys over =, " + $sum ); 
end

上記例でいえば、workingMemoryにいるPersonの体重を合計していって、その結果509を超えた場合、体重制限オーバーですよ、というルールです。他にもaverage,min max,countといった、ルールを書くときにもよくお目にかかれるキーワードがデフォルトで用意されています。他にも以下のように細かい指定を行い制御することもaccumulateでは可能です。

from accumulate( $cheese : Cheese( type == $likes ),
  init( Cheesery cheesery = new Cheesery();),  #ルールマッチング時の最初に1回行う処理を記述
  action( cheesery.addCheese( $cheese ); ),    #行いたい処理
  reverse( cheesery.removeCheese( $cheese );), #マッチングしなかったときにしたい処理
  result( cheesery ) );                        #返したい情報

といった感じです。ちなみにjava dialect例です。