From: <sk...@us...> - 2008-03-27 13:26:17
|
Revision: 732 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=732&view=rev Author: sknappe Date: 2008-03-27 06:26:15 -0700 (Thu, 27 Mar 2008) Log Message: ----------- deleted variable in Description a web service method now exists to get instances to a certain concept Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/core/owl/Description.java trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQueryDescriptionConvertVisitor.java trunk/src/dl-learner/org/dllearner/server/DLLearnerWS.java Modified: trunk/src/dl-learner/org/dllearner/core/owl/Description.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/owl/Description.java 2008-03-27 08:26:58 UTC (rev 731) +++ trunk/src/dl-learner/org/dllearner/core/owl/Description.java 2008-03-27 13:26:15 UTC (rev 732) @@ -33,8 +33,7 @@ protected Description parent = null; protected List<Description> children = new LinkedList<Description>(); - protected String sparqlVar = "subject"; - + public abstract int getArity(); /** @@ -202,11 +201,4 @@ public abstract void accept(DescriptionVisitor visitor); - public String getSparqlVar() { - return sparqlVar; - } - - public void setSparqlVar(String sparqlVar) { - this.sparqlVar = sparqlVar; - } } Modified: trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQueryDescriptionConvertVisitor.java =================================================================== --- trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQueryDescriptionConvertVisitor.java 2008-03-27 08:26:58 UTC (rev 731) +++ trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQueryDescriptionConvertVisitor.java 2008-03-27 13:26:15 UTC (rev 732) @@ -1,6 +1,8 @@ package org.dllearner.kb.sparql; +import java.util.Stack; + import org.dllearner.algorithms.gp.ADC; import org.dllearner.core.owl.DatatypeExactCardinalityRestriction; import org.dllearner.core.owl.DatatypeMaxCardinalityRestriction; @@ -32,10 +34,17 @@ */ public class SparqlQueryDescriptionConvertVisitor implements DescriptionVisitor{ + private Stack<String> stack = new Stack<String>(); + private String query=""; private int currentObject=0; + public SparqlQueryDescriptionConvertVisitor() + { + stack.push("subject"); + } + public String getSparqlQuery() { query="SELECT ?subject\nWHERE {"+query; @@ -44,6 +53,14 @@ return query; } + public static String getSparqlQuery(String description) throws ParseException + { + Description d = KBParser.parseConcept(description); + SparqlQueryDescriptionConvertVisitor visitor=new SparqlQueryDescriptionConvertVisitor(); + d.accept(visitor); + return visitor.getSparqlQuery(); + } + public static String getSparqlQuery(Description description) { SparqlQueryDescriptionConvertVisitor visitor=new SparqlQueryDescriptionConvertVisitor(); @@ -58,7 +75,7 @@ */ public static void main(String[] args) { try { - Description d = KBParser.parseConcept("EXISTS \"http://dbpedia.org/property/disambiguates\".TOP"); + String d = "EXISTS \"http://dbpedia.org/property/disambiguates\".TOP"; String query = SparqlQueryDescriptionConvertVisitor.getSparqlQuery(d); System.out.println(d); System.out.println(query); @@ -87,10 +104,11 @@ */ public void visit(ObjectSomeRestriction description) { System.out.println("ObjectSomeRestriction"); - query+="?"+description.getSparqlVar()+" <"+description.getRole()+"> ?object"+currentObject+"."; - description.getChild(0).setSparqlVar("object"+currentObject); + query+="?"+stack.peek()+" <"+description.getRole()+"> ?object"+currentObject+"."; + stack.push("object"+currentObject); currentObject++; description.getChild(0).accept(this); + stack.pop(); System.out.println(description.getRole()); System.out.println(description.getChild(0)); } @@ -173,7 +191,7 @@ */ public void visit(NamedClass description) { System.out.println("NamedClass"); - query+="?"+description.getSparqlVar()+" a <"+description.getName()+">"; + query+="?"+stack.peek()+" a <"+description.getName()+">"; } /* (non-Javadoc) Modified: trunk/src/dl-learner/org/dllearner/server/DLLearnerWS.java =================================================================== --- trunk/src/dl-learner/org/dllearner/server/DLLearnerWS.java 2008-03-27 08:26:58 UTC (rev 731) +++ trunk/src/dl-learner/org/dllearner/server/DLLearnerWS.java 2008-03-27 13:26:15 UTC (rev 732) @@ -522,10 +522,10 @@ } @WebMethod - public int sparqlQueryThreaded(int sessionID, int componentID, final String query) throws ClientNotKnownException + public int sparqlQueryThreaded(int sessionID, int componentID, String query) throws ClientNotKnownException { final ClientState state = getState(sessionID); - final Component component = state.getComponent(componentID); + Component component = state.getComponent(componentID); final int id=state.addQuery(((SparqlKnowledgeSource)component).sparqlQueryThreaded(query)); Thread sparqlThread = new Thread() { @Override @@ -591,10 +591,11 @@ } @WebMethod - public String getSparqlForConcept(int id) throws ClientNotKnownException { + public void SparqlRetrievalThreaded(int id, int componentID, String conceptString) throws ClientNotKnownException, ParseException { ClientState state = getState(id); - Description solution=state.getLearningAlgorithm().getBestSolution(); - return SparqlQueryDescriptionConvertVisitor.getSparqlQuery(solution); + // call parser to parse concept + String sparqlQuery = SparqlQueryDescriptionConvertVisitor.getSparqlQuery(conceptString); + sparqlQueryThreaded(id, componentID,sparqlQuery); } @WebMethod This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |