forall 总是计算为真 [Drools]

forall always evaluates to be true [Drools]

我有一个 class 应用程序,其中有一个 CallPhones 实例列表。

class Application() {
      List<CallPhones> callPhonesList;
      ...
}

class CallPhones() {
      Integer callTimes;
      ...
}

我想在所有实例的 callTimes 大于 10 时触发规则。规则如下:

rule "Application eligible"
    when
        app : Application()
        forall(CallPhones(callTimes > 10))
    then 
        // application is eligible
end

奇怪的是,规则总是触发,即使有一个 callTimes 为 5 的实例。我也尝试了 this question 的答案,但没有帮助。有什么想法吗?

应该是

rule "Application eligible"
    when
        app : Application()
        forall($temp:CallPhones(callUserTimes > 10) from app.callPhoneList)
    then 
        // application is eligible
end