You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by an...@apache.org on 2011/11/28 16:31:38 UTC

svn commit: r1207299 - in /incubator/stanbol/trunk/rules: base/src/main/java/org/apache/stanbol/rules/base/api/ manager/src/main/java/org/apache/stanbol/rules/manager/ manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ manager/src/main/java/...

Author: anuzzolese
Date: Mon Nov 28 15:31:24 2011
New Revision: 1207299

URL: http://svn.apache.org/viewvc?rev=1207299&view=rev
Log:
[STANBOL-186] Fixed a bug related to the conversion of rules to Jena.

Added:
    incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaClauseEntry.java
    incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaVariableMap.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaClauseEntryImpl.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaVariableMapImpl.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/AbstractRuleAtom.java
Modified:
    incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/RuleAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/RuleImpl.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/BlankNodeAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ClassAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ComparisonAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ConcatAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CoreAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CreateLabelAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DatavaluedPropertyAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DifferentAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/EndsWithAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/GreaterThanAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IndividualPropertyAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IsBlankAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LengthAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LessThanAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LetAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LocalNameAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LowerCaseAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NamespaceAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NewNodeAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NotAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NumberAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/PropStringAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLcAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLdAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLddAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SameAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StartsWithAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StrAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StringAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubstringAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubtractionAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SumAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UObjectAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UnionAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UpperCaseAtom.java
    incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java

Added: incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaClauseEntry.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaClauseEntry.java?rev=1207299&view=auto
==============================================================================
--- incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaClauseEntry.java (added)
+++ incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaClauseEntry.java Mon Nov 28 15:31:24 2011
@@ -0,0 +1,11 @@
+package org.apache.stanbol.rules.base.api;
+
+import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
+
+public interface JenaClauseEntry {
+
+	public ClauseEntry getClauseEntry();
+	
+	public JenaVariableMap getJenaVariableMap();
+	
+}

Added: incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaVariableMap.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaVariableMap.java?rev=1207299&view=auto
==============================================================================
--- incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaVariableMap.java (added)
+++ incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/JenaVariableMap.java Mon Nov 28 15:31:24 2011
@@ -0,0 +1,8 @@
+package org.apache.stanbol.rules.base.api;
+
+
+public interface JenaVariableMap {
+
+	public int getVariableIndex(String ruleVariable);
+	
+}

Modified: incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/RuleAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/RuleAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/RuleAtom.java (original)
+++ incubator/stanbol/trunk/rules/base/src/main/java/org/apache/stanbol/rules/base/api/RuleAtom.java Mon Nov 28 15:31:24 2011
@@ -21,7 +21,6 @@ import org.semanticweb.owlapi.model.SWRL
 
 import com.hp.hpl.jena.rdf.model.Model;
 import com.hp.hpl.jena.rdf.model.Resource;
-import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
 
 public interface RuleAtom {
 
@@ -41,6 +40,6 @@ public interface RuleAtom {
 	
 	boolean isSPARQLDeleteData();
 	
-	ClauseEntry toJenaClauseEntry();
+	JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap);
 	
 }

Added: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaClauseEntryImpl.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaClauseEntryImpl.java?rev=1207299&view=auto
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaClauseEntryImpl.java (added)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaClauseEntryImpl.java Mon Nov 28 15:31:24 2011
@@ -0,0 +1,28 @@
+package org.apache.stanbol.rules.manager;
+
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
+
+import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
+
+public class JenaClauseEntryImpl implements JenaClauseEntry {
+
+	private ClauseEntry clauseEntry;
+	private JenaVariableMap variableMap;
+	
+	public JenaClauseEntryImpl(ClauseEntry clauseEntry, JenaVariableMap variableMap) {
+		this.clauseEntry = clauseEntry;
+		this.variableMap = variableMap;
+	}
+
+	@Override
+	public ClauseEntry getClauseEntry() {
+		return clauseEntry;
+	}
+
+	@Override
+	public JenaVariableMap getJenaVariableMap() {
+		return variableMap;
+	}
+	
+}

Added: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaVariableMapImpl.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaVariableMapImpl.java?rev=1207299&view=auto
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaVariableMapImpl.java (added)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/JenaVariableMapImpl.java Mon Nov 28 15:31:24 2011
@@ -0,0 +1,33 @@
+package org.apache.stanbol.rules.manager;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
+
+public class JenaVariableMapImpl implements JenaVariableMap {
+
+	private Map<String, Integer> variableMap;
+	
+	public JenaVariableMapImpl() {
+		variableMap = new HashMap<String, Integer>();
+	}
+	
+	public JenaVariableMapImpl(Map<String, Integer> variableMap) {
+		this.variableMap = variableMap;
+	}
+	
+	public int getVariableIndex(String ruleVariable){
+		Integer index = variableMap.get(ruleVariable);
+		if(index == null){
+			index = variableMap.size();
+			
+			variableMap.put(ruleVariable, index);
+			
+			
+		}
+		
+		return index;
+	}
+	
+}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/RuleImpl.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/RuleImpl.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/RuleImpl.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/RuleImpl.java Mon Nov 28 15:31:24 2011
@@ -21,6 +21,8 @@ import java.util.HashSet;
 import java.util.Iterator;
 import java.util.Set;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.Rule;
 import org.apache.stanbol.rules.base.api.RuleAtom;
 import org.apache.stanbol.rules.base.api.RuleExpressiveness;
@@ -88,17 +90,21 @@ public class RuleImpl implements Rule {
 		ClauseEntry[] head = new ClauseEntry[this.head.size()];
 		ClauseEntry[] body = new ClauseEntry[this.body.size()];
 		
+		
+		JenaVariableMap jenaVariableMap = new JenaVariableMapImpl();
 		Iterator<RuleAtom> it = this.head.iterator();
 		for(int i=0; it.hasNext(); i++){
 			RuleAtom atom = it.next();
-			head[i] = atom.toJenaClauseEntry();
+			JenaClauseEntry jenaClauseEntry = atom.toJenaClauseEntry(jenaVariableMap);
+			head[i] = jenaClauseEntry.getClauseEntry();
 		}
 		
 		
 		it = this.body.iterator();
 		for(int i=0; it.hasNext(); i++){
 			RuleAtom atom = it.next();
-			body[i] = atom.toJenaClauseEntry();
+			JenaClauseEntry jenaClauseEntry = atom.toJenaClauseEntry(jenaVariableMap);
+			body[i] = jenaClauseEntry.getClauseEntry();
 		}
 		
 		

Added: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/AbstractRuleAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/AbstractRuleAtom.java?rev=1207299&view=auto
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/AbstractRuleAtom.java (added)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/AbstractRuleAtom.java Mon Nov 28 15:31:24 2011
@@ -0,0 +1,38 @@
+package org.apache.stanbol.rules.manager.atoms;
+
+import org.apache.stanbol.rules.base.api.RuleAtom;
+
+import com.hp.hpl.jena.datatypes.xsd.XSDDatatype;
+import com.hp.hpl.jena.graph.Node;
+import com.hp.hpl.jena.reasoner.rulesys.Node_RuleVariable;
+
+public abstract class AbstractRuleAtom implements RuleAtom {
+
+	protected Node getTypedLiteral(Object argument){
+		
+		Node literal;
+		if(argument instanceof String){
+			literal = Node_RuleVariable.createLiteral((String)argument, null, XSDDatatype.XSDstring);
+		}
+		else if(argument instanceof Integer){
+			literal = Node_RuleVariable.createLiteral(argument.toString(), null, XSDDatatype.XSDinteger);
+		}
+		else if(argument instanceof Double){
+			literal = Node_RuleVariable.createLiteral(argument.toString(), null, XSDDatatype.XSDdouble);
+		}
+		else if(argument instanceof Float){
+			literal = Node_RuleVariable.createLiteral(argument.toString(), null, XSDDatatype.XSDfloat);
+		}
+		else if(argument instanceof Boolean){
+			literal = Node_RuleVariable.createLiteral(argument.toString(), null, XSDDatatype.XSDboolean);
+		}
+		else{
+			literal = Node_RuleVariable.createLiteral((String)argument);
+		}
+		
+		
+		
+		return literal; 
+	}
+	
+}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/BlankNodeAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/BlankNodeAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/BlankNodeAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/BlankNodeAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
 import org.apache.stanbol.rules.manager.SPARQLTriple;
@@ -65,7 +67,7 @@ public class BlankNodeAtom extends CoreA
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ClassAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ClassAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ClassAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ClassAtom.java Mon Nov 28 15:31:24 2011
@@ -18,8 +18,12 @@ package org.apache.stanbol.rules.manager
 
 import java.util.ArrayList;
 
+import org.apache.stanbol.rules.base.SWRL;
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
+import org.apache.stanbol.rules.manager.JenaClauseEntryImpl;
 import org.apache.stanbol.rules.manager.SPARQLNot;
 import org.apache.stanbol.rules.manager.SPARQLTriple;
 import org.semanticweb.owlapi.model.IRI;
@@ -34,10 +38,9 @@ import com.hp.hpl.jena.rdf.model.Model;
 import com.hp.hpl.jena.rdf.model.Resource;
 import com.hp.hpl.jena.reasoner.TriplePattern;
 import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
+import com.hp.hpl.jena.reasoner.rulesys.Node_RuleVariable;
 import com.hp.hpl.jena.vocabulary.RDF;
 
-import org.apache.stanbol.rules.base.SWRL;
-
 public class ClassAtom extends CoreAtom {
 
 	private URIResource classResource;
@@ -191,17 +194,38 @@ public class ClassAtom extends CoreAtom 
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		String subject = argument1.toString();
+		Node argumnetNode = null;
 		if(subject.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
 			subject = subject.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			
+			if(subject.startsWith("?")){
+				subject.substring(1);
+			}
+			//argumnetNode = Node_RuleVariable.createVariable(subject);
+			
+			subject = "?" + subject;
+			
+			argumnetNode  = new Node_RuleVariable(subject, jenaVariableMap.getVariableIndex(subject));
+		}
+		else{
+			argumnetNode = Node_RuleVariable.createURI(subject);
 		}
 		
 		String object = classResource.toString();
+		Node classNode = null;
 		if(object.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
 			object = subject.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			if(object.startsWith("?")){
+				object.substring(1);
+			}
+			classNode = Node_RuleVariable.createVariable(object);
+		}
+		else{
+			classNode = Node_RuleVariable.createURI(object);
 		}
-		ClauseEntry clauseEntry = new TriplePattern(Node.createVariable(subject), RDF.type.asNode(), Node.createURI(object));
-		return clauseEntry;
+		ClauseEntry clauseEntry = new TriplePattern(argumnetNode, Node_RuleVariable.createURI(RDF.type.getURI()), classNode);
+		return new JenaClauseEntryImpl(clauseEntry, jenaVariableMap);
 	}
 }

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ComparisonAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ComparisonAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ComparisonAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ComparisonAtom.java Mon Nov 28 15:31:24 2011
@@ -18,7 +18,7 @@ package org.apache.stanbol.rules.manager
 
 import org.apache.stanbol.rules.base.api.RuleAtom;
 
-public abstract class ComparisonAtom implements RuleAtom {
+public abstract class ComparisonAtom extends AbstractRuleAtom {
 
 	
 	@Override

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ConcatAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ConcatAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ConcatAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/ConcatAtom.java Mon Nov 28 15:31:24 2011
@@ -18,6 +18,8 @@ package org.apache.stanbol.rules.manager
 
 import java.util.ArrayList;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -68,8 +70,9 @@ public class ConcatAtom extends StringFu
 	}
 	
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
-		
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
+		/*
+		 * TODO
 		String arg1 = argument1.toString();
 		if(arg1.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
 			arg1 = "?" + arg1.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
@@ -87,6 +90,9 @@ public class ConcatAtom extends StringFu
 		nodes.add(Node.createURI("?t324"));
 		
 		return new Functor("strConcat", nodes);
+		*/
+		
+		return null;
 	}
 
 }

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CoreAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CoreAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CoreAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CoreAtom.java Mon Nov 28 15:31:24 2011
@@ -16,11 +16,10 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
-import org.apache.stanbol.rules.base.api.RuleAtom;
 
 
 
-public abstract class CoreAtom implements RuleAtom {
+public abstract class CoreAtom extends AbstractRuleAtom {
 
 	
 	@Override

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CreateLabelAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CreateLabelAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CreateLabelAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/CreateLabelAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -68,7 +70,7 @@ public class CreateLabelAtom extends Str
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DatavaluedPropertyAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DatavaluedPropertyAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DatavaluedPropertyAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DatavaluedPropertyAtom.java Mon Nov 28 15:31:24 2011
@@ -18,8 +18,11 @@ package org.apache.stanbol.rules.manager
 
 import java.util.ArrayList;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
+import org.apache.stanbol.rules.manager.JenaClauseEntryImpl;
 import org.apache.stanbol.rules.manager.SPARQLNot;
 import org.apache.stanbol.rules.manager.SPARQLTriple;
 import org.semanticweb.owlapi.apibinding.OWLManager;
@@ -39,6 +42,7 @@ import com.hp.hpl.jena.rdf.model.Model;
 import com.hp.hpl.jena.rdf.model.Resource;
 import com.hp.hpl.jena.reasoner.TriplePattern;
 import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
+import com.hp.hpl.jena.reasoner.rulesys.Node_RuleVariable;
 
 import org.apache.stanbol.rules.base.SWRL;
 
@@ -308,31 +312,43 @@ public class DatavaluedPropertyAtom exte
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		String subject = argument1.toString();
+		Node subjectNode = null;
 		if(subject.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
 			subject = "?" + subject.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			//subjectNode = Node_RuleVariable.createVariable(subject);
+			subjectNode = new Node_RuleVariable(subject, jenaVariableMap.getVariableIndex(subject));
+		}
+		else{
+			subjectNode = Node_RuleVariable.createURI(subject);	
 		}
 		
 		
 		Node objectNode = null;
 		String object = argument2.toString();
 		if(object.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
-			object = object.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			object = "?" + object.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
 			
-			objectNode = Node.createVariable(object);
+			//objectNode = Node_RuleVariable.createVariable(object);
+			objectNode = new Node_RuleVariable(object, jenaVariableMap.getVariableIndex(object));
 		}
 		else{
-			objectNode = Node.createLiteral(object);
+			objectNode = Node_RuleVariable.createLiteral(object);
 		}
 		
 		String predicate = datatypeProperty.toString();
+		Node predicateNode = null;
 		if(predicate.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
-			predicate = "?" + predicate.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			predicate = predicate.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			predicateNode = Node_RuleVariable.createVariable(predicate);
+		}
+		else{
+			predicateNode = Node_RuleVariable.createURI(predicate);
 		}
 		
-		ClauseEntry clauseEntry = new TriplePattern(Node.createURI(subject), Node.createURI(predicate), objectNode);
-		return clauseEntry;
+		ClauseEntry clauseEntry = new TriplePattern(subjectNode, predicateNode, objectNode);
+		return new JenaClauseEntryImpl(clauseEntry, jenaVariableMap);
 	}
 	
 }

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DifferentAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DifferentAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DifferentAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/DifferentAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLComparison;
 import org.semanticweb.owlapi.apibinding.OWLManager;
@@ -99,7 +101,7 @@ public class DifferentAtom extends Compa
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/EndsWithAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/EndsWithAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/EndsWithAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/EndsWithAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLComparison;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -67,7 +69,7 @@ public class EndsWithAtom extends Compar
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/GreaterThanAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/GreaterThanAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/GreaterThanAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/GreaterThanAtom.java Mon Nov 28 15:31:24 2011
@@ -19,8 +19,11 @@ package org.apache.stanbol.rules.manager
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
+import org.apache.stanbol.rules.manager.JenaClauseEntryImpl;
 import org.apache.stanbol.rules.manager.SPARQLComparison;
 import org.semanticweb.owlapi.apibinding.OWLManager;
 import org.semanticweb.owlapi.model.IRI;
@@ -31,13 +34,17 @@ import org.semanticweb.owlapi.model.SWRL
 import org.semanticweb.owlapi.model.SWRLDArgument;
 import org.semanticweb.owlapi.vocab.SWRLBuiltInsVocabulary;
 
+import com.hp.hpl.jena.datatypes.RDFDatatype;
+import com.hp.hpl.jena.datatypes.xsd.XSDDatatype;
 import com.hp.hpl.jena.graph.Node;
+import com.hp.hpl.jena.rdf.model.Literal;
 import com.hp.hpl.jena.rdf.model.Model;
 import com.hp.hpl.jena.rdf.model.Resource;
 import com.hp.hpl.jena.reasoner.rulesys.Builtin;
 import com.hp.hpl.jena.reasoner.rulesys.BuiltinRegistry;
 import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
 import com.hp.hpl.jena.reasoner.rulesys.Functor;
+import com.hp.hpl.jena.reasoner.rulesys.Node_RuleVariable;
 import com.hp.hpl.jena.reasoner.rulesys.builtins.GreaterThan;
 import com.hp.hpl.jena.vocabulary.XSD;
 
@@ -237,29 +244,40 @@ public class GreaterThanAtom extends Com
 		return owlLiteral; 
 	}
 	
+	
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		
-		GreaterThan gt = new GreaterThan();
+		Node arg1Node = null;
+		Node arg2Node = null;
 		
 		String arg1 = argument1.toString();
 		if(arg1.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
 			arg1 = "?" + arg1.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			//arg1Node = Node_RuleVariable.createVariable(arg1);
+			arg1Node = new Node_RuleVariable(arg1, jenaVariableMap.getVariableIndex(arg1));
+		}
+		else{
+			arg1Node = getTypedLiteral(argument1);
 		}
 		
 		String arg2 = argument2.toString();
 		if(arg2.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
 			arg2 = "?" + arg2.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			arg2Node = new Node_RuleVariable(arg2, jenaVariableMap.getVariableIndex(arg2));
+		}
+		else{
+			arg2Node = getTypedLiteral(argument2);
 		}
 		
 		java.util.List<Node> nodes = new ArrayList<Node>();
 		
-		nodes.add(Node.createURI(arg1));
-		nodes.add(Node.createURI(arg2));
+		nodes.add(arg1Node);
+		nodes.add(arg2Node);
 		
 		
 		
-		return new Functor("greaterThan", nodes, new BuiltinRegistry());
+		return new JenaClauseEntryImpl(new Functor("greaterThan", nodes, new BuiltinRegistry()), jenaVariableMap);
 		
 	}
 }

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IndividualPropertyAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IndividualPropertyAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IndividualPropertyAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IndividualPropertyAtom.java Mon Nov 28 15:31:24 2011
@@ -18,8 +18,11 @@ package org.apache.stanbol.rules.manager
 
 import java.util.ArrayList;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
+import org.apache.stanbol.rules.manager.JenaClauseEntryImpl;
 import org.apache.stanbol.rules.manager.SPARQLNot;
 import org.apache.stanbol.rules.manager.SPARQLTriple;
 import org.semanticweb.owlapi.model.IRI;
@@ -34,9 +37,12 @@ import com.hp.hpl.jena.rdf.model.Model;
 import com.hp.hpl.jena.rdf.model.Resource;
 import com.hp.hpl.jena.reasoner.TriplePattern;
 import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
+import com.hp.hpl.jena.reasoner.rulesys.Node_RuleVariable;
 
 import org.apache.stanbol.rules.base.SWRL;
 
+import sun.tools.jar.resources.jar;
+
 public class IndividualPropertyAtom extends CoreAtom {
 
 	
@@ -229,25 +235,49 @@ public class IndividualPropertyAtom exte
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		
 		String subject = argument1.toString();
+		
+		Node subjectNode = null;
 		if(subject.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
 			subject = "?" + subject.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			
+			//subjectNode = Node_RuleVariable.createVariable(subject);
+			subjectNode = new Node_RuleVariable(subject, jenaVariableMap.getVariableIndex(subject));
+		}
+		else{
+			subjectNode = Node_RuleVariable.createURI(subject);	
 		}
 		
 		String object = argument2.toString();
+		Node objectNode = null;
 		if(object.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
 			object = subject.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			if(object.startsWith("?")){
+				object = object.substring(1);
+			}
+			
+			object = "?" + object;
+			objectNode = new Node_RuleVariable(object, jenaVariableMap.getVariableIndex(object));
+		}
+		else{
+			objectNode = Node_RuleVariable.createURI(object);
 		}
 		
 		String predicate = objectProperty.toString();
+		Node predicateNode = null;
 		if(predicate.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
-			predicate = "?" + predicate.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			predicate = predicate.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			//predicateNode = Node_RuleVariable.createVariable(predicate);
+			predicateNode = new Node_RuleVariable(predicate, 2);
+		}
+		else{
+			predicateNode = Node_RuleVariable.createURI(predicate);
 		}
 		
-		ClauseEntry clauseEntry = new TriplePattern(Node.createURI(subject), Node.createURI(predicate), Node.createURI(object));
-		return clauseEntry;
+		ClauseEntry clauseEntry = new TriplePattern(subjectNode, predicateNode, objectNode);
+		return new JenaClauseEntryImpl(clauseEntry, jenaVariableMap);
 	}
 
 	

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IsBlankAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IsBlankAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IsBlankAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/IsBlankAtom.java Mon Nov 28 15:31:24 2011
@@ -16,19 +16,16 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
-import java.util.ArrayList;
-
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
 import org.apache.stanbol.rules.manager.SPARQLComparison;
 import org.semanticweb.owlapi.model.OWLDataFactory;
 import org.semanticweb.owlapi.model.SWRLAtom;
 
-import com.hp.hpl.jena.graph.Node;
 import com.hp.hpl.jena.rdf.model.Model;
 import com.hp.hpl.jena.rdf.model.Resource;
-import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
-import com.hp.hpl.jena.reasoner.rulesys.Functor;
 
 
 public class IsBlankAtom extends ComparisonAtom {
@@ -93,8 +90,10 @@ public class IsBlankAtom extends Compari
 	
 	
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		
+		/*
+		 * TODO
 		String argument = uriResource.toString();
 		if(argument.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
 			argument = "?" + argument.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
@@ -105,6 +104,8 @@ public class IsBlankAtom extends Compari
 		nodes.add(Node.createURI(argument));
 		
 		return new Functor("isBNode", nodes);
+		*/
+		return null;
 	}
 	
 }

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LengthAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LengthAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LengthAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LengthAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -23,7 +25,6 @@ import org.semanticweb.owlapi.model.SWRL
 
 import com.hp.hpl.jena.rdf.model.Model;
 import com.hp.hpl.jena.rdf.model.Resource;
-import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
 
 
 public class LengthAtom extends NumericFunctionAtom {
@@ -60,7 +61,7 @@ public class LengthAtom extends NumericF
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LessThanAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LessThanAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LessThanAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LessThanAtom.java Mon Nov 28 15:31:24 2011
@@ -19,8 +19,12 @@ package org.apache.stanbol.rules.manager
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
+import org.apache.stanbol.rules.manager.JenaClauseEntryImpl;
+import org.apache.stanbol.rules.manager.JenaVariableMapImpl;
 import org.apache.stanbol.rules.manager.SPARQLComparison;
 import org.semanticweb.owlapi.apibinding.OWLManager;
 import org.semanticweb.owlapi.model.IRI;
@@ -37,6 +41,7 @@ import com.hp.hpl.jena.rdf.model.Resourc
 import com.hp.hpl.jena.reasoner.rulesys.BuiltinRegistry;
 import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
 import com.hp.hpl.jena.reasoner.rulesys.Functor;
+import com.hp.hpl.jena.reasoner.rulesys.Node_RuleVariable;
 import com.hp.hpl.jena.vocabulary.XSD;
 
 
@@ -235,22 +240,33 @@ public class LessThanAtom extends Compar
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
+		Node arg1Node = null;
+		Node arg2Node = null;
+		
 		String arg1 = argument1.toString();
 		if(arg1.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
-			arg1 = "?" + arg1.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			arg1 = arg1.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			arg1Node = new Node_RuleVariable(arg1, jenaVariableMap.getVariableIndex(arg1));
+		}
+		else{
+			arg1Node = getTypedLiteral(argument1);
 		}
 		
 		String arg2 = argument2.toString();
 		if(arg2.startsWith("http://kres.iks-project.eu/ontology/meta/variables#")){
-			arg2 = "?" + arg2.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			arg2 = arg2.replace("http://kres.iks-project.eu/ontology/meta/variables#", "");
+			arg2Node = new Node_RuleVariable(arg2, jenaVariableMap.getVariableIndex(arg2));
+		}
+		else{
+			arg2Node = getTypedLiteral(argument2);
 		}
 		
 		java.util.List<Node> nodes = new ArrayList<Node>();
 		
-		nodes.add(Node.createURI(arg1));
-		nodes.add(Node.createURI(arg2));
+		nodes.add(arg1Node);
+		nodes.add(arg2Node);
 		
-		return new Functor("lessThan", nodes, new BuiltinRegistry());
+		return new JenaClauseEntryImpl(new Functor("lessThan", nodes, new BuiltinRegistry()), jenaVariableMap);
 	}
 }

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LetAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LetAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LetAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LetAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.RuleAtom;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
@@ -25,7 +27,6 @@ import org.semanticweb.owlapi.model.SWRL
 
 import com.hp.hpl.jena.rdf.model.Model;
 import com.hp.hpl.jena.rdf.model.Resource;
-import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
 
 
 public class LetAtom implements RuleAtom {
@@ -87,7 +88,7 @@ public class LetAtom implements RuleAtom
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LocalNameAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LocalNameAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LocalNameAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LocalNameAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
@@ -70,7 +72,7 @@ public class LocalNameAtom extends Strin
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LowerCaseAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LowerCaseAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LowerCaseAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/LowerCaseAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -74,7 +76,7 @@ public class LowerCaseAtom extends Strin
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NamespaceAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NamespaceAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NamespaceAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NamespaceAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
@@ -70,7 +72,7 @@ private URIResource uriResource;
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NewNodeAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NewNodeAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NewNodeAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NewNodeAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.RuleAtom;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
@@ -101,7 +103,7 @@ public class NewNodeAtom implements Rule
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NotAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NotAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NotAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NotAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLComparison;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -61,7 +63,7 @@ public class NotAtom extends ComparisonA
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NumberAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NumberAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NumberAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/NumberAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -70,7 +72,7 @@ public class NumberAtom extends NumericF
 
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/PropStringAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/PropStringAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/PropStringAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/PropStringAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -72,7 +74,7 @@ public class PropStringAtom extends Stri
 
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLcAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLcAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLcAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLcAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -57,7 +59,7 @@ public class SPARQLcAtom extends SPARQLC
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLdAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLdAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLdAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLdAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -57,7 +59,7 @@ public class SPARQLdAtom extends SPARQLD
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLddAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLddAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLddAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SPARQLddAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -57,7 +59,7 @@ private String sparqlConstruct;
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SameAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SameAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SameAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SameAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLComparison;
 import org.semanticweb.owlapi.apibinding.OWLManager;
@@ -102,7 +104,7 @@ public class SameAtom extends Comparison
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StartsWithAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StartsWithAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StartsWithAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StartsWithAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLComparison;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -67,7 +69,7 @@ public class StartsWithAtom extends Comp
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StrAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StrAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StrAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StrAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.URIResource;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
@@ -74,7 +76,7 @@ public class StrAtom extends StringFunct
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StringAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StringAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StringAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/StringAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -64,7 +66,7 @@ public class StringAtom extends StringFu
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubstringAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubstringAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubstringAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubstringAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -78,7 +80,7 @@ public class SubstringAtom extends Strin
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubtractionAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubtractionAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubtractionAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SubtractionAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -63,7 +65,7 @@ public class SubtractionAtom extends Num
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SumAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SumAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SumAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/SumAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -63,7 +65,7 @@ public class SumAtom extends NumericFunc
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UObjectAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UObjectAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UObjectAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UObjectAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -110,7 +112,7 @@ public class UObjectAtom extends StringF
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UnionAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UnionAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UnionAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UnionAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.RuleAtom;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.base.api.util.AtomList;
@@ -114,7 +116,7 @@ public class UnionAtom implements RuleAt
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UpperCaseAtom.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UpperCaseAtom.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UpperCaseAtom.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/atoms/UpperCaseAtom.java Mon Nov 28 15:31:24 2011
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.rules.manager.atoms;
 
+import org.apache.stanbol.rules.base.api.JenaClauseEntry;
+import org.apache.stanbol.rules.base.api.JenaVariableMap;
 import org.apache.stanbol.rules.base.api.SPARQLObject;
 import org.apache.stanbol.rules.manager.SPARQLFunction;
 import org.semanticweb.owlapi.model.OWLDataFactory;
@@ -74,7 +76,7 @@ public class UpperCaseAtom extends Strin
 	}
 
 	@Override
-	public ClauseEntry toJenaClauseEntry() {
+	public JenaClauseEntry toJenaClauseEntry(JenaVariableMap jenaVariableMap) {
 		// TODO Auto-generated method stub
 		return null;
 	}

Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java?rev=1207299&r1=1207298&r2=1207299&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImpl.java Mon Nov 28 15:31:24 2011
@@ -1,14 +1,21 @@
 /* Generated By:JavaCC: Do not edit this line. RuleParserImpl.java */
 package org.apache.stanbol.rules.manager.parse;
 
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.io.OutputStream;
 import java.io.Reader;
 import java.io.StringReader;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.util.Iterator;
+import java.util.List;
 
+import org.apache.stanbol.rules.base.api.Recipe;
 import org.apache.stanbol.rules.base.api.Rule;
 import org.apache.stanbol.rules.base.api.RuleAtom;
 import org.apache.stanbol.rules.base.api.RuleExpressiveness;
@@ -54,14 +61,62 @@ import org.apache.stanbol.rules.manager.
 import org.apache.stanbol.rules.manager.atoms.UnionAtom;
 import org.apache.stanbol.rules.manager.atoms.UpperCaseAtom;
 import org.apache.stanbol.rules.manager.atoms.VariableAtom;
+import org.apache.stanbol.rules.manager.changes.RecipeImpl;
+import org.semanticweb.owlapi.model.IRI;
 
+import com.hp.hpl.jena.ontology.OntModel;
+import com.hp.hpl.jena.ontology.OntModelSpec;
+import com.hp.hpl.jena.rdf.model.InfModel;
 import com.hp.hpl.jena.rdf.model.ModelFactory;
 import com.hp.hpl.jena.rdf.model.Resource;
+import com.hp.hpl.jena.reasoner.rulesys.ClauseEntry;
+import com.hp.hpl.jena.reasoner.rulesys.GenericRuleReasoner;
+import com.hp.hpl.jena.util.FileManager;
+import com.hp.hpl.jena.vocabulary.OWL2;
 
 public class RuleParserImpl implements RuleParserConstants {
 
 	static KB kb;
 
+	public static void main(String[] args){
+		try {
+			KB kb = RuleParserImpl.parse(new FileInputStream(new File("/Users/mac/Downloads/recipe1.txt")));
+			
+			Recipe recipe = new RecipeImpl(IRI.create("bla"), "bla", kb.getkReSRuleList());
+			
+			List<com.hp.hpl.jena.reasoner.rulesys.Rule> rules = recipe.toJenaRules();
+			
+			for(com.hp.hpl.jena.reasoner.rulesys.Rule rule : rules){
+				System.out.println(rule.toString() + " " + rule.getNumVars());
+				
+				
+				ClauseEntry[] clauseEntries = rule.getBody();
+				for(ClauseEntry clauseEntry : clauseEntries){
+					
+					System.out.println(clauseEntry.toString());
+				}
+			}
+			
+			GenericRuleReasoner reasoner = new GenericRuleReasoner(rules);
+			reasoner.setOWLTranslation(true);               // not needed in RDFS case
+			reasoner.setTransitiveClosureCaching(true);
+			  
+			InfModel inf = ModelFactory.createInfModel(reasoner, FileManager.get().loadModel("/Users/mac/Downloads/mubarak.rdf"));
+			
+			OntModel ontModel = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM, inf);
+			OutputStream outputStream = new FileOutputStream(new File("prova"));
+			ontModel.writeAll(outputStream, null, null);
+			
+			for(com.hp.hpl.jena.reasoner.rulesys.Rule rule : rules){
+				System.out.println(rule.toString());
+			}
+		} catch (FileNotFoundException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+	}
+	
+	
 	public static KB parse( String inString ) {
 	
         kb = new KB();