[jboss-svn-commits] JBL Code SVN: r26831 - in labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl: log and 4 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jun 4 14:59:50 EDT 2009
Author: dsotty
Date: 2009-06-04 14:59:50 -0400 (Thu, 04 Jun 2009)
New Revision: 26831
Modified:
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/.classpath
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/BaseTest.log
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ComplexFormulaTest.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/fuzzyTest/FuzzyTest0.java
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/RuleMLTest.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/src/main/rules/org/drools/chance/fuzzy/FuzzyTest1.drl
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/BaseTest.ruleml.xml
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
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/FuzzyTest1.ruleml.xml
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest.ruleml.xml
labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/RuleMLTest.ruleml.xml
Log:
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/.classpath
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/.classpath 2009-06-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/.classpath 2009-06-04 18:59:50 UTC (rev 26831)
@@ -1,10 +1,9 @@
-<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src/main/java"/>
- <classpathentry excluding="fuzzy/|impl/" kind="src" path="src/main/rules/org/drools/chance"/>
- <classpathentry kind="src" path="src/main/rules/org/drools/chance/fuzzy"/>
- <classpathentry kind="src" path="src/main/rules/org/drools/chance/impl"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
- <classpathentry kind="output" path="target/classes"/>
-</classpath>
+ <classpathentry kind="src" path="src/main/java"/>
+ <classpathentry kind="src" path="src/main/rules" excluding="**/*.java"/>
+ <classpathentry kind="src" path="src/test/java" output="target/test-classes"/>
+ <classpathentry kind="src" path="src/test/resources" output="target/test-classes" including="**" excluding="**/*.java"/>
+ <classpathentry kind="output" path="target/classes"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
+</classpath>
\ No newline at end of file
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/BaseTest.log
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/BaseTest.log 2009-06-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/BaseTest.log 2009-06-04 18:59:50 UTC (rev 26831)
@@ -0,0 +1,85 @@
+
+ A Message with status = 0 will hold the message Hello!
+
+Synched rule fires at 1.0
+Declared message is null but is thought to be Hello!
+Eval Record info(1.0) for args L : Message 31
+AND{
+(31 at 13) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),equals(org.drools.chance.Message.message,Hello!))) [EVAL 1.0,]
+(31 at 14) : 1.0 Synch [EVAL 0.0,PRIOR 1.0,]
+}
+
+(31 at 15) : 1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Message),equals(org.drools.chance.Message.message,Hello!))),Synch) [EVAL 1.0,]
+ (31 at 13) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Message),equals(org.drools.chance.Message.message,Hello!))) [EVAL 1.0,]
+ (31 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Message),equals(org.drools.chance.Message.message,Hello!)) [EVAL 1.0,]
+ (31 at 10) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
+ (31 at 11) : 1.0 equals(org.drools.chance.Message.message,Hello!) [Trigger 1.0,EVAL 0.0,]
+ (31 at 14) : 1.0 Synch [EVAL 0.0,PRIOR 1.0,]
+
+
+
+ Now stating Davide owns a Drools Manual
+
+
+Book has no a-priori known owner
+Book.owner = null
+but is ack'd as being davide(27)
+Info comes from rule, evaluation is 1.0
+
+Eval Record info(1.0) for args L : Person -1338851184 Book -1616370320
+AND{
+(798680544 at 24) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Person),String ==(org.drools.chance.Person.name,davide),or(Integer >(org.drools.chance.Person.age,25),Integer <(org.drools.chance.Person.age,18))),dotAnd(==(class,org.drools.chance.Book),equals(org.drools.chance.Book.owner,$p))) [EVAL 1.0,]
+(798680544 at 25) : 1.0 BetaSynch [EVAL 0.0,PRIOR 1.0,]
+}
+
+(798680544 at 26) : 1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Person),String ==(org.drools.chance.Person.name,davide),or(Integer >(org.drools.chance.Person.age,25),Integer <(org.drools.chance.Person.age,18))),dotAnd(==(class,org.drools.chance.Book),equals(org.drools.chance.Book.owner,$p))),BetaSynch) [EVAL 1.0,]
+ (798680544 at 24) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Person),String ==(org.drools.chance.Person.name,davide),or(Integer >(org.drools.chance.Person.age,25),Integer <(org.drools.chance.Person.age,18))),dotAnd(==(class,org.drools.chance.Book),equals(org.drools.chance.Book.owner,$p))) [EVAL 1.0,]
+ (-1338851184 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Person),String ==(org.drools.chance.Person.name,davide),or(Integer >(org.drools.chance.Person.age,25),Integer <(org.drools.chance.Person.age,18))) [EVAL 1.0,]
+ (-1338851184 at 17) : 1.0 ==(class,org.drools.chance.Person) [EVAL 1.0,]
+ (-1338851184 at 18) : 1.0 String ==(org.drools.chance.Person.name,davide) [EVAL 1.0,]
+ (-1338851184 at 19) : 1.0 or(Integer >(org.drools.chance.Person.age,25),Integer <(org.drools.chance.Person.age,18)) [EVAL 1.0,]
+ (798680544 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Book),equals(org.drools.chance.Book.owner,$p)) [EVAL 1.0,]
+ (-1616370320 at 22) : 1.0 ==(class,org.drools.chance.Book) [EVAL 1.0,]
+ (798680544 at 23) : 1.0 equals(org.drools.chance.Book.owner,$p) [Synch 1.0,EVAL 0.0,]
+ (798680544 at 25) : 1.0 BetaSynch [EVAL 0.0,PRIOR 1.0,]
+
+
+
+So, an exceptional exercise will be done
+
+
+Ex Algebra can be done? Answer is 0.0Eval Record info(0.75) for args L : Exercise 748374823
+AND{
+(748374823 at 30) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Exercise))) [EVAL 1.0,]
+(748374823 at 31) : 0.0 Exceptional [EVAL 0.0,PRIOR 0.0,]
+}
+
+(748374823 at 32) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Exercise))),Exceptional) [EVAL 0.0,]
+ (748374823 at 30) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Exercise))) [EVAL 1.0,]
+ (748374823 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Exercise)) [EVAL 1.0,]
+ (748374823 at 28) : 1.0 ==(class,org.drools.chance.Exercise) [EVAL 1.0,]
+ (748374823 at 31) : 0.0 Exceptional [EVAL 0.0,PRIOR 0.0,]
+
+Ex Norse Grammar can be done? Answer is 0.0Eval Record info(0.75) for args L : Exercise -69566135
+AND{
+(-69566135 at 30) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Exercise))) [EVAL 1.0,]
+(-69566135 at 31) : 0.0 Exceptional [EVAL 0.0,PRIOR 0.0,]
+}
+
+(-69566135 at 32) : 0.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Exercise))),Exceptional) [EVAL 0.0,]
+ (-69566135 at 30) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Exercise))) [EVAL 1.0,]
+ (-69566135 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Exercise)) [EVAL 1.0,]
+ (-69566135 at 28) : 1.0 ==(class,org.drools.chance.Exercise) [EVAL 1.0,]
+ (-69566135 at 31) : 0.0 Exceptional [EVAL 0.0,PRIOR 0.0,]
+
+Ex Rule Programming can be done? Answer is 1.0Eval Record info(1.0) for args L : Exercise 1260975572
+AND{
+(1260975572 at 30) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Exercise))) [EVAL 1.0,]
+(1260975572 at 31) : 1.0 Exceptional [BetaSynch 1.0,EVAL 0.0,PRIOR 0.0,]
+}
+
+(1260975572 at 32) : 1.0 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.Exercise))),Exceptional) [EVAL 1.0,]
+ (1260975572 at 30) : 1.0 dotAnd(dotAnd(==(class,org.drools.chance.Exercise))) [EVAL 1.0,]
+ (1260975572 at 1) : 1.0 dotAnd(==(class,org.drools.chance.Exercise)) [EVAL 1.0,]
+ (1260975572 at 28) : 1.0 ==(class,org.drools.chance.Exercise) [EVAL 1.0,]
+ (1260975572 at 31) : 1.0 Exceptional [BetaSynch 1.0,EVAL 0.0,PRIOR 0.0,]
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-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/ComplexFormulaTest.log 2009-06-04 18:59:50 UTC (rev 26831)
@@ -1,27 +1,27 @@
Degrees test Eval Record info(1.0) for args L : Message 1
AND{
-(1 at 25) : 0.048865642 dotAnd(maxOr(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-dotAnd(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))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5))) [EVAL 0.048865642,]
+(1 at 25) : 0.011013344 dotAnd(maxOr(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-dotAnd(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))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5))) [EVAL 0.011013344,]
(1 at 26) : 1.0 TestOpDegs [EVAL 0.0,PRIOR 1.0,]
}
-(1 at 27) : 0.048865642 minAnd(dotAnd(maxOr(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-dotAnd(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))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5))),TestOpDegs) [EVAL 0.048865642,]
- (1 at 25) : 0.048865642 dotAnd(maxOr(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-dotAnd(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))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5))) [EVAL 0.048865642,]
- (1 at 11) : 0.2999273 maxOr(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))) [EVAL 0.2999273,]
+(1 at 27) : 0.011013344 minAnd(dotAnd(maxOr(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-dotAnd(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))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5))),TestOpDegs) [EVAL 0.011013344,]
+ (1 at 25) : 0.011013344 dotAnd(maxOr(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))),-dotAnd(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))),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5))) [EVAL 0.011013344,]
+ (1 at 11) : 0.025366712 maxOr(dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0),Integer ==(org.drools.chance.Message.status,1)),dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2))) [EVAL 0.025366712,]
(1 at 1) : 0.0 dotAnd(==(class,org.drools.chance.Message),Integer ==(org.drools.chance.Message.status,0),Integer ==(org.drools.chance.Message.status,1)) [EVAL 0.0,]
(1 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
(1 at 4) : 1.0 Integer ==(org.drools.chance.Message.status,0) [EVAL 1.0,]
(1 at 5) : 0.0 Integer ==(org.drools.chance.Message.status,1) [EVAL 0.0,]
- (1 at 1) : 0.2999273 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2)) [EVAL 0.2999273,]
+ (1 at 1) : 0.025366712 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,2)) [EVAL 0.025366712,]
(1 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (1 at 9) : 0.2999273 random(org.drools.chance.Message.status,2) [EVAL 0.2999273,]
- (1 at 20) : 0.21129096 -dotAnd(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.21129096,]
- (1 at 1) : 0.9881322 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)) [EVAL 0.9881322,]
+ (1 at 9) : 0.025366712 random(org.drools.chance.Message.status,2) [EVAL 0.025366712,]
+ (1 at 20) : 0.865045 -dotAnd(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.865045,]
+ (1 at 1) : 0.23653376 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,3)) [EVAL 0.23653376,]
(1 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (1 at 14) : 0.9881322 random(org.drools.chance.Message.status,3) [EVAL 0.9881322,]
- (1 at 1) : 0.7981817 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4)) [EVAL 0.7981817,]
+ (1 at 14) : 0.23653376 random(org.drools.chance.Message.status,3) [EVAL 0.23653376,]
+ (1 at 1) : 0.5705527 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,4)) [EVAL 0.5705527,]
(1 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (1 at 18) : 0.7981817 random(org.drools.chance.Message.status,4) [EVAL 0.7981817,]
- (1 at 1) : 0.7710929 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5)) [EVAL 0.7710929,]
+ (1 at 18) : 0.5705527 random(org.drools.chance.Message.status,4) [EVAL 0.5705527,]
+ (1 at 1) : 0.501899 dotAnd(==(class,org.drools.chance.Message),random(org.drools.chance.Message.status,5)) [EVAL 0.501899,]
(1 at 3) : 1.0 ==(class,org.drools.chance.Message) [EVAL 1.0,]
- (1 at 23) : 0.7710929 random(org.drools.chance.Message.status,5) [EVAL 0.7710929,]
+ (1 at 23) : 0.501899 random(org.drools.chance.Message.status,5) [EVAL 0.501899,]
(1 at 26) : 1.0 TestOpDegs [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-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/FuzzyTest0.log 2009-06-04 18:59:50 UTC (rev 26831)
@@ -9,8 +9,49 @@
Room is warm in degree 0.25
+Room is warm in degree Eval Record info(1.0) for args L : Room 47
+AND{
+(47 at 21) : 0.25 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),seems(org.drools.chance.fuzzyTest.Room.temperature,warm))) [EVAL 0.25,]
+(47 at 22) : 1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
+}
+
+(47 at 23) : 0.25 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),seems(org.drools.chance.fuzzyTest.Room.temperature,warm))),Hot v3 (Warm)) [EVAL 0.25,]
+ (47 at 21) : 0.25 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),seems(org.drools.chance.fuzzyTest.Room.temperature,warm))) [EVAL 0.25,]
+ (47 at 1) : 0.25 dotAnd(==(class,org.drools.chance.fuzzyTest.Room),seems(org.drools.chance.fuzzyTest.Room.temperature,warm)) [EVAL 0.25,]
+ (47 at 3) : 1.0 ==(class,org.drools.chance.fuzzyTest.Room) [EVAL 1.0,]
+ (47 at 18) : 0.25 seems(org.drools.chance.fuzzyTest.Room.temperature,warm) [EVAL 0.25,]
+ (47 at 22) : 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.13
+Room is warm in degree Eval Record info(1.0) for args L : Room 47
+AND{
+(47 at 21) : 0.13 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),seems(org.drools.chance.fuzzyTest.Room.temperature,warm))) [EVAL 0.13,]
+(47 at 22) : 1.0 Hot v3 (Warm) [EVAL 0.0,PRIOR 1.0,]
+}
+
+(47 at 23) : 0.13 minAnd(dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),seems(org.drools.chance.fuzzyTest.Room.temperature,warm))),Hot v3 (Warm)) [EVAL 0.13,]
+ (47 at 21) : 0.13 dotAnd(dotAnd(==(class,org.drools.chance.fuzzyTest.Room),seems(org.drools.chance.fuzzyTest.Room.temperature,warm))) [EVAL 0.13,]
+ (47 at 1) : 0.13 dotAnd(==(class,org.drools.chance.fuzzyTest.Room),seems(org.drools.chance.fuzzyTest.Room.temperature,warm)) [EVAL 0.13,]
+ (47 at 3) : 1.0 ==(class,org.drools.chance.fuzzyTest.Room) [EVAL 1.0,]
+ (47 at 18) : 0.13 seems(org.drools.chance.fuzzyTest.Room.temperature,warm) [EVAL 0.13,]
+ (47 at 22) : 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/fuzzyTest/FuzzyTest0.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/fuzzyTest/FuzzyTest0.java 2009-06-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/fuzzyTest/FuzzyTest0.java 2009-06-04 18:59:50 UTC (rev 26831)
@@ -1,6 +1,7 @@
package org.drools.chance.fuzzyTest;
import org.drools.chance.AbstractChanceTest;
+import org.drools.runtime.rule.FactHandle;
public class FuzzyTest0 extends AbstractChanceTest {
@@ -11,8 +12,19 @@
public void act() {
Room r = new Room(27.5f);
+ FactHandle handle = getSession().insert(r);
+ getSession().fireAllRules();
+
+ getSession().retract(handle);
+
+ r.setTemperature(11.3);
+
getSession().insert(r);
getSession().fireAllRules();
+
+
+ getSession().insert(new Double(37.0));
+ getSession().fireAllRules();
}
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/RuleMLTest.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/RuleMLTest.drl 2009-06-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/RuleMLTest.drl 2009-06-04 18:59:50 UTC (rev 26831)
@@ -1,42 +1,45 @@
-package org.drools.chance;
-
-import java.io.FileWriter;
-
-
-global FileWriter writer;
-
-
-declare Message
- status : int @key
- message : String
-end
-
-rule "RuleId"
- prior ( 0.7 )
-
- when
- $m : Message(
- $s : status
- == @(id="idBndOp" prior="0.4" args="tolerance(0.1)" kind="b" cut="true")
- 0
- ||
- (
- message
- == @(id="idFreeOp" prior="0.4" kind="a" cut="true" )
- "Hello"
- &&
- $msg : message
- )
- ) @(id="idCls" prior="0.1" args="z" kind="Prod" cut="true")
-
-
- or @(id="idCE" prior="0.4" kind="Max" cut="true")
-
- Message(
- $sjoin : status > $s
- ) @(id="idCls2" prior="0.4" kind="Lukas" cut="true")
- then
- System.out.println();
-end
-
-
+package org.drools.chance;
+
+
+import java.io.FileWriter;
+
+
+declare Message
+ status : int @key
+ message : String
+end
+
+
+global FileWriter writer;
+
+
+
+rule "Test"
+
+ when
+ (
+ $msg : Message( $stat: status == 0 && status == 1 )
+ or
+ (
+ Message(status ~random && (message random || status random))
+ and
+ Message(status ~random )
+ )
+ )
+
+
+ not (Message(status ~random )
+ and
+ Message(status ~random )
+ )
+
+ Message( $sjust : status )
+
+ Message( status > $stat )
+
+ Message( status == status , status > $msg.status )
+
+
+ then
+ System.out.println();
+end
\ No newline at end of file
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-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/fuzzy/FuzzyTest0.drl 2009-06-04 18:59:50 UTC (rev 26831)
@@ -8,6 +8,7 @@
global FileWriter writer;
+
rule "Hot v1"
when
$r : Room( temperature ~hot )
@@ -18,6 +19,7 @@
writer.write("Evaluator is called directly\n");
end
+
rule "Hot v2"
when
$r : Room( temperature ~seems hot )
@@ -28,16 +30,20 @@
writer.write("Evaluator from temp domain, requires a method in Room\n");
end
+
rule "Hot v3 (Warm)"
when
- $r : Room( temperature ~seems "warm" )
+ $r : Room( temperature ~seems "warm" && temperature ~seems "hot")
then
writer.write("\n\n");
writer.write("Room is warm in degree "+drools.getConsequenceDegree()+"\n");
+ writer.write("Room is warm in degree "+drools.getEvaluation().expand()+"\n");
writer.write("Evaluator from temp domain, runtime call (no method in room)\n");
end
+
+
rule "Hot v4"
when
$r : Room( hot ~evaluates temperature )
@@ -47,6 +53,3 @@
writer.write("Room is hot in degree "+drools.getConsequenceDegree()+"\n");
writer.write("Room returns Evaluator via getHot(), which is dynamically called on temp.");
end
-
-
-
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/fuzzy/FuzzyTest1.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/fuzzy/FuzzyTest1.drl 2009-06-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/fuzzy/FuzzyTest1.drl 2009-06-04 18:59:50 UTC (rev 26831)
@@ -12,7 +12,7 @@
rule "Cold"
when
- $r : Room( temperature ~cold )
+ $r : Room( temperature ~cold)
then
drools.inject(new Fan(),"org.drools.chance.fuzzyTest.Fan.speed","seems","stop");
end
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/BaseTest.ruleml.xml
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/BaseTest.ruleml.xml 2009-06-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/BaseTest.ruleml.xml 2009-06-04 18:59:50 UTC (rev 26831)
@@ -6,57 +6,137 @@
<Assert>
<Rulebase>
<oid>
- <Data>defaultpkg</Data>
+ <Data>org.drools.chance</Data>
</oid>
<Forall>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Trigger</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <op>
+ <Rel>eval</Rel>
+ </op>
+ <Expr in="yes">
+ <Fun>eval</Fun>
+ <Data>true || false</Data>
+ </Expr>
+ </Atom>
+ </And>
+ </body>
+ <head>
+ <Atom>
+ <Rel/>
+ <Data>writer.write("\n A Message with status = 0 will hold the message Hello!");
+ Message m = new Message();
+ m.setStatus(0);
+
+ drools.inject(m,"org.drools.chance.Message.message","equals","Hello!",true);</Data>
+ </Atom>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ <Forall>
<declare>
- <Var type="defaultpkg.Message">Test Join.n</Var>
+ <Var type="org.drools.chance.Message">Synch.$msgRef</Var>
</declare>
- <declare>
- <Var type="defaultpkg.Message">Test Join.m</Var>
- </declare>
<formula>
<Implies direction="forward">
<oid>
- <Data>Test Join</Data>
+ <Data>Synch</Data>
</oid>
<body>
<And>
<Atom>
<oid>
- <Var>Test Join.m</Var>
+ <Var>Synch.$msgRef</Var>
</oid>
<Rel>Message</Rel>
<Reify>
<And>
<Atom>
+ <oid>
+ <Data>MsgId</Data>
+ </oid>
<op>
<Rel>isA</Rel>
</op>
<slot>
- <Ind>class</Ind>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
- <Ind type="java.lang.Class">defaultpkg.Message</Ind>
+ <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
</Atom>
<Atom>
<op>
- <Rel>==</Rel>
+ <Rel>equals</Rel>
</op>
<slot>
- <Ind>status</Ind>
+ <Ind type="String">message</Ind>
<Var/>
</slot>
- <Ind type="java.lang.Number">0</Ind>
+ <Ind type="java.lang.String">Hello!</Ind>
</Atom>
</And>
</Reify>
</Atom>
+ </And>
+ </body>
+ <head>
+ <Atom>
+ <Rel/>
+ <Data>writer.write("\n\nSynched rule fires at "+drools.getConsequenceDegree());
+ writer.write("\nDeclared message is "+$msgRef.getMessage()+ " but is thought to be Hello!");
+ writer.write("\n"+drools.getEvaluation().expand()+"\n\n");
+
+
+ Person p = new Person();
+ p.setName("davide");
+ //p.setAge(27);
+
+
+ Book b = new Book();
+ b.setTitle("Drools Manual");
+ //b.setOwner(p);
+ writer.write("\n Now stating Davide owns a Drools Manual");
+
+ //FIXME Until lexical analysis is done properly, args must be defined in two steps
+ Object[] args = new Object[] { p , b };
+ drools.inject(args,"org.drools.chance.Book.owner","equals","$p");</Data>
+ </Atom>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.Book">BetaSynch.$b</Var>
+ </declare>
+ <declare>
+ <Var type="int">BetaSynch.$p.$a</Var>
+ </declare>
+ <declare>
+ <Var type="java.lang.String">BetaSynch.$p.$n</Var>
+ </declare>
+ <declare>
+ <Var type="org.drools.chance.Person">BetaSynch.$p</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>BetaSynch</Data>
+ </oid>
+ <body>
+ <And>
<Atom>
<oid>
- <Var>Test Join.n</Var>
+ <Var>BetaSynch.$p</Var>
</oid>
- <Rel>Message</Rel>
+ <Rel>Person</Rel>
<Reify>
<And>
<Atom>
@@ -64,21 +144,73 @@
<Rel>isA</Rel>
</op>
<slot>
- <Ind>class</Ind>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
- <Ind type="java.lang.Class">defaultpkg.Message</Ind>
+ <Ind type="java.lang.Class">org.drools.chance.Person</Ind>
</Atom>
<Atom>
<op>
<Rel>==</Rel>
</op>
<slot>
- <Ind>status</Ind>
+ <Ind type="String">name</Ind>
+ <Var>BetaSynch.$p.$n</Var>
+ </slot>
+ <Ind type="java.lang.String">davide</Ind>
+ </Atom>
+ <Or>
+ <Atom>
+ <op>
+ <Rel>></Rel>
+ </op>
+ <slot>
+ <Ind type="int">age</Ind>
+ <Var>BetaSynch.$p.$a</Var>
+ </slot>
+ <Ind type="java.lang.Number">25</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel><</Rel>
+ </op>
+ <slot>
+ <Ind type="int">age</Ind>
+ <Var>BetaSynch.$p.$a</Var>
+ </slot>
+ <Ind type="java.lang.Number">18</Ind>
+ </Atom>
+ </Or>
+ </And>
+ </Reify>
+ </Atom>
+ <Atom>
+ <oid>
+ <Var>BetaSynch.$b</Var>
+ </oid>
+ <Rel>Book</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
- <Ind type="java.lang.Number">1</Ind>
+ <Ind type="java.lang.Class">org.drools.chance.Book</Ind>
</Atom>
+ <Atom>
+ <op>
+ <Rel>equals</Rel>
+ </op>
+ <slot>
+ <Ind type="Person">owner</Ind>
+ <Var/>
+ </slot>
+ <Var>BetaSynch.$p</Var>
+ </Atom>
</And>
</Reify>
</Atom>
@@ -87,14 +219,83 @@
<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>
+ <Data>writer.write("\n\n\nBook has no a-priori known owner\n");
+ writer.write("Book.owner = "+$b.getOwner()+"\n");
+ writer.write("but is ack'd as being "+$n+"("+$a+")\n");
+ writer.write("Info comes from rule, evaluation is "+drools.getConsequenceDegree()+"\n");
+ writer.write("\n"+drools.getEvaluation().expand()+"\n");
+
+
+
+ writer.write("\n\nSo, an exceptional exercise will be done\n\n");
+ Exercise e = new Exercise();
+ e.setTopic("Rule Programming");
+ drools.inject(e,"Exceptional");</Data>
</Atom>
</head>
</Implies>
</formula>
</Forall>
+ <Forall>
+ <declare>
+ <Var type="java.lang.String">Exceptional.$e.$t</Var>
+ </declare>
+ <declare>
+ <Var type="org.drools.chance.Exercise">Exceptional.$e</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Exceptional</Data>
+ </oid>
+ <!--
+<degree>
+ <Data>(0)</Data>
+</degree>
+-->
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Exceptional.$e</Var>
+ </oid>
+ <Rel>Exercise</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.Exercise</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel/>
+ </op>
+ <slot>
+ <Ind type="String">topic</Ind>
+ <Var>Exceptional.$e.$t</Var>
+ </slot>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
+ <Atom>
+ <Rel/>
+ <Data>writer.write("\nEx "+ $t +" can be done? Answer is " + drools.getConsequenceDegree());
+ writer.write(drools.getEvaluation().expand());</Data>
+ </Atom>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
</Rulebase>
</Assert>
</RuleML>
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-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/ComplexFormulaTest.ruleml.xml 2009-06-04 18:59:50 UTC (rev 26831)
@@ -10,19 +10,19 @@
</oid>
<Forall>
<declare>
- <Var type="org.drools.chance.Message">TestOpDegs.Message_1</Var>
+ <Var type="org.drools.chance.Message">TestOpDegs.$message_1</Var>
</declare>
<declare>
- <Var type="org.drools.chance.Message">TestOpDegs.Message_3</Var>
+ <Var type="org.drools.chance.Message">TestOpDegs.$message_3</Var>
</declare>
<declare>
- <Var type="org.drools.chance.Message">TestOpDegs.Message_2</Var>
+ <Var type="org.drools.chance.Message">TestOpDegs.$message</Var>
</declare>
<declare>
- <Var type="org.drools.chance.Message">TestOpDegs.Message_4</Var>
+ <Var type="org.drools.chance.Message">TestOpDegs.$message_4</Var>
</declare>
<declare>
- <Var type="org.drools.chance.Message">TestOpDegs.Message</Var>
+ <Var type="org.drools.chance.Message">TestOpDegs.$message_2</Var>
</declare>
<formula>
<Implies direction="forward">
@@ -34,7 +34,7 @@
<Or>
<Atom>
<oid>
- <Var>TestOpDegs.Message</Var>
+ <Var>TestOpDegs.$message</Var>
</oid>
<Rel>Message</Rel>
<Reify>
@@ -74,7 +74,7 @@
</Atom>
<Atom>
<oid>
- <Var>TestOpDegs.Message_1</Var>
+ <Var>TestOpDegs.$message_1</Var>
</oid>
<Rel>Message</Rel>
<Reify>
@@ -109,7 +109,7 @@
<And>
<Atom>
<oid>
- <Var>TestOpDegs.Message_2</Var>
+ <Var>TestOpDegs.$message_2</Var>
</oid>
<Rel>Message</Rel>
<Reify>
@@ -139,7 +139,7 @@
</Atom>
<Atom>
<oid>
- <Var>TestOpDegs.Message_3</Var>
+ <Var>TestOpDegs.$message_3</Var>
</oid>
<Rel>Message</Rel>
<Reify>
@@ -171,7 +171,7 @@
</Neg>
<Atom>
<oid>
- <Var>TestOpDegs.Message_4</Var>
+ <Var>TestOpDegs.$message_4</Var>
</oid>
<Rel>Message</Rel>
<Reify>
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-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/FuzzyTest0.ruleml.xml 2009-06-04 18:59:50 UTC (rev 26831)
@@ -31,7 +31,7 @@
<Rel>isA</Rel>
</op>
<slot>
- <Ind>class</Ind>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
<Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
@@ -41,7 +41,7 @@
<Rel>hot</Rel>
</op>
<slot>
- <Ind>temperature</Ind>
+ <Ind type="java.lang.Object">temperature</Ind>
<Var/>
</slot>
</Atom>
@@ -84,7 +84,7 @@
<Rel>isA</Rel>
</op>
<slot>
- <Ind>class</Ind>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
<Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
@@ -94,7 +94,7 @@
<Rel>seems</Rel>
</op>
<slot>
- <Ind>temperature</Ind>
+ <Ind type="java.lang.Object">temperature</Ind>
<Var/>
</slot>
<Expr>
@@ -141,7 +141,7 @@
<Rel>isA</Rel>
</op>
<slot>
- <Ind>class</Ind>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
<Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
@@ -151,11 +151,21 @@
<Rel>seems</Rel>
</op>
<slot>
- <Ind>temperature</Ind>
+ <Ind type="java.lang.Object">temperature</Ind>
<Var/>
</slot>
<Ind type="java.lang.String">warm</Ind>
</Atom>
+ <Atom>
+ <op>
+ <Rel>seems</Rel>
+ </op>
+ <slot>
+ <Ind type="java.lang.Object">temperature</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.String">hot</Ind>
+ </Atom>
</And>
</Reify>
</Atom>
@@ -166,6 +176,7 @@
<Rel/>
<Data>writer.write("\n\n");
writer.write("Room is warm in degree "+drools.getConsequenceDegree()+"\n");
+ writer.write("Room is warm in degree "+drools.getEvaluation().expand()+"\n");
writer.write("Evaluator from temp domain, runtime call (no method in room)\n");</Data>
</Atom>
</head>
@@ -195,7 +206,7 @@
<Rel>isA</Rel>
</op>
<slot>
- <Ind>class</Ind>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
<Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
@@ -205,7 +216,7 @@
<Rel>evaluates</Rel>
</op>
<slot>
- <Ind>hot</Ind>
+ <Ind type="java.lang.Object">hot</Ind>
<Var/>
</slot>
<Expr>
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/FuzzyTest1.ruleml.xml
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/FuzzyTest1.ruleml.xml 2009-06-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/FuzzyTest1.ruleml.xml 2009-06-04 18:59:50 UTC (rev 26831)
@@ -1,239 +1,325 @@
<?xml version="1.0" encoding="UTF-8"?>
-<RuleML 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">
+<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>org.drools.examples.chance</oid>
- <Implies direction="forward">
- <oid>Cold</oid>
- <body>
- <And>
- <op>
+ <Rulebase>
+ <oid>
+ <Data>org.drools.examples.chance</Data>
+ </oid>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.fuzzyTest.Room">Cold.$r</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Cold</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Cold.$r</Var>
+ </oid>
+ <Rel>Room</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>cold</Rel>
+ </op>
+ <slot>
+ <Ind>temperature</Ind>
+ <Var/>
+ </slot>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
<Atom>
- <Var>Cold.$r</Var>
+ <Rel/>
+ <Data>drools.inject(new Fan(),"org.drools.chance.fuzzyTest.Fan.speed","seems","stop");</Data>
</Atom>
- </op>
- </And>
- </body>
- <head/>
- </Implies>
- <Implies direction="forward">
- <oid>Warm</oid>
- <body>
- <And>
- <op>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.fuzzyTest.Room">Warm.$r</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Warm</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Warm.$r</Var>
+ </oid>
+ <Rel>Room</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>warm</Rel>
+ </op>
+ <slot>
+ <Ind>temperature</Ind>
+ <Var/>
+ </slot>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
<Atom>
- <Var>Warm.$r</Var>
+ <Rel/>
+ <Data>drools.inject(new Fan(),"org.drools.chance.fuzzyTest.Fan.speed","seems","slow");</Data>
</Atom>
- </op>
- </And>
- </body>
- <head/>
- </Implies>
- <Implies direction="forward">
- <oid>Hot</oid>
- <body>
- <And>
- <op>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.fuzzyTest.Room">Hot.$r</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Hot</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Hot.$r</Var>
+ </oid>
+ <Rel>Room</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Room</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>hot</Rel>
+ </op>
+ <slot>
+ <Ind>temperature</Ind>
+ <Var/>
+ </slot>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
<Atom>
- <Var>Hot.$r</Var>
+ <Rel/>
+ <Data>drools.inject(new Fan(),"org.drools.chance.fuzzyTest.Fan.speed","seems","fast");</Data>
</Atom>
- </op>
- </And>
- </body>
- <head/>
- </Implies>
- <Implies direction="forward">
- <oid>Fan1</oid>
- <body>
- <And>
- <op>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.fuzzyTest.Fan">Fan1.$f</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Fan1</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Fan1.$f</Var>
+ </oid>
+ <Rel>Fan</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Fan</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>seems</Rel>
+ </op>
+ <slot>
+ <Ind>speed</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.String">fast</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
<Atom>
- <Var>Fan1.$f</Var>
+ <Rel/>
+ <Data>$f.setSpeed("fast",drools.getConsequenceDegree());
+ writer.write("\n\n ********** Set speed to fast ****** \n\n" + drools.getConsequenceDegree());</Data>
</Atom>
- </op>
- </And>
- </body>
- <head/>
- </Implies>
- <Implies direction="forward">
- <oid>Fan2</oid>
- <body>
- <And>
- <op>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.fuzzyTest.Fan">Fan2.$f</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Fan2</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Fan2.$f</Var>
+ </oid>
+ <Rel>Fan</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Fan</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>seems</Rel>
+ </op>
+ <slot>
+ <Ind>speed</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.String">slow</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
<Atom>
- <Var>Fan2.$f</Var>
+ <Rel/>
+ <Data>$f.setSpeed("slow",drools.getConsequenceDegree());
+ writer.write("\n\n ********** Set speed to slow ****** \n\n" + drools.getConsequenceDegree());</Data>
</Atom>
- </op>
- </And>
- </body>
- <head/>
- </Implies>
- <Implies direction="forward">
- <oid>Fan3</oid>
- <body>
- <And>
- <op>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ <Forall>
+ <declare>
+ <Var type="org.drools.chance.fuzzyTest.Fan">Fan3.$f</Var>
+ </declare>
+ <formula>
+ <Implies direction="forward">
+ <oid>
+ <Data>Fan3</Data>
+ </oid>
+ <body>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Fan3.$f</Var>
+ </oid>
+ <Rel>Fan</Rel>
+ <Reify>
+ <And>
+ <Atom>
+ <op>
+ <Rel>isA</Rel>
+ </op>
+ <slot>
+ <Ind>class</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Class">org.drools.chance.fuzzyTest.Fan</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>seems</Rel>
+ </op>
+ <slot>
+ <Ind>speed</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.String">stop</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </body>
+ <head>
<Atom>
- <Var>Fan3.$f</Var>
+ <Rel/>
+ <Data>$f.setSpeed("stop",drools.getConsequenceDegree());
+ writer.write("\n\n ********** Set speed to stop ****** \n\n" + drools.getConsequenceDegree());</Data>
</Atom>
- </op>
- </And>
- </body>
- <head/>
- </Implies>
- <Equals>
- <lhs>
- <Var>Fan3.$f</Var>
- </lhs>
- <rhs>
- <Reify>
- <Atom>
- <Rel>Fan</Rel>
- <Reify>
- <And>
- <Atom>
- <op>
- <Rel>seems</Rel>
- </op>
- <slot>
- <Ind>speed</Ind>
- <Var>Fan3.$f</Var>
- </slot>
- <Data xsi:type="xs:string">stop</Data>
- </Atom>
- </And>
- </Reify>
- </Atom>
- </Reify>
- </rhs>
- </Equals>
- <Equals>
- <lhs>
- <Var>Fan1.$f</Var>
- </lhs>
- <rhs>
- <Reify>
- <Atom>
- <Rel>Fan</Rel>
- <Reify>
- <And>
- <Atom>
- <op>
- <Rel>seems</Rel>
- </op>
- <slot>
- <Ind>speed</Ind>
- <Var>Fan1.$f</Var>
- </slot>
- <Data xsi:type="xs:string">fast</Data>
- </Atom>
- </And>
- </Reify>
- </Atom>
- </Reify>
- </rhs>
- </Equals>
- <Equals>
- <lhs>
- <Var>Warm.$r</Var>
- </lhs>
- <rhs>
- <Reify>
- <Atom>
- <Rel>Room</Rel>
- <Reify>
- <And>
- <Atom>
- <op>
- <Rel>warm</Rel>
- </op>
- <slot>
- <Ind>temperature</Ind>
- <Var>Warm.$r</Var>
- </slot>
- </Atom>
- </And>
- </Reify>
- </Atom>
- </Reify>
- </rhs>
- </Equals>
- <Equals>
- <lhs>
- <Var>Hot.$r</Var>
- </lhs>
- <rhs>
- <Reify>
- <Atom>
- <Rel>Room</Rel>
- <Reify>
- <And>
- <Atom>
- <op>
- <Rel>hot</Rel>
- </op>
- <slot>
- <Ind>temperature</Ind>
- <Var>Hot.$r</Var>
- </slot>
- </Atom>
- </And>
- </Reify>
- </Atom>
- </Reify>
- </rhs>
- </Equals>
- <Equals>
- <lhs>
- <Var>Fan2.$f</Var>
- </lhs>
- <rhs>
- <Reify>
- <Atom>
- <Rel>Fan</Rel>
- <Reify>
- <And>
- <Atom>
- <op>
- <Rel>seems</Rel>
- </op>
- <slot>
- <Ind>speed</Ind>
- <Var>Fan2.$f</Var>
- </slot>
- <Data xsi:type="xs:string">slow</Data>
- </Atom>
- </And>
- </Reify>
- </Atom>
- </Reify>
- </rhs>
- </Equals>
- <Equals>
- <lhs>
- <Var>Cold.$r</Var>
- </lhs>
- <rhs>
- <Reify>
- <Atom>
- <Rel>Room</Rel>
- <Reify>
- <And>
- <Atom>
- <op>
- <Rel>cold</Rel>
- </op>
- <slot>
- <Ind>temperature</Ind>
- <Var>Cold.$r</Var>
- </slot>
- </Atom>
- </And>
- </Reify>
- </Atom>
- </Reify>
- </rhs>
- </Equals>
- </RuleBase>
+ </head>
+ </Implies>
+ </formula>
+ </Forall>
+ </Rulebase>
</Assert>
</RuleML>
Modified: 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 2009-06-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/JoinTest.ruleml.xml 2009-06-04 18:59:50 UTC (rev 26831)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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>
@@ -34,7 +34,7 @@
<Rel>isA</Rel>
</op>
<slot>
- <Ind>class</Ind>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
<Ind type="java.lang.Class">org.drools.chance.Message</Ind>
@@ -44,7 +44,7 @@
<Rel>==</Rel>
</op>
<slot>
- <Ind>status</Ind>
+ <Ind type="int">status</Ind>
<Var/>
</slot>
<Ind type="java.lang.Number">0</Ind>
@@ -64,7 +64,7 @@
<Rel>isA</Rel>
</op>
<slot>
- <Ind>class</Ind>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
<Ind type="java.lang.Class">org.drools.chance.Message</Ind>
@@ -74,7 +74,7 @@
<Rel>==</Rel>
</op>
<slot>
- <Ind>status</Ind>
+ <Ind type="int">status</Ind>
<Var/>
</slot>
<Ind type="java.lang.Number">1</Ind>
Modified: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/RuleMLTest.ruleml.xml
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/RuleMLTest.ruleml.xml 2009-06-04 18:57:50 UTC (rev 26830)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/RuleMLTest.ruleml.xml 2009-06-04 18:59:50 UTC (rev 26831)
@@ -1,5 +1,5 @@
<?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://ibis.in.tum.de/research/ReactionRuleML/0.2/rr.xsd>
+<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>
@@ -10,187 +10,331 @@
</oid>
<Forall>
<declare>
- <Var type="int">RuleId.Message.$sjoin</Var>
+ <Var type="org.drools.chance.Message">Test.$message_1</Var>
</declare>
<declare>
- <Var type="java.lang.String">RuleId.$m.$msg</Var>
+ <Var type="org.drools.chance.Message">Test.$message_3</Var>
</declare>
<declare>
- <Var type="org.drools.chance.Message">RuleId.$m</Var>
+ <Var type="org.drools.chance.Message">Test.$msg</Var>
</declare>
<declare>
- <Var type="int">RuleId.$m.$s</Var>
+ <Var type="org.drools.chance.Message">Test.$message</Var>
</declare>
<declare>
- <Var type="org.drools.chance.Message">RuleId.Message</Var>
+ <Var type="org.drools.chance.Message">Test.$message_5</Var>
</declare>
+ <declare>
+ <Var type="int">Test.$msg.$stat</Var>
+ </declare>
+ <declare>
+ <Var type="org.drools.chance.Message">Test.$message_4</Var>
+ </declare>
+ <declare>
+ <Var type="int">Test.$message_4.$sjust</Var>
+ </declare>
+ <declare>
+ <Var type="org.drools.chance.Message">Test.$message_6</Var>
+ </declare>
+ <declare>
+ <Var type="org.drools.chance.Message">Test.$message_2</Var>
+ </declare>
<formula>
<Implies direction="forward">
<oid>
- <Data>RuleId</Data>
+ <Data>Test</Data>
</oid>
- <!--
-<degree>
- <Data>( 0.7 )</Data>
-</degree>
--->
<body>
<And>
<Or>
- <oid>
- <Data>idCE</Data>
- </oid>
- <!--unsupported attribute -
-<cut/>
--->
- <!--unsupported attribute -
-<kind>kind:Max</kind>
--->
- <!--
-<degree>
- <Data>0.4</Data>
-</degree>
--->
<Atom>
<oid>
- <Var>RuleId.$m</Var>
+ <Var>Test.$msg</Var>
</oid>
<Rel>Message</Rel>
<Reify>
<And>
<Atom>
- <oid>
- <Data>idCls</Data>
- </oid>
- <!--unsupported attribute -
-<cut/>
--->
- <!--unsupported attribute -
-<kind>args:z</kind>
--->
- <!--
-<degree>
- <Data>0.1</Data>
-</degree>
--->
<op>
<Rel>isA</Rel>
</op>
<slot>
- <Ind>class</Ind>
+ <Ind type="java.lang.Class">class</Ind>
<Var/>
</slot>
<Ind type="java.lang.Class">org.drools.chance.Message</Ind>
</Atom>
- <Or>
+ <Atom>
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var>Test.$msg.$stat</Var>
+ </slot>
+ <Ind type="java.lang.Number">0</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var/>
+ </slot>
+ <Ind type="java.lang.Number">1</Ind>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Test.$message</Var>
+ </oid>
+ <Rel>Message</Rel>
+ <Reify>
+ <And>
<Atom>
- <oid>
- <Data>idBndOp</Data>
- </oid>
- <!--unsupported attribute -
-<cut/>
--->
- <!--unsupported attribute -
-<kind>args:tolerance(0.1)</kind>
--->
- <!--
-<degree>
- <Data>0.4</Data>
-</degree>
--->
<op>
- <Rel>==</Rel>
+ <Rel>isA</Rel>
</op>
<slot>
- <Ind>status</Ind>
- <Var>RuleId.$m.$s</Var>
+ <Ind type="java.lang.Class">class</Ind>
+ <Var/>
</slot>
- <Ind type="java.lang.Number">0</Ind>
+ <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
</Atom>
- <And>
+ <Atom>
+ <op>
+ <Rel>random</Rel>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var/>
+ </slot>
+ </Atom>
+ <Or>
<Atom>
- <oid>
- <Data>idFreeOp</Data>
- </oid>
- <!--unsupported attribute -
-<cut/>
--->
- <!--unsupported attribute -
-<kind>kind:a</kind>
--->
- <!--
-<degree>
- <Data>0.4</Data>
-</degree>
--->
<op>
- <Rel>==</Rel>
+ <Rel>random</Rel>
</op>
<slot>
- <Ind>message</Ind>
+ <Ind type="String">message</Ind>
<Var/>
</slot>
- <Ind type="java.lang.String">Hello</Ind>
</Atom>
<Atom>
<op>
- <Rel/>
+ <Rel>random</Rel>
</op>
<slot>
- <Ind>message</Ind>
- <Var>RuleId.$m.$msg</Var>
+ <Ind type="int">status</Ind>
+ <Var/>
</slot>
</Atom>
- </And>
- </Or>
- </And>
- </Reify>
- </Atom>
- <Atom>
- <oid>
- <Var>RuleId.Message</Var>
- </oid>
- <Rel>Message</Rel>
- <Reify>
- <And>
- <Atom>
- <oid>
- <Data>idCls2</Data>
- </oid>
- <!--unsupported attribute -
-<cut/>
--->
- <!--unsupported attribute -
-<kind>kind:Lukas</kind>
--->
- <!--
-<degree>
- <Data>0.4</Data>
-</degree>
--->
- <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>RuleId.Message.$sjoin</Var>
- </slot>
- <Var>RuleId.$m.$s</Var>
- </Atom>
- </And>
- </Reify>
- </Atom>
+ </Or>
+ </And>
+ </Reify>
+ </Atom>
+ <Atom>
+ <oid>
+ <Var>Test.$message_1</Var>
+ </oid>
+ <Rel>Message</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.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>random</Rel>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var/>
+ </slot>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
</Or>
+ <Neg>
+ <And>
+ <Atom>
+ <oid>
+ <Var>Test.$message_2</Var>
+ </oid>
+ <Rel>Message</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.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>random</Rel>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var/>
+ </slot>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ <Atom>
+ <oid>
+ <Var>Test.$message_3</Var>
+ </oid>
+ <Rel>Message</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.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>random</Rel>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var/>
+ </slot>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ </And>
+ </Neg>
+ <Atom>
+ <oid>
+ <Var>Test.$message_4</Var>
+ </oid>
+ <Rel>Message</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.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel/>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var>Test.$message_4.$sjust</Var>
+ </slot>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ <Atom>
+ <oid>
+ <Var>Test.$message_5</Var>
+ </oid>
+ <Rel>Message</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.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>></Rel>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var/>
+ </slot>
+ <Var>Test.$msg.$stat</Var>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
+ <Atom>
+ <oid>
+ <Var>Test.$message_6</Var>
+ </oid>
+ <Rel>Message</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.Message</Ind>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>==</Rel>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var/>
+ </slot>
+ <Expr>
+ <Fun>getStatus</Fun>
+ <Var>Test.$message_6</Var>
+ </Expr>
+ </Atom>
+ <Atom>
+ <op>
+ <Rel>></Rel>
+ </op>
+ <slot>
+ <Ind type="int">status</Ind>
+ <Var/>
+ </slot>
+ <Expr>
+ <Fun>getStatus</Fun>
+ <Var>Test.$msg</Var>
+ </Expr>
+ </Atom>
+ </And>
+ </Reify>
+ </Atom>
</And>
</body>
<head>
More information about the jboss-svn-commits
mailing list