[jboss-svn-commits] JBL Code SVN: r26758 - in labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl: xml and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu May 28 04:48:23 EDT 2009
Author: dsotty
Date: 2009-05-28 04:48:22 -0400 (Thu, 28 May 2009)
New Revision: 26758
Added:
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/CutTest.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists2Test.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists3Test.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists4Test.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ExistsTest.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Forall2Test.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ForallTest.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest1.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest2.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest.ruleml.xml
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest1.ruleml.xml
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest2.ruleml.xml
Log:
Tests
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/CutTest.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/CutTest.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/CutTest.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,86 @@
+Rule without cut fires
+Eval Record info(1.0) for args L : Message 31
+AND{
+(31 at 20) : 0.07029788 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.07029788,]
+(31 at 21) : 1.0 TestCut 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(31 at 22) : 0.07029788 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))),TestCut 2) [EVAL 0.07029788,]
+ (31 at 20) : 0.07029788 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.07029788,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 1) : 0.07029788 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m)) [EVAL 0.07029788,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 8) : 0.07029788 random(org.drools.chance.Message.status,null) [EVAL 0.07029788,]
+ (31 at 19) : 1.0 Object ==(org.drools.chance.Message.this,$m) [EVAL 1.0,]
+ (31 at 21) : 1.0 TestCut 2 [EVAL 0.0,PRIOR 1.0,]
+
+Rule with cut fires
+Eval Record info(1.0) for args L : Message 32
+AND{
+(32 at 10) : 0.91325086 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.91325086,]
+(32 at 11) : 1.0 TestCut 1 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(32 at 12) : 0.91325086 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))),TestCut 1) [EVAL 0.91325086,]
+ (32 at 10) : 0.91325086 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,0)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.91325086,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,0)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 1.0 Integer >(org.drools.chance.Message.status,0) [EVAL 1.0,]
+ (32 at 1) : 0.91325086 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m)) [EVAL 0.91325086,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 8) : 0.91325086 random(org.drools.chance.Message.status,null) [EVAL 0.91325086,]
+ (32 at 9) : 1.0 Object ==(org.drools.chance.Message.this,$m) [EVAL 1.0,]
+ (32 at 11) : 1.0 TestCut 1 [EVAL 0.0,PRIOR 1.0,]
+
+Rule without cut fires
+Eval Record info(1.0) for args L : Message 31 Message 32
+AND{
+(63 at 20) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.0,]
+(63 at 21) : 1.0 TestCut 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(63 at 22) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))),TestCut 2) [EVAL 0.0,]
+ (63 at 20) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (63 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m)) [EVAL 0.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 8) : 0.91325086 random(org.drools.chance.Message.status,null) [EVAL 0.91325086,]
+ (63 at 19) : 0.0 Object ==(org.drools.chance.Message.this,$m) [EVAL 0.0,]
+ (63 at 21) : 1.0 TestCut 2 [EVAL 0.0,PRIOR 1.0,]
+
+Rule without cut fires
+Eval Record info(1.0) for args L : Message 32
+AND{
+(32 at 20) : 0.91325086 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.91325086,]
+(32 at 21) : 1.0 TestCut 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(32 at 22) : 0.91325086 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))),TestCut 2) [EVAL 0.91325086,]
+ (32 at 20) : 0.91325086 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.91325086,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 1) : 0.91325086 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m)) [EVAL 0.91325086,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 8) : 0.91325086 random(org.drools.chance.Message.status,null) [EVAL 0.91325086,]
+ (32 at 19) : 1.0 Object ==(org.drools.chance.Message.this,$m) [EVAL 1.0,]
+ (32 at 21) : 1.0 TestCut 2 [EVAL 0.0,PRIOR 1.0,]
+
+Rule without cut fires
+Eval Record info(1.0) for args L : Message 32 Message 31
+AND{
+(63 at 20) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.0,]
+(63 at 21) : 1.0 TestCut 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(63 at 22) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))),TestCut 2) [EVAL 0.0,]
+ (63 at 20) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m))) [EVAL 0.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (63 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null),Object ==(org.drools.chance.Message.this,$m)) [EVAL 0.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 8) : 0.07029788 random(org.drools.chance.Message.status,null) [EVAL 0.07029788,]
+ (63 at 19) : 0.0 Object ==(org.drools.chance.Message.this,$m) [EVAL 0.0,]
+ (63 at 21) : 1.0 TestCut 2 [EVAL 0.0,PRIOR 1.0,]
+
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists2Test.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists2Test.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists2Test.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +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 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,]
+
+
+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 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,]
+
+
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists3Test.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists3Test.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists3Test.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,81 @@
+
+
+ Conditional join with existence
+ Rule triggered for M1
+Existential check 0.0
+Eval Record info(1.0) for args L : Message 32 Message 31
+AND{
+(63 at 9) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),exists()) [EVAL 0.0,]
+(32 at 10) : 1.0 Test Exist 5 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(63 at 11) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),exists())Test Exist 5) [EVAL 0.0,]
+ (63 at 9) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),exists()) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 0.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 0.0,]
+ (63 at 8) : 0.0 exists() [EVAL 0.0,]
+ (63 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (63 at 8) : 0.0 Integer >(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (32 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 8) : 0.0 Integer >(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (32 at 10) : 1.0 Test Exist 5 [EVAL 0.0,PRIOR 1.0,]
+
+
+
+
+ Conditional join with existence
+ Rule triggered for M0
+Existential check 1.0
+Eval Record info(1.0) for args L : Message 31
+AND{
+(31 at 9) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),exists()) [EVAL 1.0,]
+(31 at 10) : 1.0 Test Exist 5 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(31 at 11) : 1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),exists())Test Exist 5) [EVAL 1.0,]
+ (31 at 9) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),exists()) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 1.0,]
+ (63 at 8) : 1.0 exists() [EVAL 1.0,]
+ (31 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 8) : 0.0 Integer >(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (63 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,$s)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (63 at 8) : 1.0 Integer >(org.drools.chance.Message.status,$s) [EVAL 1.0,]
+ (31 at 10) : 1.0 Test Exist 5 [EVAL 0.0,PRIOR 1.0,]
+
+
+
+
+ Conditional join with existence
+ Rule triggered for M2
+Existential check 0.0
+Eval Record info(1.0) for args L : Message 33 Message 32 Message 31
+AND{
+(30 at 9) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),exists()) [EVAL 0.0,]
+(33 at 10) : 1.0 Test Exist 5 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(30 at 11) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),exists())Test Exist 5) [EVAL 0.0,]
+ (30 at 9) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)),exists()) [EVAL 0.0,]
+ (33 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0)) [EVAL 0.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 4) : 0.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 0.0,]
+ (30 at 8) : 0.0 exists() [EVAL 0.0,]
+ (1 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (1 at 8) : 0.0 Integer >(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (62 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (62 at 8) : 0.0 Integer >(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (33 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 8) : 0.0 Integer >(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (33 at 10) : 1.0 Test Exist 5 [EVAL 0.0,PRIOR 1.0,]
+
+
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists4Test.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists4Test.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Exists4Test.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,32 @@
+Existential check 1.0
+Eval Record info(1.0) for args L :
+AND{
+(0 at 10) : 1.0 dotAnd(-exists()) [EVAL 1.0,]
+(0 at 11) : 1.0 Test Exist 6 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(0 at 12) : 1.0 minAnd(dotAnd(-exists())Test Exist 6) [EVAL 1.0,]
+ (0 at 10) : 1.0 dotAnd(-exists()) [EVAL 1.0,]
+ (0 at 9) : 1.0 -exists() [EVAL 1.0,]
+ (0 at 11) : 1.0 Test Exist 6 [EVAL 0.0,PRIOR 1.0,]
+
+
+Existential check 0.24914593
+Eval Record info(1.0) for args L :
+AND{
+(0 at 10) : 0.24914593 dotAnd(-exists()) [EVAL 0.24914593,]
+(0 at 11) : 1.0 Test Exist 6 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(0 at 12) : 0.24914593 minAnd(dotAnd(-exists())Test Exist 6) [EVAL 0.24914593,]
+ (0 at 10) : 0.24914593 dotAnd(-exists()) [EVAL 0.24914593,]
+ (63 at 9) : 0.24914593 -exists() [EVAL 0.24914593,]
+ (31 at 1) : 0.664691 -dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null)) [EVAL 0.664691,]
+ (31 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 7) : 0.33530906 random(org.drools.chance.Message.status,null) [EVAL 0.33530906,]
+ (32 at 1) : 0.7508541 -dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,null)) [EVAL 0.7508541,]
+ (32 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 7) : 0.24914593 random(org.drools.chance.Message.status,null) [EVAL 0.24914593,]
+ (0 at 11) : 1.0 Test Exist 6 [EVAL 0.0,PRIOR 1.0,]
+
+
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ExistsTest.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ExistsTest.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ExistsTest.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,35 @@
+Existential check 0.0
+Eval Record info(1.0) for args L :
+AND{
+(0 at 9) : 0.0 dotAnd(exists()) [EVAL 0.0,]
+(0 at 10) : 1.0 Test Exist 3 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(0 at 11) : 0.0 minAnd(dotAnd(exists())Test Exist 3) [EVAL 0.0,]
+ (0 at 9) : 0.0 dotAnd(exists()) [EVAL 0.0,]
+ (0 at 8) : 0.0 exists() [EVAL 0.0,]
+ (0 at 10) : 1.0 Test Exist 3 [EVAL 0.0,PRIOR 1.0,]
+
+
+Existential check 1.0
+Eval Record info(1.0) for args L :
+AND{
+(0 at 9) : 1.0 dotAnd(exists()) [EVAL 1.0,]
+(0 at 10) : 1.0 Test Exist 3 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(0 at 11) : 1.0 minAnd(dotAnd(exists())Test Exist 3) [EVAL 1.0,]
+ (0 at 9) : 1.0 dotAnd(exists()) [EVAL 1.0,]
+ (30 at 8) : 1.0 exists() [EVAL 1.0,]
+ (31 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,2)) [EVAL 0.0,]
+ (31 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 7) : 0.0 Integer ==(org.drools.chance.Message.status,2) [EVAL 0.0,]
+ (32 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,2)) [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,2) [EVAL 0.0,]
+ (33 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,2)) [EVAL 1.0,]
+ (33 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 7) : 1.0 Integer ==(org.drools.chance.Message.status,2) [EVAL 1.0,]
+ (0 at 10) : 1.0 Test Exist 3 [EVAL 0.0,PRIOR 1.0,]
+
+
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Forall2Test.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Forall2Test.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/Forall2Test.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,92 @@
+Existential check 1.0
+Eval Record info(1.0) for args L : Message 32 Message 31
+AND{
+(63 at 20) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-exists()) [EVAL 1.0,]
+(32 at 21) : 1.0 Test Forall 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(63 at 22) : 1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-exists())Test Forall 2) [EVAL 1.0,]
+ (63 at 20) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-exists()) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (63 at 19) : 1.0 -exists() [EVAL 1.0,]
+ (63 at -1) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)))) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (63 at 17) : 0.0 -dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m))) [EVAL 0.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (63 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 11) : 1.0 Integer <=(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (63 at 12) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (63 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 15) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (63 at 12) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (32 at 21) : 1.0 Test Forall 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+Existential check 0.0
+Eval Record info(1.0) for args L : Message 32 Message 31
+AND{
+(63 at 20) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-exists()) [EVAL 0.0,]
+(32 at 21) : 1.0 Test Forall 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(63 at 22) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-exists())Test Forall 2) [EVAL 0.0,]
+ (63 at 20) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-exists()) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (30 at 19) : 0.0 -exists() [EVAL 0.0,]
+ (63 at -1) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)))) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (63 at 17) : 0.0 -dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m))) [EVAL 0.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (63 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 11) : 1.0 Integer <=(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (63 at 12) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (63 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 15) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (63 at 12) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (1 at -1) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)))) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (1 at 17) : 1.0 -dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m))) [EVAL 1.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (1 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)) [EVAL 0.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 11) : 0.0 Integer <=(org.drools.chance.Message.status,1) [EVAL 0.0,]
+ (1 at 12) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (1 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 15) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (1 at 12) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (30 at -1) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),-dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)))) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (30 at 17) : 1.0 -dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m))) [EVAL 1.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (30 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer <=(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)) [EVAL 0.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 11) : 0.0 Integer <=(org.drools.chance.Message.status,1) [EVAL 0.0,]
+ (30 at 12) : 0.0 Object ==(org.drools.chance.Message.this,m) [EVAL 0.0,]
+ (30 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 15) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (30 at 12) : 0.0 Object ==(org.drools.chance.Message.this,m) [EVAL 0.0,]
+ (32 at 21) : 1.0 Test Forall 2 [EVAL 0.0,PRIOR 1.0,]
+
+
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ForallTest.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ForallTest.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ForallTest.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,35 @@
+Existential check 1.0
+Eval Record info(1.0) for args L :
+AND{
+(0 at 10) : 1.0 dotAnd(-exists()) [EVAL 1.0,]
+(0 at 11) : 1.0 Test Forall 1 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(0 at 12) : 1.0 minAnd(dotAnd(-exists())Test Forall 1) [EVAL 1.0,]
+ (0 at 10) : 1.0 dotAnd(-exists()) [EVAL 1.0,]
+ (0 at 9) : 1.0 -exists() [EVAL 1.0,]
+ (0 at 11) : 1.0 Test Forall 1 [EVAL 0.0,PRIOR 1.0,]
+
+
+Existential check 0.0
+Eval Record info(1.0) for args L :
+AND{
+(0 at 10) : 0.0 dotAnd(-exists()) [EVAL 0.0,]
+(0 at 11) : 1.0 Test Forall 1 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(0 at 12) : 0.0 minAnd(dotAnd(-exists())Test Forall 1) [EVAL 0.0,]
+ (0 at 10) : 0.0 dotAnd(-exists()) [EVAL 0.0,]
+ (30 at 9) : 0.0 -exists() [EVAL 0.0,]
+ (31 at 1) : 0.0 -dotAnd(==(class,org.drools.chance.Message),Integer <(org.drools.chance.Message.status,2)) [EVAL 0.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,2) [EVAL 1.0,]
+ (32 at 1) : 0.0 -dotAnd(==(class,org.drools.chance.Message),Integer <(org.drools.chance.Message.status,2)) [EVAL 0.0,]
+ (32 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 7) : 1.0 Integer <(org.drools.chance.Message.status,2) [EVAL 1.0,]
+ (33 at 1) : 1.0 -dotAnd(==(class,org.drools.chance.Message),Integer <(org.drools.chance.Message.status,2)) [EVAL 1.0,]
+ (33 at 6) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 7) : 0.0 Integer <(org.drools.chance.Message.status,2) [EVAL 0.0,]
+ (0 at 11) : 1.0 Test Forall 1 [EVAL 0.0,PRIOR 1.0,]
+
+
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,36 @@
+
+
+ Tested couple M0 M0
+Simple Join check 0.0
+
+
+ Tested couple M1 M0
+Simple Join check 0.0
+
+
+ Tested couple M1 M1
+Simple Join check 0.0
+
+
+ Tested couple M0 M1
+Simple Join check 1.0
+
+
+ Tested couple M2 M1
+Simple Join check 0.0
+
+
+ Tested couple M2 M0
+Simple Join check 0.0
+
+
+ Tested couple M2 M2
+Simple Join check 0.0
+
+
+ Tested couple M1 M2
+Simple Join check 0.0
+
+
+ Tested couple M0 M2
+Simple Join check 0.0
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest1.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest1.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest1.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,60 @@
+M0 M0Self-Join check 0.0
+Eval Record info(1.0) for args L : Message 31
+AND{
+(31 at 10) : 0.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)))) [EVAL 0.0,]
+(31 at 11) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(31 at 12) : 0.0 minAnd(dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)))),Test Join 2) [EVAL 0.0,]
+ (31 at 10) : 0.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)))) [EVAL 0.0,]
+ (31 at 9) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m))) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 4) : 0.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 0.0,]
+ (31 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)) [EVAL 0.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 4) : 0.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 0.0,]
+ (31 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (31 at 11) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M1 M1Self-Join check 1.0
+Eval Record info(1.0) for args L : Message 32
+AND{
+(32 at 10) : 1.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)))) [EVAL 1.0,]
+(32 at 11) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(32 at 12) : 1.0 minAnd(dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)))),Test Join 2) [EVAL 1.0,]
+ (32 at 10) : 1.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)))) [EVAL 1.0,]
+ (32 at 9) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m))) [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 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 1.0,]
+ (32 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (32 at 11) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M2 M2Self-Join check 0.0
+Eval Record info(1.0) for args L : Message 33
+AND{
+(33 at 10) : 0.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)))) [EVAL 0.0,]
+(33 at 11) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(33 at 12) : 0.0 minAnd(dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)))),Test Join 2) [EVAL 0.0,]
+ (33 at 10) : 0.0 dotAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)))) [EVAL 0.0,]
+ (33 at 9) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m))) [EVAL 0.0,]
+ (33 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1)) [EVAL 0.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 4) : 0.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 0.0,]
+ (33 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,1),Object ==(org.drools.chance.Message.this,m)) [EVAL 0.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 4) : 0.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 0.0,]
+ (33 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (33 at 11) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest2.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest2.log (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/JoinTest2.log 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,198 @@
+M0 M0M0
+Self-Join check 1.0
+Eval Record info(1.0) for args L : Message 31
+AND{
+(31 at 12) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 1.0,]
+(31 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(31 at 14) : 1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))),Test Join 2) [EVAL 1.0,]
+ (31 at 12) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 1.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 7) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (31 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 11) : 1.0 Integer ==(org.drools.chance.Message.status,$s) [EVAL 1.0,]
+ (31 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M1 M1M0
+Self-Join check 0.0
+Eval Record info(1.0) for args L : Message 32 Message 31
+AND{
+(63 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+(63 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(63 at 14) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))),Test Join 2) [EVAL 0.0,]
+ (63 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 7) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (32 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (63 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (63 at 11) : 0.0 Integer ==(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (63 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M1 M1M1
+Self-Join check 1.0
+Eval Record info(1.0) for args L : Message 32
+AND{
+(32 at 12) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 1.0,]
+(32 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(32 at 14) : 1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))),Test Join 2) [EVAL 1.0,]
+ (32 at 12) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 1.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 7) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (32 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 11) : 1.0 Integer ==(org.drools.chance.Message.status,$s) [EVAL 1.0,]
+ (32 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M0 M0M1
+Self-Join check 0.0
+Eval Record info(1.0) for args L : Message 31 Message 32
+AND{
+(63 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+(63 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(63 at 14) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))),Test Join 2) [EVAL 0.0,]
+ (63 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 7) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (31 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (63 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (63 at 11) : 0.0 Integer ==(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (63 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M2 M2M1
+Self-Join check 0.0
+Eval Record info(1.0) for args L : Message 33 Message 32
+AND{
+(1 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+(1 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(1 at 14) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))),Test Join 2) [EVAL 0.0,]
+ (1 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+ (33 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 7) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (33 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (1 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (1 at 11) : 0.0 Integer ==(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (1 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M2 M2M0
+Self-Join check 0.0
+Eval Record info(1.0) for args L : Message 33 Message 31
+AND{
+(62 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+(62 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(62 at 14) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))),Test Join 2) [EVAL 0.0,]
+ (62 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+ (33 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 7) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (33 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (62 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (62 at 11) : 0.0 Integer ==(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (62 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M2 M2M2
+Self-Join check 1.0
+Eval Record info(1.0) for args L : Message 33
+AND{
+(33 at 12) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 1.0,]
+(33 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(33 at 14) : 1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))),Test Join 2) [EVAL 1.0,]
+ (33 at 12) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 1.0,]
+ (33 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 7) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (33 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (33 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s)) [EVAL 1.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (33 at 11) : 1.0 Integer ==(org.drools.chance.Message.status,$s) [EVAL 1.0,]
+ (33 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M1 M1M2
+Self-Join check 0.0
+Eval Record info(1.0) for args L : Message 32 Message 33
+AND{
+(1 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+(1 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(1 at 14) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))),Test Join 2) [EVAL 0.0,]
+ (1 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (32 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (32 at 7) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (32 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (1 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (1 at 11) : 0.0 Integer ==(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (1 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
+M0 M0M2
+Self-Join check 0.0
+Eval Record info(1.0) for args L : Message 31 Message 33
+AND{
+(62 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+(62 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+}
+
+(62 at 14) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))),Test Join 2) [EVAL 0.0,]
+ (62 at 12) : 0.0 dotAnd(dotAnd(==(class,org.drools.chance.Message)),dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)),dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s))) [EVAL 0.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),Integer >(org.drools.chance.Message.status,-1),Object ==(org.drools.chance.Message.this,m)) [EVAL 1.0,]
+ (31 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 7) : 1.0 Integer >(org.drools.chance.Message.status,-1) [EVAL 1.0,]
+ (31 at 8) : 1.0 Object ==(org.drools.chance.Message.this,m) [EVAL 1.0,]
+ (62 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,$s)) [EVAL 0.0,]
+ (33 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (62 at 11) : 0.0 Integer ==(org.drools.chance.Message.status,$s) [EVAL 0.0,]
+ (62 at 13) : 1.0 Test Join 2 [EVAL 0.0,PRIOR 1.0,]
+
+
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest.ruleml.xml
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest.ruleml.xml (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest.ruleml.xml 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<RuleML xmlns="http://www.ruleml.org/0.91/xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ruleml.org/0.91/xsd http://www.ruleml.org/0.91/xsd/naffologeq.xsd">
+ <oid>
+ <Data>org.drools.DRL</Data>
+ </oid>
+ <Assert>
+ <Rulebase>
+ <oid>
+ <Data>org.drools.chance</Data>
+ </oid>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.Message">Test Join.n</Var>
+ </declare>
+ <declare>
+ <Var type="org.drools.chance.Message">Test Join.m</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Test Join</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Test Join.m</Var>
+ </oid>
+ <Rel>Message</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind>status</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Number">0</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ <Atom>
+ <oid>
+ <Var>Test Join.n</Var>
+ </oid>
+ <Rel>Message</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind>status</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Number">1</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
+ <Atom>
+ <Rel/>
+ <Data>writer.write("\n\n Tested couple "+m.getMessage() + " " + n.getMessage() +"\n");
+ writer.write("Simple Join check "+drools.getConsequenceDegree()+"\n");
+ System.out.println("Existential check "+drools.getConsequenceDegree()+"\n");</Data>
+ </Atom>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ </Rulebase>
+ </Assert>
+</RuleML>
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest1.ruleml.xml
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest1.ruleml.xml (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest1.ruleml.xml 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<RuleML xmlns="http://www.ruleml.org/0.91/xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ruleml.org/0.91/xsd http://www.ruleml.org/0.91/xsd/naffologeq.xsd">
+ <oid>
+ <Data>org.drools.DRL</Data>
+ </oid>
+ <Assert>
+ <Rulebase>
+ <oid>
+ <Data>org.drools.chance</Data>
+ </oid>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.Message">Test Join 2.p</Var>
+ </declare>
+ <declare>
+ <Var type="org.drools.chance.Message">Test Join 2.m</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Test Join 2</Data>
+ </oid>
+ <body>
+ <And>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Test Join 2.m</Var>
+ </oid>
+ <Rel>Message</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind>status</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Number">1</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ <Atom>
+ <oid>
+ <Var>Test Join 2.p</Var>
+ </oid>
+ <Rel>Message</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
+ </Atom>
+ <Atom>
+ <!--unsupported attribute -
+<cut/>
+-->
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind>this</Ind>
+ <Var/>
+ </slot>
+ <Var>Test Join 2.m</Var>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind>status</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Number">1</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </And>
+ </body>
+ <head>
+ <Atom>
+ <Rel/>
+ <Data>writer.write(m.getMessage() + " " + p.getMessage());
+ writer.write("Self-Join check "+drools.getConsequenceDegree()+"\n"+drools.getEvaluation().expand()+"\n\n");
+ System.out.println("Existential check "+drools.getConsequenceDegree());
+ System.out.println(m.getMessage() + " " + p.getMessage());</Data>
+ </Atom>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ </Rulebase>
+ </Assert>
+</RuleML>
Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest2.ruleml.xml
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest2.ruleml.xml (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest2.ruleml.xml 2009-05-28 08:48:22 UTC (rev 26758)
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<RuleML xmlns="http://www.ruleml.org/0.91/xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ruleml.org/0.91/xsd http://www.ruleml.org/0.91/xsd/naffologeq.xsd">
+ <oid>
+ <Data>org.drools.DRL</Data>
+ </oid>
+ <Assert>
+ <Rulebase>
+ <oid>
+ <Data>org.drools.chance</Data>
+ </oid>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.Message">Test Join 2.q</Var>
+ </declare>
+ <declare>
+ <Var type="org.drools.chance.Message">Test Join 2.p</Var>
+ </declare>
+ <declare>
+ <Var type="int">Test Join 2.p.$s</Var>
+ </declare>
+ <declare>
+ <Var type="org.drools.chance.Message">Test Join 2.m</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Test Join 2</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Test Join 2.m</Var>
+ </oid>
+ <Rel>Message</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ <Atom>
+ <oid>
+ <Var>Test Join 2.p</Var>
+ </oid>
+ <Rel>Message</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
+ </Atom>
+ <Atom>
+ <!--unsupported attribute -
+<cut/>
+-->
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind>this</Ind>
+ <Var/>
+ </slot>
+ <Var>Test Join 2.m</Var>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>></Rel>
+ </op>
+ <slot>
+ <Ind>status</Ind>
+ <Var>Test Join 2.p.$s</Var>
+ </slot>
+ <Ind type="java.lang.Number">-1</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ <Atom>
+ <oid>
+ <Var>Test Join 2.q</Var>
+ </oid>
+ <Rel>Message</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind>status</Ind>
+ <Var/>
+ </slot>
+ <Var>Test Join 2.p.$s</Var>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
+ <Atom>
+ <Rel/>
+ <Data>writer.write(m.getMessage() + " " + p.getMessage() + q.getMessage() + "\n");
+ writer.write("Self-Join check "+drools.getConsequenceDegree()+"\n"+drools.getEvaluation().expand()+"\n\n");
+ System.out.println("Existential check "+drools.getConsequenceDegree());
+ System.out.println(m.getMessage() + " " + p.getMessage());</Data>
+ </Atom>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ </Rulebase>
+ </Assert>
+</RuleML>
More information about the jboss-svn-commits
mailing list