流口水规则中的多个布尔条件?
Multiple boolean conditions in a rule in drools?
我创建了一个规则,其 "when" 条件如下:-
when
$map: Map(this["key1"].equals("value1")) and Map(this["key2"].equals("value2"))
then
...
以上条件正常。
现在如何在规则中添加多个布尔条件?
例如。上述规则可以概括为:a和b
因此,如果我想创建一个规则:(a 和 b) 或 c 那么它的实际 drl 语法是什么。
我是 drools 的新手,请帮助我了解规则 (a 和 b) 或 c 的语法。
我确实创建了一个语法
when
$map: Reindexing((Map(this["key1"].equals("value1")) and Map(this["key2"].equals("value2"))) or Map(this["key3"].equals("value3")))
then
但是我遇到了以下异常
Error Messages: Message [id=1, level=ERROR,
path=mapIterationRules.drl, line=13, column=0 text=[ERR 101] Line
13:21 no viable alternative at input '(' in rule "first rule"]
谢谢
找出上述规则的语法。感谢 laune 和 toni 的帮助。
语法如下
when
$map: Map( this["data1"].equals("dataOutput1") ) || Map( this["data2"].equals("dataOutput2") && this["data3"].equals("dataOutput3") )
在同一个括号内时,不需要再次输入 class 名称。
我创建了一个规则,其 "when" 条件如下:-
when
$map: Map(this["key1"].equals("value1")) and Map(this["key2"].equals("value2"))
then
...
以上条件正常。 现在如何在规则中添加多个布尔条件? 例如。上述规则可以概括为:a和b 因此,如果我想创建一个规则:(a 和 b) 或 c 那么它的实际 drl 语法是什么。 我是 drools 的新手,请帮助我了解规则 (a 和 b) 或 c 的语法。
我确实创建了一个语法
when
$map: Reindexing((Map(this["key1"].equals("value1")) and Map(this["key2"].equals("value2"))) or Map(this["key3"].equals("value3")))
then
但是我遇到了以下异常
Error Messages: Message [id=1, level=ERROR, path=mapIterationRules.drl, line=13, column=0 text=[ERR 101] Line 13:21 no viable alternative at input '(' in rule "first rule"]
谢谢
找出上述规则的语法。感谢 laune 和 toni 的帮助。
语法如下
when
$map: Map( this["data1"].equals("dataOutput1") ) || Map( this["data2"].equals("dataOutput2") && this["data3"].equals("dataOutput3") )
在同一个括号内时,不需要再次输入 class 名称。