From 79a0331bbb1c93f11ec2fc897050f52d55f51474 Mon Sep 17 00:00:00 2001
From: Thinh Dong <dnnthinh@gmail.com>
Date: Sat, 18 Aug 2012 21:55:28 +0000
Subject: [PATCH] EDOAL to SPARQL renderer

---
 .../exmo/align/cli/ParserPrinter.java         |  1 +
 .../renderer/GraphPatternRendererVisitor.java | 18 ++++++-----
 .../SPARQLConstructRendererVisitor.java       | 30 +++++++------------
 3 files changed, 21 insertions(+), 28 deletions(-)

diff --git a/src/fr/inrialpes/exmo/align/cli/ParserPrinter.java b/src/fr/inrialpes/exmo/align/cli/ParserPrinter.java
index 1e44d00c..cea055fe 100644
--- a/src/fr/inrialpes/exmo/align/cli/ParserPrinter.java
+++ b/src/fr/inrialpes/exmo/align/cli/ParserPrinter.java
@@ -209,6 +209,7 @@ public class ParserPrinter {
 	    	 File f = new File(dirName);
              f.mkdir();
 	    	System.setProperty("user.dir", dirName);
+	    	System.setProperty("Split", "true");
 	    }
 	    writer = new PrintWriter (
 			  new BufferedWriter(
diff --git a/src/fr/inrialpes/exmo/align/impl/renderer/GraphPatternRendererVisitor.java b/src/fr/inrialpes/exmo/align/impl/renderer/GraphPatternRendererVisitor.java
index 4972b3dd..71e1c690 100644
--- a/src/fr/inrialpes/exmo/align/impl/renderer/GraphPatternRendererVisitor.java
+++ b/src/fr/inrialpes/exmo/align/impl/renderer/GraphPatternRendererVisitor.java
@@ -179,7 +179,7 @@ public abstract class GraphPatternRendererVisitor extends IndentedRendererVisito
     public void createQueryFiles(String query) {
     	BufferedWriter out = null;
     	try {
-			FileWriter writer1 = new FileWriter(new File("").getAbsolutePath()+"query"+ number +".rq");
+			FileWriter writer1 = new FileWriter(new File("").getAbsolutePath()+"/query"+ number +".rq");
 			out = new BufferedWriter(writer1);
 			number++;
 			out.write(query);
@@ -1023,13 +1023,15 @@ public abstract class GraphPatternRendererVisitor extends IndentedRendererVisito
     }
 
     public void visit( final Value e ) throws AlignmentException {
-    	String str = e.getType().toString();
-    	int index;
-    	if (str.contains("#"))
-    		index = str.lastIndexOf("#");
-    	else
-    		index = str.lastIndexOf("/");
-    	uriType = str.substring(0, index+1);
+    	if (e.getType() != null) {
+	    	String str = e.getType().toString();
+	    	int index;
+	    	if (str.contains("#"))
+	    		index = str.lastIndexOf("#");
+	    	else
+	    		index = str.lastIndexOf("/");
+	    	uriType = str.substring(0, index+1);
+    	}
     	value = e.getValue();
     }
 	
diff --git a/src/fr/inrialpes/exmo/align/impl/renderer/SPARQLConstructRendererVisitor.java b/src/fr/inrialpes/exmo/align/impl/renderer/SPARQLConstructRendererVisitor.java
index 7a6e051f..c317a08e 100644
--- a/src/fr/inrialpes/exmo/align/impl/renderer/SPARQLConstructRendererVisitor.java
+++ b/src/fr/inrialpes/exmo/align/impl/renderer/SPARQLConstructRendererVisitor.java
@@ -1,31 +1,19 @@
 package fr.inrialpes.exmo.align.impl.renderer;
 
-
+import fr.inrialpes.exmo.align.impl.edoal.Expression;
 import java.io.PrintWriter;
-
 import org.semanticweb.owl.align.Alignment;
 import org.semanticweb.owl.align.AlignmentException;
 import org.semanticweb.owl.align.AlignmentVisitor;
 import org.semanticweb.owl.align.Cell;
 import org.semanticweb.owl.align.Relation;
-
-
-import fr.inrialpes.exmo.align.impl.Annotations;
-import fr.inrialpes.exmo.align.impl.BasicAlignment;
-import fr.inrialpes.exmo.align.impl.Namespace;
-import fr.inrialpes.exmo.align.parser.SyntaxElement;
-import fr.inrialpes.exmo.align.impl.edoal.Expression;
-import fr.inrialpes.exmo.ontowrap.Ontology;
-
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.Enumeration;
 import java.util.Hashtable;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Properties;
 
-
 public class SPARQLConstructRendererVisitor extends GraphPatternRendererVisitor implements AlignmentVisitor{
 
 
@@ -33,9 +21,7 @@ public class SPARQLConstructRendererVisitor extends GraphPatternRendererVisitor
     Cell cell = null;
     Hashtable<String,String> nslist = null;
 	boolean embedded = false;
-	
-	private static Namespace DEF = Namespace.ALIGNMENT;
-	
+		
 	private List<String> listBGP1;
 	private List<String> listBGP2;
 	 
@@ -105,8 +91,10 @@ public class SPARQLConstructRendererVisitor extends GraphPatternRendererVisitor
 				query += "WHERE {"+NL;
 				query += listBGP2.get(listBGP2.size()-1)+NL;    	    		
 				query += "}"+NL;
-				indentedOutputln(query);
-	    		createQueryFiles(query);
+				if(System.getProperty("Split")=="true")
+	    			createQueryFiles(query);
+	    		else
+	    			indentedOutputln(query);
 			}
 			query="";
     		
@@ -124,8 +112,10 @@ public class SPARQLConstructRendererVisitor extends GraphPatternRendererVisitor
 				query += "WHERE {"+NL;
 				query += listBGP1.get(listBGP1.size()-1)+NL;    	    		
 				query += "}"+NL;
-				indentedOutputln(query);
-	    		createQueryFiles(query);
+				if(System.getProperty("Split")=="true")
+	    			createQueryFiles(query);
+	    		else
+	    			indentedOutputln(query);
 			}    		   	       		    	
     	}
     
-- 
GitLab