[jboss-svn-commits] JBL Code SVN: r27020 - in labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl: src/main/java/org/drools/chance and 3 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Jun 19 01:29:53 EDT 2009
Author: dsotty
Date: 2009-06-19 01:29:53 -0400 (Fri, 19 Jun 2009)
New Revision: 27020
Modified:
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ComplexFormulaTest.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists2Test.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/FuzzyTest0.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/AbstractChanceTest.java
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ComplexFormulaTest.drl
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/fuzzy/FuzzyTest0.drl
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/ComplexFormulaTest.ruleml.xml
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/FuzzyTest0.ruleml.xml
Log:
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ComplexFormulaTest.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ComplexFormulaTest.log 2009-06-19 05:29:24 UTC (rev 27019)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ComplexFormulaTest.log 2009-06-19 05:29:53 UTC (rev 27020)
@@ -1,31 +1,39 @@
Degrees test Eval Record info(1.0) for args L : Message 1
AND{
-(1 at 27) : 0.03900929540395737/1.0 dotAnd(lukasOr(minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-lukAnd(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4))),lukAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5),random(org.drools.chance.Message.status,6))) [EVAL 0.03900929540395737,PRIOR o,]
-(1 at 28) : 1.0/1.0 TestOpDegs [EVAL 0.0,PRIOR 1.0,]
+(1 at 35) : 0.06492201238870621/1.0 dotAnd(lukasOr(minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-lukAnd(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4))),exists()distEquiv(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,8)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,9)))) [EVAL 0.06492201238870621,PRIOR o,]
+(1 at 36) : 1.0/1.0 TestOpDegs [EVAL 0.0,PRIOR 1.0,]
}
-(1 at 29) : 0.03900929540395737/1.0 lukAnd(dotAnd(lukasOr(minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-lukAnd(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4))),lukAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5),random(org.drools.chance.Message.status,6))),TestOpDegs) [EVAL 0.03900929540395737,PRIOR o,]
- (1 at 27) : 0.03900929540395737/1.0 dotAnd(lukasOr(minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-lukAnd(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4))),lukAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5),random(org.drools.chance.Message.status,6))) [EVAL 0.03900929540395737,PRIOR o,]
- (1 at 11) : 0.07807037234306335/1.0 lukasOr(minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))) [EVAL 0.07807037234306335,PRIOR o,]
- (1 at 1) : 0.04750553518533707/1.0 minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))) [EVAL 0.04750553518533707,PRIOR 0.044440001249313354,]
+(1 at 37) : 0.06492201238870621/1.0 lukAnd(dotAnd(lukasOr(minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-lukAnd(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4))),exists()distEquiv(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,8)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,9))))TestOpDegs) [EVAL 0.06492201238870621,PRIOR o,]
+ (1 at 35) : 0.06492201238870621/1.0 dotAnd(lukasOr(minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-lukAnd(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4))),exists()distEquiv(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,8)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,9)))) [EVAL 0.06492201238870621,PRIOR o,]
+ (1 at 11) : 1.0/1.0 lukasOr(minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))) [EVAL 1.0,PRIOR o,]
+ (1 at 1) : 0.39226871728897095/1.0 minAnd(==(class,org.drools.chance.Message),lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)))) [EVAL 0.39226871728897095,PRIOR 0.044440001249313354,]
(1 at 3) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
- (1 at 5) : 0.04750553518533707/1.0 lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1))) [EVAL 0.04750553518533707,PRIOR o,]
+ (1 at 5) : 0.39226871728897095/1.0 lukAnd(Integer ==(org.drools.chance.Message.status,0),dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1))) [EVAL 0.39226871728897095,PRIOR o,]
(1 at 5) : 1.0/1.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 1.0,PRIOR o,]
- (1 at 5) : 0.04750553518533707/1.0 dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)) [EVAL 0.04750553518533707,PRIOR o,]
- (1 at 5) : 0.10262562334537506/1.0 random(org.drools.chance.Message.status,1) [EVAL 0.10262562334537506,PRIOR o,]
- (1 at 5) : 0.4629012942314148/1.0 random(org.drools.chance.Message.status,-1) [EVAL 0.4629012942314148,PRIOR o,]
- (1 at 1) : 0.030564839020371437/1.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2)) [EVAL 0.030564839020371437,PRIOR o,]
+ (1 at 5) : 0.39226871728897095/1.0 dotAnd(random(org.drools.chance.Message.status,1),random(org.drools.chance.Message.status,-1)) [EVAL 0.39226871728897095,PRIOR o,]
+ (1 at 5) : 0.40388643741607666/1.0 random(org.drools.chance.Message.status,1) [EVAL 0.40388643741607666,PRIOR o,]
+ (1 at 5) : 0.9712352156639099/1.0 random(org.drools.chance.Message.status,-1) [EVAL 0.9712352156639099,PRIOR o,]
+ (1 at 1) : 0.9443910121917725/1.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2)) [EVAL 0.9443910121917725,PRIOR o,]
(1 at 3) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
- (1 at 9) : 0.030564839020371437/1.0 random(org.drools.chance.Message.status,2) [EVAL 0.030564839020371437,PRIOR o,]
- (1 at 20) : 0.5030843019485474/1.0 -lukAnd(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4))) [EVAL 0.5030843019485474,PRIOR o,]
- (1 at 1) : 0.6145576238632202/1.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)) [EVAL 0.6145576238632202,PRIOR o,]
+ (1 at 9) : 0.9443910121917725/1.0 random(org.drools.chance.Message.status,2) [EVAL 0.9443910121917725,PRIOR o,]
+ (1 at 20) : 1.0/1.0 -lukAnd(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4))) [EVAL 1.0,PRIOR o,]
+ (1 at 1) : 0.4945790767669678/1.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)) [EVAL 0.4945790767669678,PRIOR o,]
(1 at 3) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
- (1 at 14) : 0.6145576238632202/1.0 random(org.drools.chance.Message.status,3) [EVAL 0.6145576238632202,PRIOR o,]
- (1 at 1) : 0.8823580741882324/1.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4)) [EVAL 0.8823580741882324,PRIOR o,]
+ (1 at 14) : 0.4945790767669678/1.0 random(org.drools.chance.Message.status,3) [EVAL 0.4945790767669678,PRIOR o,]
+ (1 at 1) : 0.41534364223480225/1.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4)) [EVAL 0.41534364223480225,PRIOR o,]
(1 at 3) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
- (1 at 18) : 0.8823580741882324/1.0 random(org.drools.chance.Message.status,4) [EVAL 0.8823580741882324,PRIOR o,]
- (1 at 1) : 0.9932100176811218/1.0 lukAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5),random(org.drools.chance.Message.status,6)) [EVAL 0.0,PRIOR 0.9932100176811218,]
- (1 at 3) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
- (1 at 24) : 0.3239850103855133/1.0 random(org.drools.chance.Message.status,5) [EVAL 0.3239850103855133,PRIOR o,]
- (1 at 25) : 0.31954556703567505/1.0 random(org.drools.chance.Message.status,6) [EVAL 0.31954556703567505,PRIOR o,]
- (1 at 28) : 1.0/1.0 TestOpDegs [EVAL 0.0,PRIOR 1.0,]
+ (1 at 18) : 0.41534364223480225/1.0 random(org.drools.chance.Message.status,4) [EVAL 0.41534364223480225,PRIOR o,]
+ (1 at 25) : 0.08606775104999542/1.0 exists() [EVAL 0.08606775104999542,PRIOR o,]
+ (1 at 1) : 0.08606775104999542/1.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5),random(org.drools.chance.Message.status,6)) [EVAL 0.08606775104999542,PRIOR o,]
+ (1 at 3) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (1 at 23) : 0.6253952980041504/1.0 random(org.drools.chance.Message.status,5) [EVAL 0.6253952980041504,PRIOR o,]
+ (1 at 24) : 0.13762135803699493/1.0 random(org.drools.chance.Message.status,6) [EVAL 0.13762135803699493,PRIOR o,]
+ (1 at 34) : 0.7543128728866577/1.0 distEquiv(dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,8)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,9))) [EVAL 0.7543128728866577,PRIOR o,]
+ (1 at 1) : 0.7999004125595093/1.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,8)) [EVAL 0.7999004125595093,PRIOR o,]
+ (1 at 3) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (1 at 28) : 0.7999004125595093/1.0 random(org.drools.chance.Message.status,8) [EVAL 0.7999004125595093,PRIOR o,]
+ (1 at 1) : 0.554213285446167/1.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,9)) [EVAL 0.554213285446167,PRIOR o,]
+ (1 at 3) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (1 at 32) : 0.554213285446167/1.0 random(org.drools.chance.Message.status,9) [EVAL 0.554213285446167,PRIOR o,]
+ (1 at 36) : 1.0/1.0 TestOpDegs [EVAL 0.0,PRIOR 1.0,]
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists2Test.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists2Test.log 2009-06-19 05:29:24 UTC (rev 27019)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists2Test.log 2009-06-19 05:29:53 UTC (rev 27020)
@@ -1,58 +1,58 @@
Existential check 0.0
Eval Record info(1.0) for args L :
AND{
-(0 at 16) : 0.0 dotAnd(exists()) [EVAL 0.0,]
-(0 at 17) : 1.0 Test Exist 4 [EVAL 0.0,PRIOR 1.0,]
+(0 at 16) : 0.0/1.0 dotAnd(exists()) [EVAL 0.0,PRIOR o,]
+(0 at 17) : 1.0/1.0 Test Exist 4 [EVAL 0.0,PRIOR 1.0,]
}
-(0 at 18) : 0.0 minAnd(dotAnd(exists())Test Exist 4) [EVAL 0.0,]
- (0 at 16) : 0.0 dotAnd(exists()) [EVAL 0.0,]
- (0 at 15) : 0.0 exists() [EVAL 0.0,]
- (0 at 17) : 1.0 Test Exist 4 [EVAL 0.0,PRIOR 1.0,]
+(0 at 18) : 0.0/1.0 minAnd(dotAnd(exists())Test Exist 4) [EVAL 0.0,PRIOR o,]
+ (0 at 16) : 0.0/1.0 dotAnd(exists()) [EVAL 0.0,PRIOR o,]
+ (0 at 15) : 0.0/1.0 exists() [EVAL 0.0,PRIOR o,]
+ (0 at 17) : 1.0/1.0 Test Exist 4 [EVAL 0.0,PRIOR 1.0,]
Existential check 1.0
Eval Record info(1.0) for args L :
AND{
-(0 at 16) : 1.0 dotAnd(exists()) [EVAL 1.0,]
-(0 at 17) : 1.0 Test Exist 4 [EVAL 0.0,PRIOR 1.0,]
+(0 at 16) : 1.0/1.0 dotAnd(exists()) [EVAL 1.0,PRIOR o,]
+(0 at 17) : 1.0/1.0 Test Exist 4 [EVAL 0.0,PRIOR 1.0,]
}
-(0 at 18) : 1.0 minAnd(dotAnd(exists())Test Exist 4) [EVAL 1.0,]
- (0 at 16) : 1.0 dotAnd(exists()) [EVAL 1.0,]
- (63 at 15) : 1.0 exists() [EVAL 1.0,]
- (31 at -1) : 0.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)))) [EVAL 0.0,]
- (31 at 13) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1))) [EVAL 0.0,]
- (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)) [EVAL 1.0,]
- (31 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (31 at 7) : 1.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 1.0,]
- (31 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)) [EVAL 0.0,]
- (31 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (31 at 11) : 0.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 0.0,]
- (63 at -1) : 0.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)))) [EVAL 0.0,]
- (63 at 13) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1))) [EVAL 0.0,]
- (32 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)) [EVAL 0.0,]
- (32 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (32 at 7) : 0.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 0.0,]
- (31 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)) [EVAL 0.0,]
- (31 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (31 at 11) : 0.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 0.0,]
- (32 at -1) : 0.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)))) [EVAL 0.0,]
- (32 at 13) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1))) [EVAL 0.0,]
- (32 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)) [EVAL 0.0,]
- (32 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (32 at 7) : 0.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 0.0,]
- (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)) [EVAL 1.0,]
- (32 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (32 at 11) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
- (63 at -1) : 1.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)))) [EVAL 1.0,]
- (63 at 13) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1))) [EVAL 1.0,]
- (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)) [EVAL 1.0,]
- (31 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (31 at 7) : 1.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 1.0,]
- (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)) [EVAL 1.0,]
- (32 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (32 at 11) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
- (0 at 17) : 1.0 Test Exist 4 [EVAL 0.0,PRIOR 1.0,]
+(0 at 18) : 1.0/1.0 minAnd(dotAnd(exists())Test Exist 4) [EVAL 1.0,PRIOR o,]
+ (0 at 16) : 1.0/1.0 dotAnd(exists()) [EVAL 1.0,PRIOR o,]
+ (63 at 15) : 1.0/1.0 exists() [EVAL 1.0,PRIOR o,]
+ (31 at -1) : 0.0/1.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)))) [EVAL 0.0,PRIOR o,]
+ (31 at 13) : 0.0/1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1))) [EVAL 0.0,PRIOR o,]
+ (31 at 1) : 1.0/1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)) [EVAL 1.0,PRIOR o,]
+ (31 at 6) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (31 at 7) : 1.0/1.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 1.0,PRIOR o,]
+ (31 at 1) : 0.0/1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)) [EVAL 0.0,PRIOR o,]
+ (31 at 6) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (31 at 11) : 0.0/1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 0.0,PRIOR o,]
+ (63 at -1) : 0.0/1.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)))) [EVAL 0.0,PRIOR o,]
+ (63 at 13) : 0.0/1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1))) [EVAL 0.0,PRIOR o,]
+ (32 at 1) : 0.0/1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)) [EVAL 0.0,PRIOR o,]
+ (32 at 6) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (32 at 7) : 0.0/1.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 0.0,PRIOR o,]
+ (31 at 1) : 0.0/1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)) [EVAL 0.0,PRIOR o,]
+ (31 at 6) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (31 at 11) : 0.0/1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 0.0,PRIOR o,]
+ (32 at -1) : 0.0/1.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)))) [EVAL 0.0,PRIOR o,]
+ (32 at 13) : 0.0/1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1))) [EVAL 0.0,PRIOR o,]
+ (32 at 1) : 0.0/1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)) [EVAL 0.0,PRIOR o,]
+ (32 at 6) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (32 at 7) : 0.0/1.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 0.0,PRIOR o,]
+ (32 at 1) : 1.0/1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)) [EVAL 1.0,PRIOR o,]
+ (32 at 6) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (32 at 11) : 1.0/1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,PRIOR o,]
+ (63 at -1) : 1.0/1.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)))) [EVAL 1.0,PRIOR o,]
+ (63 at 13) : 1.0/1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1))) [EVAL 1.0,PRIOR o,]
+ (31 at 1) : 1.0/1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)) [EVAL 1.0,PRIOR o,]
+ (31 at 6) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (31 at 7) : 1.0/1.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 1.0,PRIOR o,]
+ (32 at 1) : 1.0/1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)) [EVAL 1.0,PRIOR o,]
+ (32 at 6) : 1.0/1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,PRIOR o,]
+ (32 at 11) : 1.0/1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,PRIOR o,]
+ (0 at 17) : 1.0/1.0 Test Exist 4 [EVAL 0.0,PRIOR 1.0,]
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/FuzzyTest0.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/FuzzyTest0.log 2009-06-19 05:29:24 UTC (rev 27019)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/FuzzyTest0.log 2009-06-19 05:29:53 UTC (rev 27020)
@@ -1,38 +1,61 @@
+Room is hot in degree 0.75
+Evaluator is called directly
+
+
+Room is hot in degree 0.75
+Evaluator from temp domain, requires a method in Room
+
+
Room is warm in degree 0.1875
Room is warm in degree Eval Record info(1.0) for args L : Room 47
AND{
-(47 at 6) : 0.1875/1.0 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))) [EVAL 0.1875,PRIOR o,]
-(47 at 7) : 1.0/1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
+(47 at 20) : 0.1875/1.0 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))) [EVAL 0.1875,PRIOR o,]
+(47 at 21) : 1.0/1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
}
-(47 at 8) : 0.1875/1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))),Hot v3 (Warm)) [EVAL 0.1875,PRIOR o,]
- (47 at 6) : 0.1875/1.0 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))) [EVAL 0.1875,PRIOR o,]
+(47 at 22) : 0.1875/1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))),Hot v3 (Warm)) [EVAL 0.1875,PRIOR o,]
+ (47 at 20) : 0.1875/1.0 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))) [EVAL 0.1875,PRIOR o,]
(47 at 1) : 0.1875/1.0 dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot))) [EVAL 0.1875,PRIOR o,]
(47 at 3) : 1.0/1.0 ==(class,org.drools.chance.fuzzyTest.Room) [EVAL 1.0,PRIOR o,]
- (47 at 4) : 0.1875/1.0 dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)) [EVAL 0.1875,PRIOR o,]
- (47 at 4) : 0.25/1.0 seems(org.drools.chance.fuzzyTest.Room.temperature,warm) [EVAL 0.25,PRIOR o,]
- (47 at 4) : 0.75/1.0 seems(org.drools.chance.fuzzyTest.Room.temperature,hot) [EVAL 0.75,PRIOR o,]
- (47 at 7) : 1.0/1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
+ (47 at 18) : 0.1875/1.0 dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)) [EVAL 0.1875,PRIOR o,]
+ (47 at 18) : 0.25/1.0 seems(org.drools.chance.fuzzyTest.Room.temperature,warm) [EVAL 0.25,PRIOR o,]
+ (47 at 18) : 0.75/1.0 seems(org.drools.chance.fuzzyTest.Room.temperature,hot) [EVAL 0.75,PRIOR o,]
+ (47 at 21) : 1.0/1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
Evaluator from temp domain, runtime call (no method in room)
-|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+Room is hot in degree 0.75
+Room returns Evaluator via getHot(), which is dynamically called on temp.|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+Room is hot in degree 0.0
+Evaluator is called directly
+
+
+Room is hot in degree 0.0
+Evaluator from temp domain, requires a method in Room
+
+
Room is warm in degree 0.0
Room is warm in degree Eval Record info(1.0) for args L : Room 47
AND{
-(47 at 6) : 0.0/1.0 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))) [EVAL 0.0,PRIOR o,]
-(47 at 7) : 1.0/1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
+(47 at 20) : 0.0/1.0 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))) [EVAL 0.0,PRIOR o,]
+(47 at 21) : 1.0/1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
}
-(47 at 8) : 0.0/1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))),Hot v3 (Warm)) [EVAL 0.0,PRIOR o,]
- (47 at 6) : 0.0/1.0 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))) [EVAL 0.0,PRIOR o,]
+(47 at 22) : 0.0/1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))),Hot v3 (Warm)) [EVAL 0.0,PRIOR o,]
+ (47 at 20) : 0.0/1.0 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)))) [EVAL 0.0,PRIOR o,]
(47 at 1) : 0.0/1.0 dotAnd(==(class,org.drools.chance.fuzzyTest.Room),dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot))) [EVAL 0.0,PRIOR o,]
(47 at 3) : 1.0/1.0 ==(class,org.drools.chance.fuzzyTest.Room) [EVAL 1.0,PRIOR o,]
- (47 at 4) : 0.0/1.0 dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)) [EVAL 0.0,PRIOR o,]
- (47 at 4) : 0.12999999523162842/1.0 seems(org.drools.chance.fuzzyTest.Room.temperature,warm) [EVAL 0.12999999523162842,PRIOR o,]
- (47 at 4) : 0.0/1.0 seems(org.drools.chance.fuzzyTest.Room.temperature,hot) [EVAL 0.0,PRIOR o,]
- (47 at 7) : 1.0/1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
+ (47 at 18) : 0.0/1.0 dotAnd(seems(org.drools.chance.fuzzyTest.Room.temperature,warm),seems(org.drools.chance.fuzzyTest.Room.temperature,hot)) [EVAL 0.0,PRIOR o,]
+ (47 at 18) : 0.12999999523162842/1.0 seems(org.drools.chance.fuzzyTest.Room.temperature,warm) [EVAL 0.12999999523162842,PRIOR o,]
+ (47 at 18) : 0.0/1.0 seems(org.drools.chance.fuzzyTest.Room.temperature,hot) [EVAL 0.0,PRIOR o,]
+ (47 at 21) : 1.0/1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
Evaluator from temp domain, runtime call (no method in room)
+
+
+Room is hot in degree 0.0
+Room returns Evaluator via getHot(), which is dynamically called on temp.
\ No newline at end of file
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/AbstractChanceTest.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/AbstractChanceTest.java 2009-06-19 05:29:24 UTC (rev 27019)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/AbstractChanceTest.java 2009-06-19 05:29:53 UTC (rev 27020)
@@ -45,7 +45,7 @@
private StatefulKnowledgeSession session;
- private boolean isDumpable = true;
+ private boolean isDumpable = false;
private RuleMLDumper dumper = new RuleMLDumper();
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ComplexFormulaTest.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ComplexFormulaTest.drl 2009-06-19 05:29:24 UTC (rev 27019)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ComplexFormulaTest.drl 2009-06-19 05:29:53 UTC (rev 27020)
@@ -30,8 +30,12 @@
)
- Message(status ~random 5 , status ~random 6) @( kind="Lukas" prior="0.99321")
+ exists Message(s : status ~random 5 , status ~random 6) //@( kind="Lukas" prior="0.99321")
+ ((equiv
+ Message( s1 : status ~random 8)
+ Message( s2 : status ~random 9)
+ ))
then
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/fuzzy/FuzzyTest0.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/fuzzy/FuzzyTest0.drl 2009-06-19 05:29:24 UTC (rev 27019)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/fuzzy/FuzzyTest0.drl 2009-06-19 05:29:53 UTC (rev 27020)
@@ -16,7 +16,7 @@
rule "Hot v1"
when
- $r : Room( temperature ~hot )
+ $r : Room( t : temperature ~hot )
then
writer.write("\n\n");
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/ComplexFormulaTest.ruleml.xml
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/ComplexFormulaTest.ruleml.xml 2009-06-19 05:29:24 UTC (rev 27019)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/ComplexFormulaTest.ruleml.xml 2009-06-19 05:29:53 UTC (rev 27020)
@@ -214,14 +214,6 @@
<Reify>
<And>
<Atom>
- <!--unsupported attribute -
-<kind>kind:Lukas</kind>
--->
- <!--
-<degree>
- <Data>0.99321</Data>
-</degree>
--->
<op>
<Rel>isA</Rel>
</op>
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/FuzzyTest0.ruleml.xml
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/FuzzyTest0.ruleml.xml 2009-06-19 05:29:24 UTC (rev 27019)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/FuzzyTest0.ruleml.xml 2009-06-19 05:29:53 UTC (rev 27020)
@@ -10,6 +10,116 @@
</oid>
<Forall>
<declare>
+ <Var type="org.drools.chance.fuzzyTest.Room">Hot v1.$r</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Hot v1</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Hot v1.$r</Var>
+ </oid>
+ <Rel>Room</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind type="java.lang.Class">class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>hot</Rel>
+ </op>
+ <slot>
+ <Ind type="java.lang.Object">temperature</Ind>
+ <Var/>
+ </slot>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
+ <Atom>
+ <Rel/>
+ <Data>writer.write("\n\n");
+ writer.write("Room is hot in degree "+drools.getConsequenceDegree()+"\n");
+ writer.write("Evaluator is called directly\n");</Data>
+ </Atom>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.fuzzyTest.Room">Hot v2.$r</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Hot v2</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Hot v2.$r</Var>
+ </oid>
+ <Rel>Room</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind type="java.lang.Class">class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>seems</Rel>
+ </op>
+ <slot>
+ <Ind type="java.lang.Object">temperature</Ind>
+ <Var/>
+ </slot>
+ <Expr>
+ <Fun>getHot</Fun>
+ <Var>Hot v2.$r</Var>
+ </Expr>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
+ <Atom>
+ <Rel/>
+ <Data>writer.write("\n\n");
+ writer.write("Room is hot in degree "+drools.getConsequenceDegree()+"\n");
+ writer.write("Evaluator from temp domain, requires a method in Room\n");</Data>
+ </Atom>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ <Forall>
+ <declare>
<Var type="org.drools.chance.fuzzyTest.Room">Hot v3 (Warm).$r</Var>
</declare>
<formula>
@@ -78,6 +188,63 @@
</Implies>
</formula>
</Forall>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.fuzzyTest.Room">Hot v4.$r</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Hot v4</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Hot v4.$r</Var>
+ </oid>
+ <Rel>Room</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind type="java.lang.Class">class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>evaluates</Rel>
+ </op>
+ <slot>
+ <Ind type="java.lang.Object">hot</Ind>
+ <Var/>
+ </slot>
+ <Expr>
+ <Fun>getTemperature</Fun>
+ <Var>Hot v4.$r</Var>
+ </Expr>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
+ <Atom>
+ <Rel/>
+ <Data>writer.write("\n\n");
+ writer.write("Room is hot in degree "+drools.getConsequenceDegree()+"\n");
+ writer.write("Room returns Evaluator via getHot(), which is dynamically called on temp.");</Data>
+ </Atom>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
</Rulebase>
</Assert>
</RuleML>
More information about the jboss-svn-commits
mailing list