私のユースケースを簡素化するために。値が測定されている温度ポイント t1-t4 があります。ユーザーは、実行するルールにさまざまな条件と値を指定できます。例えば
t1+ ( 2* t2) LESS-THAN 100 or t3 EQUAL 5.
したがって、条件とコンパレータは動的であり、比較される値と測定値も動的になります。これは、Drools またはその他のルール エンジンの候補ですか。Drools はテンプレート指向のルールエンジンのように思えます。
rule "engine_is_hot"
no-loop
when
$t1 : Temp( id =="1", $v1 : value)
$t2 : Temp( id =="2", $v2 : value)
eval ( $v1>=50 || $v1 + $v2<=100)
then
System.out.println( $t1.getId()+""+$t2.getId());
end
したがって、ルールを動的に生成することが可能です。つまり、論理コンパレータ、比較値、および現在の値は動的です。そして、 PackageDescr を使用してみましたが、柔軟ではありませんでした。< または >= 論理コンパレータが必要かどうかを指定できません。