diff --git a/drools/backward-chaining/pom.xml b/drools/backward-chaining/pom.xml index bda0cf2abc..1cf8f008af 100644 --- a/drools/backward-chaining/pom.xml +++ b/drools/backward-chaining/pom.xml @@ -1,7 +1,6 @@ - 4.0.0 drools-backward-chaining @@ -17,7 +16,6 @@ 6.4.0.Final - org.kie @@ -26,7 +24,6 @@ org.drools - drools-core ${runtime.version} @@ -35,4 +32,4 @@ ${runtime.version} - + \ No newline at end of file diff --git a/drools/backward-chaining/src/main/java/com/baeldung/drools/BackwardChaining.java b/drools/backward-chaining/src/main/java/com/baeldung/drools/BackwardChaining.java index 1c1d258b47..bac144c32b 100644 --- a/drools/backward-chaining/src/main/java/com/baeldung/drools/BackwardChaining.java +++ b/drools/backward-chaining/src/main/java/com/baeldung/drools/BackwardChaining.java @@ -21,13 +21,11 @@ public class BackwardChaining { KieSession ksession = kContainer.newKieSession("ksession-backward-chaining"); ksession.setGlobal("result", result); ksession.insert(new Fact("Asia", "Planet Earth")); -// ksession.insert(new Fact("China", "Asia")); + // ksession.insert(new Fact("China", "Asia")); ksession.insert(new Fact("Great Wall of China", "China")); ksession.fireAllRules(); return result; - } - } \ No newline at end of file diff --git a/drools/backward-chaining/src/main/resources/com/baeldung/drools/backward_chaining/rules.drl b/drools/backward-chaining/src/main/resources/com/baeldung/drools/backward_chaining/rules.drl new file mode 100644 index 0000000000..bb5a8299e1 --- /dev/null +++ b/drools/backward-chaining/src/main/resources/com/baeldung/drools/backward_chaining/rules.drl @@ -0,0 +1,27 @@ +package com.baeldung + +import com.baeldung.drools.model.Fact; + +global com.baeldung.drools.model.Result result; + +dialect "mvel" + +query belongsTo(String x, String y) + Fact(x, y;) + or + (Fact(z, y;) and belongsTo(x, z;)) +end + +rule "Great Wall of China BELONGS TO Planet Earth" +when + belongsTo("Great Wall of China", "Planet Earth";) +then + result.setValue("Decision one taken: Great Wall of China BELONGS TO Planet Earth"); +end + +rule "print all facts" +when + belongsTo(element, place;) +then + result.addFact(element + " IS ELEMENT OF " + place); +end diff --git a/drools/pom.xml b/drools/pom.xml index 29231f150c..ab894c6a1a 100644 --- a/drools/pom.xml +++ b/drools/pom.xml @@ -7,6 +7,8 @@ com.baeldung drools 1.0.0-SNAPSHOT + + pom com.baeldung