[英]How a fact in the java code and a fact in the .drl are bound in drools?
[英]How to add a fact to Drools
我是Drools的新手,我有一些小问题。 我已经准备好编写一个Test-Rule-File只是为了看看它是否有效。
我有一些规则,其条件取决于其他规则的结果。 到目前为止,我通过在Java对象中处理属性来处理它。 因此,以下规则可以检查这些属性。
但是有可能在不操纵现有属性的情况下将事实添加到知识库中吗?
这是我的DRL的一部分
rule "Ist save"
no-loop true
when
$p : Person(guarantor == true)
then
$p.setSave(true);
end
rule "Ist trustworthy"
no-loop true
when
$p : Person(ages > 25)
Person(schufa == false)
then
modify($p) {setReliable(true); }
end
rule "gets credit"
no-loop true
when
$p : Person(reliable == true && save == true)
then
$p.setGetsCredit(true);
end
改换了同一问题:实际上,我通过设置setSave(true)来操纵Person。 但是,如果我在Java类中没有isSave属性。 是否可以将事实isSave添加到我的知识库中?
非常感谢!
没有什么可以阻止您定义能够保存该信息的类,“保存”值和对Person对象的引用,然后将其插入。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.