[jboss-svn-commits] JBL Code SVN: r26757 - in labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl: src/main/java/org/drools/chance and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu May 28 04:47:54 EDT 2009


Author: dsotty
Date: 2009-05-28 04:47:54 -0400 (Thu, 28 May 2009)
New Revision: 26757

Added:
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/CutTest.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists2Test.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists3Test.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists4Test.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/ExistsTest.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Forall2Test.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/ForallTest.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest1.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest2.java
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/CutTest.drl
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists2Test.drl
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists3Test.drl
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists4Test.drl
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ExistsTest.drl
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Forall2Test.drl
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ForallTest.drl
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest.drl
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest1.drl
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest2.drl
Modified:
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/BaseTest.log
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/BaseTest.ruleml.xml
   labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/RuleMLTest.ruleml.xml
Log:
Tests

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-05-28 07:34:31 UTC (rev 26756)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/log/BaseTest.log	2009-05-28 08:47:54 UTC (rev 26757)
@@ -1,85 +0,0 @@
-
- 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,]

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/CutTest.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/CutTest.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/CutTest.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,53 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class CutTest extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		CutTest test = new CutTest();
+			test.setRuleFileName("CutTest.drl");
+			test.setDumpable(false);
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists2Test.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists2Test.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists2Test.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,64 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class Exists2Test extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		Exists2Test test = new Exists2Test();
+			test.setRuleFileName("Exists2Test.drl");
+			test.setDumpable(false);
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+			
+		Object message2 = msgType.newInstance();
+			msgType.set(message2,"status",2);
+			msgType.set(message2,"message","M2");		
+			getSession().insert(message2);			
+		
+			
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n msg 2 in**********************************************************\n\n\n\n\n\n\n");
+		
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists3Test.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists3Test.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists3Test.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,64 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class Exists3Test extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		Exists3Test test = new Exists3Test();
+			test.setRuleFileName("Exists3Test.drl");
+			test.setDumpable(false);
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+			
+		Object message2 = msgType.newInstance();
+			msgType.set(message2,"status",2);
+			msgType.set(message2,"message","M2");		
+			getSession().insert(message2);			
+		
+			
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n msg 2 in**********************************************************\n\n\n\n\n\n\n");
+		
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists4Test.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists4Test.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Exists4Test.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,64 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class Exists4Test extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		Exists4Test test = new Exists4Test();
+			test.setRuleFileName("Exists4Test.drl");
+			test.setDumpable(false);
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+			
+		Object message2 = msgType.newInstance();
+			msgType.set(message2,"status",2);
+			msgType.set(message2,"message","M2");		
+			getSession().insert(message2);			
+		
+			
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n msg 2 in**********************************************************\n\n\n\n\n\n\n");
+		
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/ExistsTest.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/ExistsTest.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/ExistsTest.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,64 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class ExistsTest extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		ExistsTest test = new ExistsTest();
+			test.setRuleFileName("ExistsTest.drl");
+			test.setDumpable(false);
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+			
+		Object message2 = msgType.newInstance();
+			msgType.set(message2,"status",2);
+			msgType.set(message2,"message","M2");		
+			getSession().insert(message2);			
+		
+			
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n msg 2 in**********************************************************\n\n\n\n\n\n\n");
+		
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Forall2Test.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Forall2Test.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/Forall2Test.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,64 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class Forall2Test extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		Forall2Test test = new Forall2Test();
+			test.setRuleFileName("Forall2Test.drl");
+			test.setDumpable(false);
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+			
+		Object message2 = msgType.newInstance();
+			msgType.set(message2,"status",2);
+			msgType.set(message2,"message","M2");		
+			getSession().insert(message2);			
+		
+			
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n msg 2 in**********************************************************\n\n\n\n\n\n\n");
+		
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/ForallTest.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/ForallTest.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/ForallTest.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,64 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class ForallTest extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		ForallTest test = new ForallTest();
+			test.setRuleFileName("ForallTest.drl");
+			test.setDumpable(false);
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+			
+		Object message2 = msgType.newInstance();
+			msgType.set(message2,"status",2);
+			msgType.set(message2,"message","M2");		
+			getSession().insert(message2);			
+		
+			
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n msg 2 in**********************************************************\n\n\n\n\n\n\n");
+		
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,65 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class JoinTest extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		JoinTest test = new JoinTest();
+			test.setRuleFileName("JoinTest.drl");
+						
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		//All possible combinations will appear, but just one will be true...
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+			
+		Object message2 = msgType.newInstance();
+			msgType.set(message2,"status",2);
+			msgType.set(message2,"message","M2");		
+			getSession().insert(message2);			
+		
+			
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n msg 2 in**********************************************************\n\n\n\n\n\n\n");
+		
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest1.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest1.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest1.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,65 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class JoinTest1 extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		JoinTest1 test = new JoinTest1();
+			test.setRuleFileName("JoinTest1.drl");
+						
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		//Join with cut and binding
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+			
+		Object message2 = msgType.newInstance();
+			msgType.set(message2,"status",2);
+			msgType.set(message2,"message","M2");		
+			getSession().insert(message2);			
+		
+			
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n msg 2 in**********************************************************\n\n\n\n\n\n\n");
+		
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest2.java
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest2.java	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/java/org/drools/chance/JoinTest2.java	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,65 @@
+package org.drools.chance;
+
+import org.drools.definition.type.FactType;
+
+public class JoinTest2 extends AbstractChanceTest {
+
+
+	public static final void main(final String[] args) throws Exception {
+		
+		JoinTest2 test = new JoinTest2();
+			test.setRuleFileName("JoinTest2.drl");
+						
+			test.run();
+			
+	}
+	
+
+		
+	@Override
+	public void act() throws InstantiationException, IllegalAccessException {
+		
+		//Join with cut and binding: first two are equal
+		
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n no msg in ********************************************************\n\n\n\n\n\n\n");
+	
+		FactType msgType = getFactType("Message");
+		
+		Object message = msgType.newInstance();
+			msgType.set(message,"status",0);
+			msgType.set(message,"message","M0");		
+			getSession().insert(message);
+			
+		//getSession().fireAllRules();
+		
+						
+		Object message1 = msgType.newInstance();
+			msgType.set(message1,"status",1);
+			msgType.set(message1,"message","M1");		
+			getSession().insert(message1);
+				
+		System.out.println("\n\n\n\n\n\n msg 1 in**********************************************************\n\n\n\n\n\n\n");
+
+		getSession().fireAllRules();
+
+			
+		Object message2 = msgType.newInstance();
+			msgType.set(message2,"status",2);
+			msgType.set(message2,"message","M2");		
+			getSession().insert(message2);			
+		
+			
+		getSession().fireAllRules();
+		
+		System.out.println("\n\n\n\n\n\n msg 2 in**********************************************************\n\n\n\n\n\n\n");
+		
+		
+
+
+	}
+	
+	
+
+}

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/CutTest.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/CutTest.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/CutTest.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,33 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+	
+
+rule "TestCut 1"
+	when
+		$m : Message( status > @(cut="true") 0  ) 
+		Message( this ==  @(cut="true") $m , $s : status ~random )  
+	then
+		writer.write("Rule with cut fires \n");
+		writer.write(drools.getEvaluation().expand() + "\n");
+end
+		
+
+
+
+rule "TestCut 2"
+	when
+		$m : Message( status > 0)
+		Message( this == $m , status ~random )
+	then
+		writer.write("Rule without cut fires \n");
+		writer.write(drools.getEvaluation().expand() + "\n");
+end

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists2Test.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists2Test.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists2Test.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,24 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+	
+rule "Test Exist 4"	
+	when
+		exists (
+				   Message( status == 0 )
+				   and 
+				   Message( status == 1)							
+		)
+	then
+		
+		writer.write("Existential check "+drools.getConsequenceDegree()+"\n"+drools.getEvaluation().expand()+"\n\n");
+		System.out.println("Existential check "+drools.getConsequenceDegree());			
+end

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists3Test.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists3Test.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists3Test.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,24 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+// Test external variable binding
+rule "Test Exist 5"	
+	when
+		$m : Message($s : status == 0)
+		exists ( Message(status > $s) )
+	then
+		writer.write("\n\n Conditional join with existence\n");
+		writer.write("\t Rule triggered for " + $m.getMessage() + "\n");
+		
+		writer.write("Existential check "+drools.getConsequenceDegree()+"\n"+drools.getEvaluation().expand()+"\n\n");
+		System.out.println("Existential check "+drools.getConsequenceDegree());
+			
+end

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists4Test.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists4Test.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Exists4Test.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,25 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+//Test simple forall using exist
+rule "Test Exist 6"	
+	when
+		not ( 
+			exists (
+				   	not ( Message( status ~random )
+				   							
+		) ) )
+	then
+		
+		writer.write("Existential check "+drools.getConsequenceDegree()+"\n"+drools.getEvaluation().expand()+"\n\n");
+		System.out.println("Existential check "+drools.getConsequenceDegree());
+			
+end

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ExistsTest.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ExistsTest.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ExistsTest.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,22 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+rule "Test Exist 3"	
+	when
+		exists (				   
+				   Message( status == 2)							
+		)
+	then
+		
+		writer.write("Existential check "+drools.getConsequenceDegree()+"\n"+drools.getEvaluation().expand()+"\n\n");
+		System.out.println("Existential check "+drools.getConsequenceDegree());
+			
+end

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Forall2Test.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Forall2Test.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/Forall2Test.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,27 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+
+//True when Msg=1 appears, becomes false on insertion of Msg=2
+rule "Test Forall 2"	
+	when
+		Message( status == @(cut="true") 1)
+		forall (
+					m : Message()
+					Message( this == m, status <= 1)
+					Message( this == @(cut="true") m, status > -1)					
+		)
+	then
+		
+		writer.write("Existential check "+drools.getConsequenceDegree()+"\n"+drools.getEvaluation().expand()+"\n\n");
+		System.out.println("Existential check "+drools.getConsequenceDegree());
+			
+end
\ No newline at end of file

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ForallTest.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ForallTest.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/ForallTest.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,22 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+rule "Test Forall 1"	
+	when
+		forall (
+					Message( status < 2 )					
+		)
+	then
+		
+		writer.write("Existential check "+drools.getConsequenceDegree()+"\n"+drools.getEvaluation().expand()+"\n\n");
+		System.out.println("Existential check "+drools.getConsequenceDegree());
+			
+end
\ No newline at end of file

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,23 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+
+
+rule "Test Join"	
+	when
+		
+			m: Message(status == 0)			
+			n : Message(status == 1)					
+	then
+		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");	
+end
\ No newline at end of file

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest1.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest1.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest1.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,25 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+
+rule "Test Join 2"	
+	when
+		
+					m : Message( status == 1)
+					and			
+					p : Message( this == @(cut = "true") m, status == 1)						
+		
+	then
+		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());	
+end

Added: labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest2.drl
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest2.drl	                        (rev 0)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/src/main/rules/org/drools/chance/JoinTest2.drl	2009-05-28 08:47:54 UTC (rev 26757)
@@ -0,0 +1,25 @@
+package org.drools.chance;
+
+import java.io.FileWriter;
+
+declare Message
+	status : int @key
+	message : String
+end
+
+global FileWriter writer;
+
+
+rule "Test Join 2"	
+	when
+		
+					m : Message()								
+					p : Message( this == @(cut="true") m, $s : status > -1)
+				 	q : Message( status == $s)						
+		
+	then
+		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());	
+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-05-28 07:34:31 UTC (rev 26756)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/BaseTest.ruleml.xml	2009-05-28 08:47:54 UTC (rev 26757)
@@ -6,62 +6,30 @@
     <Assert>
         <Rulebase>
             <oid>
-                <Data>org.drools.chance</Data>
+                <Data>defaultpkg</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!");&#13;
-			Message m = new Message();&#13;
-				m.setStatus(0);&#13;
-		&#13;
-		drools.inject(m,"org.drools.chance.Message.message","equals","Hello!",true);</Data>
-                            </Atom>
-                        </head>
-                    </Implies>
-                </formula>
-            </Forall>
-            <Forall>
                 <declare>
-                    <Var type="org.drools.chance.Message">Synch.$msgRef</Var>
+                    <Var type="defaultpkg.Message">Test Join.n</Var>
                 </declare>
+                <declare>
+                    <Var type="defaultpkg.Message">Test Join.m</Var>
+                </declare>
                 <formula>
                     <Implies direction="forward">
                         <oid>
-                            <Data>Synch</Data>
+                            <Data>Test Join</Data>
                         </oid>
                         <body>
                             <And>
                                 <Atom>
                                     <oid>
-                                        <Var>Synch.$msgRef</Var>
+                                        <Var>Test Join.m</Var>
                                     </oid>
                                     <Rel>Message</Rel>
                                     <Reify>
                                         <And>
                                             <Atom>
-                                                <oid>
-                                                    <Data>MsgId</Data>
-                                                </oid>
                                                 <op>
                                                     <Rel>isA</Rel>
                                                 </op>
@@ -69,74 +37,26 @@
                                                     <Ind>class</Ind>
                                                     <Var/>
                                                 </slot>
-                                                <Ind type="java.lang.Class">org.drools.chance.Message</Ind>
+                                                <Ind type="java.lang.Class">defaultpkg.Message</Ind>
                                             </Atom>
                                             <Atom>
                                                 <op>
-                                                    <Rel>equals</Rel>
+                                                    <Rel>==</Rel>
                                                 </op>
                                                 <slot>
-                                                    <Ind>message</Ind>
+                                                    <Ind>status</Ind>
                                                     <Var/>
                                                 </slot>
-                                                <Ind type="java.lang.String">Hello!</Ind>
+                                                <Ind type="java.lang.Number">0</Ind>
                                             </Atom>
                                         </And>
                                     </Reify>
                                 </Atom>
-                            </And>
-                        </body>
-                        <head>
-                            <Atom>
-                                <Rel/>
-                                <Data>writer.write("\n\nSynched rule fires at "+drools.getConsequenceDegree());&#13;
-		writer.write("\nDeclared message is "+$msgRef.getMessage()+ " but is thought to be Hello!");&#13;
-		writer.write("\n"+drools.getEvaluation().expand()+"\n\n");&#13;
-		&#13;
-		&#13;
-		Person p = new Person();&#13;
-			p.setName("davide");&#13;
-			//p.setAge(27);&#13;
-		&#13;
-		&#13;
-		Book b = new Book();&#13;
-			b.setTitle("Drools Manual");&#13;
-			//b.setOwner(p);				&#13;
-		writer.write("\n Now stating Davide owns a Drools Manual");&#13;
-		&#13;
-		//FIXME Until lexical analysis is done properly, args must be defined in two steps&#13;
-		Object[] args = new Object[] { p , b }; &#13;
-		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>BetaSynch.$p</Var>
+                                        <Var>Test Join.n</Var>
                                     </oid>
-                                    <Rel>Person</Rel>
+                                    <Rel>Message</Rel>
                                     <Reify>
                                         <And>
                                             <Atom>
@@ -147,70 +67,18 @@
                                                     <Ind>class</Ind>
                                                     <Var/>
                                                 </slot>
-                                                <Ind type="java.lang.Class">org.drools.chance.Person</Ind>
+                                                <Ind type="java.lang.Class">defaultpkg.Message</Ind>
                                             </Atom>
                                             <Atom>
                                                 <op>
                                                     <Rel>==</Rel>
                                                 </op>
                                                 <slot>
-                                                    <Ind>name</Ind>
-                                                    <Var>BetaSynch.$p.$n</Var>
-                                                </slot>
-                                                <Ind type="java.lang.String">davide</Ind>
-                                            </Atom>
-                                            <Or>
-                                                <Atom>
-                                                    <op>
-                                                        <Rel>&gt;</Rel>
-                                                    </op>
-                                                    <slot>
-                                                        <Ind>age</Ind>
-                                                        <Var>BetaSynch.$p.$a</Var>
-                                                    </slot>
-                                                    <Ind type="java.lang.Number">25</Ind>
-                                                </Atom>
-                                                <Atom>
-                                                    <op>
-                                                        <Rel>&lt;</Rel>
-                                                    </op>
-                                                    <slot>
-                                                        <Ind>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>class</Ind>
+                                                    <Ind>status</Ind>
                                                     <Var/>
                                                 </slot>
-                                                <Ind type="java.lang.Class">org.drools.chance.Book</Ind>
+                                                <Ind type="java.lang.Number">1</Ind>
                                             </Atom>
-                                            <Atom>
-                                                <op>
-                                                    <Rel>equals</Rel>
-                                                </op>
-                                                <slot>
-                                                    <Ind>owner</Ind>
-                                                    <Var/>
-                                                </slot>
-                                                <Var>BetaSynch.$p</Var>
-                                            </Atom>
                                         </And>
                                     </Reify>
                                 </Atom>
@@ -219,83 +87,14 @@
                         <head>
                             <Atom>
                                 <Rel/>
-                                <Data>writer.write("\n\n\nBook has no a-priori known owner\n");&#13;
-		writer.write("Book.owner = "+$b.getOwner()+"\n");&#13;
-		writer.write("but is ack'd as being "+$n+"("+$a+")\n");&#13;
-		writer.write("Info comes from rule, evaluation is "+drools.getConsequenceDegree()+"\n");&#13;
-		writer.write("\n"+drools.getEvaluation().expand()+"\n");&#13;
-		&#13;
-		&#13;
-		&#13;
-		writer.write("\n\nSo, an exceptional exercise will be done\n\n");&#13;
-		Exercise e = new Exercise();&#13;
-			e.setTopic("Rule Programming");&#13;
-		drools.inject(e,"Exceptional");</Data>
+                                <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>
-            <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>class</Ind>
-                                                    <Var/>
-                                                </slot>
-                                                <Ind type="java.lang.Class">org.drools.chance.Exercise</Ind>
-                                            </Atom>
-                                            <Atom>
-                                                <op>
-                                                    <Rel/>
-                                                </op>
-                                                <slot>
-                                                    <Ind>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());	&#13;
-		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/RuleMLTest.ruleml.xml
===================================================================
--- labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/RuleMLTest.ruleml.xml	2009-05-28 07:34:31 UTC (rev 26756)
+++ labs/jbossrules/branches/DroolsChance/drools-examples/drools-examples-drl/xml/RuleMLTest.ruleml.xml	2009-05-28 08:47:54 UTC (rev 26757)
@@ -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://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://ibis.in.tum.de/research/ReactionRuleML/0.2/rr.xsd>
     <oid>
         <Data>org.drools.DRL</Data>
     </oid>




More information about the jboss-svn-commits mailing list