Index: SPARQLBuilderWWW/src/java/org/biohackathon/SPARQLBuilder/www/SPServlet.java
===================================================================
--- SPARQLBuilderWWW/src/java/org/biohackathon/SPARQLBuilder/www/SPServlet.java (revision 136)
+++ SPARQLBuilderWWW/src/java/org/biohackathon/SPARQLBuilder/www/SPServlet.java (revision 142)
@@ -9,4 +9,6 @@
 import java.io.IOException;
 import java.io.PrintWriter;
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Iterator;
 import java.util.List;
@@ -78,5 +80,5 @@
 	PrintWriter out = response.getWriter();
         String jpath = request.getParameter("jsonpath");
-        Path path = null;
+       List<String> path = null;
         try {
             path = convertJ2Path(jpath);
@@ -119,7 +121,25 @@
     }// </editor-fold>
 
-    private Path convertJ2Path(String jpath) throws JSONException{
+    private List<String> convertJ2Path(String jpath) throws JSONException{
   
-       JSONObject object = new JSONObject(jpath);
+        
+       JSONArray classLinks=new JSONArray(jpath);
+       
+       String string;
+       List <String> list = null;
+       for (int i=0;i<classLinks.length();i++) 
+       {
+            string = classLinks.getJSONObject(i).toString(); 
+            if (string.contains(",")) {
+             list =Arrays.asList(string.split(","));
+              
+       } else 
+          throw new IllegalArgumentException("path error");
+               
+         }
+            
+          return list;    
+        
+    /*  JSONObject object = new JSONObject(jpath);
        String startClass = object.getJSONObject("startClassURI").toString();
        int width = Integer.parseInt(object.getJSONObject("width").toString());
@@ -146,14 +166,18 @@
            list.add(classLink);
            }
-          Path path = new Path(startClass,  list,  width);
+           Path path = new Path(startClass,  list,  width);
           return path;
+       */
+      
+         
     }
   
-    private String convertPath2SPARQL(Path path) throws Exception{
+    private String convertPath2SPARQL(List<String> path) throws Exception{
         if( path == null ){
 			throw new Exception("Path is null.");
 		}
-		String startClass = path.getStartClass();
-		List<ClassLink> classLinks = path.getClassLinks();
+        
+		              
+		//List<String> classLinks = path.getClassLinks();
 		
 		StringBuffer queryStr = new StringBuffer();
@@ -161,5 +185,5 @@
 		StringBuffer whereStr = new StringBuffer();
 	//	if(num==0){
-			int num = classLinks.size();
+		//	int num = classLinks.size();
 	//	}
 			
@@ -176,9 +200,21 @@
 		int i = 0;
 		int k = 0;
-		for (ClassLink link :classLinks )
+                
+                String startClass = path.get(path.size()-1);
+                List<String> classLinks = null;
+         //      ArrayList<String> array= (String[])path.toArray();
+              
+            //    classLinks.add(path.get(i));
+               
+                int num =(path.size()-1)/2;
+                
+		 for(int j=path.size()-2;j>0;j=j-2) 
 		{
-			properties = link.getPropertyURI();
-			objectClasses = link.getLinkedClassURI();
-			direction = link.getDirection();
+		//	properties = link.getPropertyURI();
+		//	objectClasses = link.getLinkedClassURI();
+		//	direction = link.getDirection();
+                   properties =  path.get(j);
+                   objectClasses = path.get(j-1);
+                   direction = Direction.forward;
 			
 			if (i==0)
