[rules-users] Rule problem

Femke De Backere femmyke at gmail.com
Mon May 4 07:53:56 EDT 2009


I'm using this:
package bmi

import bmi.DroolsTest.BMIClass;

rule "Overgewicht"
	ruleflow-group "BMIrules"
	when
		bmiClass : BMIClass($bmi: bmi >= 25, bmi < 30)
	then
		System.out.println("U heeft overgewicht: " + $bmi);
end

rule "Obesitas"
	ruleflow-group "BMIrules"
	when
		bmiClass : BMIClass($bmi : bmi >= 30)
	then
		System.out.println("U heeft obesitas: " + $bmi);
end


rule "Ondergewicht"
	ruleflow-group "BMIrules"
	when
		bmiClass : BMIClass($bmi : bmi < 18.5)
	then
		System.out.println("U heeft ondergewicht: " + $bmi);
end


rule "Normaal"
	ruleflow-group "BMIrules"
	when
		bmiClass : BMIClass($bmi : bmi >= 18.5, bmi < 25)
	then
		System.out.println("U heeft een normaal gewicht: " + $bmi);
end

But in essence it is the same as Greg's. I get outputs as:

U heeft ondergewicht: 25.0
U heeft overgewicht: 25.0

But I really don't see the problem.

Femke

Op 4-mei-09, om 13:25 heeft Wolfgang Laun het volgende geschreven:

> I cannot reproduce your findings.
> Which bmi values cause the firing of two rules?
> Are you using exactly the same .drl file Greg sent?
> -W
>
> 2009/5/4 Femke De Backere <femmyke at gmail.com>
> Thanks for the answer! But I sometimes get 2 rules that are correct,  
> and that is impossible. I embedded Greg's DroolsTest class in my  
> class (I am doing some test on performance and studying the  
> difference between performance with a plain java class), and it  
> still doesn't work, and I really don't see why. Anyone any  
> suggestions, in attachement, my class.
>
> Thx,
>
> Femke
>
>
>
>
> Op 4-mei-09, om 02:47 heeft Greg Barton het volgende geschreven:
>
> Try the attached code.
>
> --- On Sun, 5/3/09, Femke De Backere <femmyke at gmail.com> wrote:
>
> From: Femke De Backere <femmyke at gmail.com>
> Subject: Re: [rules-users] Rule problem
> To: "Rules Users List" <rules-users at lists.jboss.org>
> Date: Sunday, May 3, 2009, 6:18 PM
> Thx for the answer. I tried this but I doesn't seem to
> work. For a BMI of 20, i get the result
> "ondergewicht", and it should be
> "normal".
>
> Op 4-mei-09, om 01:04 heeft Ingomar Otter het volgende
> geschreven:
>
> Femke,
> The "Overgewicht| rule matches for _two_ BMIClass
> facts, one with bmi >- 25 and one for BMIClass <30.
> If you want to apply multiple  constraints to a single
> fact you have to list them as such:
>
> rule "Overgewicht"
>        when
>                bmiClass : BMIClass(bmi >= 25 && bmi
> <30)
>        then
>                System.out.println("U heeft
> overgewicht");
> end
>
>
> Cheers,
> Ingomar
>
>
> Am 04.05.2009 um 00:48 schrieb Femke De Backere:
>
> Hi!
>
> I want to make en BMI rule application, so I need
> to test the BMI values. But in rule "Overgewicht"
> and "Normaal", I need to use an AND, but it
> doesn't seem to work in any way I tried.
>
> Does anybody see the problem? The rest of the
> application is based on de sample project (created when
> making a new Drools project).
>
> Thx,
>
> Femke
>
> package bmi
>
> import bmi.DroolsTest.BMIClass;
>
> rule "Overgewicht"
>        when
>                bmiClass : BMIClass(bmi >= 25)
>                bmiClass : BMIClass(bmi < 30)
>        then
>                System.out.println("U heeft
> overgewicht");
> end
>
> rule "Obesitas"
>        when
>                bmiClass : BMIClass($bmi : bmi >= 30)
>        then
>                System.out.println("U heeft
> obesitas");
> end
>
> rule "Ondergewicht"
>        when
>                bmiClass : BMIClass($bmi : bmi < 18.5)
>        then
>                System.out.println("U heeft
> ondergewicht");
> end
>
> rule "Normaal"
>        when
>                bmiClass : BMIClass(bmi >= 18.5)
>                bmiClass : BMIClass(bmi < 25)
>        then
>                System.out.println("U heeft een normaal
> gewicht");
>
> end             _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
>
> https://lists.jboss.org/mailman/listinfo/rules-users
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
> <
> DroolsTest
> .java><Sample.drl>_______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20090504/e90cc530/attachment.html 


More information about the rules-users mailing list