From: <jen...@us...> - 2011-08-31 16:53:57
|
Revision: 3193 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=3193&view=rev Author: jenslehmann Date: 2011-08-31 16:53:51 +0000 (Wed, 31 Aug 2011) Log Message: ----------- removed depdendency on aksw-commons sparql-scala; changed code to firt aksw-commons-0.1 Modified Paths: -------------- trunk/components-core/src/main/java/org/dllearner/core/AnnComponentManager.java trunk/components-core/src/main/java/org/dllearner/reasoning/SPARQLReasoner.java trunk/components-ext/pom.xml trunk/components-ext/src/test/java/org/dllearner/algorithm/tbsl/Evaluation.java trunk/pom.xml trunk/scripts/pom.xml trunk/scripts/src/main/java/org/dllearner/scripts/improveWikipedia/DBpediaClassLearnerCELOE.java Modified: trunk/components-core/src/main/java/org/dllearner/core/AnnComponentManager.java =================================================================== --- trunk/components-core/src/main/java/org/dllearner/core/AnnComponentManager.java 2011-08-31 16:25:26 UTC (rev 3192) +++ trunk/components-core/src/main/java/org/dllearner/core/AnnComponentManager.java 2011-08-31 16:53:51 UTC (rev 3193) @@ -19,20 +19,16 @@ package org.dllearner.core; -import java.lang.annotation.Annotation; import java.lang.reflect.Constructor; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; -import java.util.HashMap; import java.util.HashSet; import java.util.LinkedList; import java.util.List; -import java.util.Map; import org.apache.commons.collections15.BidiMap; import org.apache.commons.collections15.bidimap.DualHashBidiMap; -import org.apache.commons.lang.ClassUtils; /** * Component manager for the new (as of 2011) annotation based configuration @@ -175,7 +171,7 @@ for(Constructor<?> constructor : constructors) { Class<?>[] paraTypes = constructor.getParameterTypes(); for(Class<?> paraType : paraTypes) { - if(ClassUtils.isAssignable(argument, paraType)) { + if(org.springframework.util.ClassUtils.isAssignable(argument, paraType)) { return true; } } @@ -197,9 +193,10 @@ try { Constructor<?>[] constructors = compound.getDeclaredConstructors(); for(Constructor<?> constructor : constructors) { - if(ClassUtils.isAssignable(arguments, constructor.getParameterTypes())) { + // TODO: ClassUtils is no longer in the dependencies +// if(ClassUtils.isAssignable(arguments, constructor.getParameterTypes())) { return true; - } +// } } } catch (SecurityException e) { e.printStackTrace(); Modified: trunk/components-core/src/main/java/org/dllearner/reasoning/SPARQLReasoner.java =================================================================== --- trunk/components-core/src/main/java/org/dllearner/reasoning/SPARQLReasoner.java 2011-08-31 16:25:26 UTC (rev 3192) +++ trunk/components-core/src/main/java/org/dllearner/reasoning/SPARQLReasoner.java 2011-08-31 16:53:51 UTC (rev 3193) @@ -173,18 +173,20 @@ } private Model loadIncrementally(String query){ - try { +// try { QueryExecutionFactory f = new QueryExecutionFactoryHttp(ks.getEndpoint().getURL().toString(), ks.getEndpoint().getDefaultGraphURIs()); - f = new QueryExecutionFactoryCache(f, new CacheImpl(CacheCoreH2.create("cache", 60 * 24 *5))); +// f = new QueryExecutionFactoryCache(f, new CacheImpl(CacheCoreH2.create("cache", 60 * 24 *5))); + System.out.println("SPARQLReasoner.loadIncrementally needs to be rewritten for aksw-commons 0.1"); + System.exit(0); f = new QueryExecutionFactoryPaginated(f, 1000); Model model = f.createQueryExecution(query).execConstruct(); return model; - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } catch (SQLException e) { - e.printStackTrace(); - } - return null; +// } catch (ClassNotFoundException e) { +// e.printStackTrace(); +// } catch (SQLException e) { +// e.printStackTrace(); +// } +// return null; } @Override Modified: trunk/components-ext/pom.xml =================================================================== --- trunk/components-ext/pom.xml 2011-08-31 16:25:26 UTC (rev 3192) +++ trunk/components-ext/pom.xml 2011-08-31 16:53:51 UTC (rev 3193) @@ -53,10 +53,6 @@ <artifactId>sparql</artifactId> </dependency> <dependency> - <groupId>org.aksw.commons</groupId> - <artifactId>sparql-scala</artifactId> - </dependency> - <dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-core</artifactId> <version>3.3.0</version> Modified: trunk/components-ext/src/test/java/org/dllearner/algorithm/tbsl/Evaluation.java =================================================================== --- trunk/components-ext/src/test/java/org/dllearner/algorithm/tbsl/Evaluation.java 2011-08-31 16:25:26 UTC (rev 3192) +++ trunk/components-ext/src/test/java/org/dllearner/algorithm/tbsl/Evaluation.java 2011-08-31 16:53:51 UTC (rev 3193) @@ -7,6 +7,7 @@ import java.net.MalformedURLException; import java.net.URL; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.HashMap; @@ -25,9 +26,6 @@ import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; -import org.aksw.commons.sparql.core.SparqlEndpoint; -import org.aksw.commons.sparql.core.decorator.CachingSparqlEndpoint; -import org.aksw.commons.sparql.core.impl.HttpSparqlEndpoint; import org.apache.log4j.FileAppender; import org.apache.log4j.Layout; import org.apache.log4j.Level; @@ -39,14 +37,13 @@ import org.dllearner.algorithm.tbsl.sparql.Slot; import org.dllearner.algorithm.tbsl.sparql.Template; import org.dllearner.algorithm.tbsl.util.LatexWriter; +import org.dllearner.kb.sparql.SparqlEndpoint; import org.w3c.dom.DOMException; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; -import scala.actors.threadpool.Arrays; - import com.hp.hpl.jena.query.QuerySolution; import com.hp.hpl.jena.query.ResultSet; import com.hp.hpl.jena.rdf.model.RDFNode; @@ -96,7 +93,8 @@ String endpointURL = props.getProperty("endpointURL", "http://live.dbpedia.org/sparql"); String defaultGraphURI = props.getProperty("defaultGraphURI", "http://live.dbpedia.org"); - this.endpoint = new CachingSparqlEndpoint(new HttpSparqlEndpoint(endpointURL, defaultGraphURI), "cache"); + // TODO: use aksw-commons-sparql instead of sparql-scala +// this.endpoint = new CachingSparqlEndpoint(new HttpSparqlEndpoint(endpointURL, defaultGraphURI), "cache"); try { stbl.setEndpoint(new org.dllearner.kb.sparql.SparqlEndpoint( new URL(endpointURL), Collections.singletonList(defaultGraphURI), Collections.<String>emptyList())); @@ -181,12 +179,13 @@ private Set<String> getResources(String query){ Set<String> resources = new HashSet<String>(); - ResultSet rs = endpoint.executeSelect(query); - QuerySolution qs; - while(rs.hasNext()){ - qs = rs.next(); - resources.add(qs.getResource("uri").getURI()); - } + // TODO: use aksw-commons-sparql instead of sparql-scala +// ResultSet rs = endpoint.executeSelect(query); +// QuerySolution qs; +// while(rs.hasNext()){ +// qs = rs.next(); +// resources.add(qs.getResource("uri").getURI()); +// } return resources; } @@ -195,6 +194,8 @@ logger.debug("Query: " + query); Object answer = null; + // TODO: use aksw-commons-sparql instead of sparql-scala + /* if(query.contains("ASK")){ answer = endpoint.executeAsk(query); } else { @@ -225,10 +226,13 @@ } } logger.debug("Answer: " + answer); + */ return answer; } public void setEndpoint(SparqlEndpoint endpoint){ + // TODO: use aksw-commons-sparql instead of sparql-scala + /* this.endpoint = endpoint; try { stbl.setEndpoint(new org.dllearner.kb.sparql.SparqlEndpoint( @@ -236,6 +240,7 @@ } catch (MalformedURLException e) { e.printStackTrace(); } + */ } public void setUseRemoteValidation(boolean useRemoteValidation){ Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2011-08-31 16:25:26 UTC (rev 3192) +++ trunk/pom.xml 2011-08-31 16:53:51 UTC (rev 3193) @@ -16,7 +16,7 @@ <gwt.version>2.3.0</gwt.version> <!--Define the AKSW dependency version --> - <aksw.version>0.2-SNAPSHOT</aksw.version> + <aksw.version>0.1</aksw.version> </properties> <modules> @@ -279,11 +279,6 @@ </dependency> <dependency> <groupId>org.aksw.commons</groupId> - <artifactId>sparql-scala</artifactId> - <version>${aksw.version}</version> - </dependency> - <dependency> - <groupId>org.aksw.commons</groupId> <artifactId>model</artifactId> <version>${aksw.version}</version> </dependency> Modified: trunk/scripts/pom.xml =================================================================== --- trunk/scripts/pom.xml 2011-08-31 16:25:26 UTC (rev 3192) +++ trunk/scripts/pom.xml 2011-08-31 16:53:51 UTC (rev 3193) @@ -55,10 +55,6 @@ <groupId>org.aksw.commons</groupId> <artifactId>sparql</artifactId> </dependency> - <dependency> - <groupId>org.aksw.commons</groupId> - <artifactId>sparql-scala</artifactId> - </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> Modified: trunk/scripts/src/main/java/org/dllearner/scripts/improveWikipedia/DBpediaClassLearnerCELOE.java =================================================================== --- trunk/scripts/src/main/java/org/dllearner/scripts/improveWikipedia/DBpediaClassLearnerCELOE.java 2011-08-31 16:25:26 UTC (rev 3192) +++ trunk/scripts/src/main/java/org/dllearner/scripts/improveWikipedia/DBpediaClassLearnerCELOE.java 2011-08-31 16:53:51 UTC (rev 3193) @@ -30,11 +30,6 @@ import java.util.SortedSet; import java.util.TreeSet; -import org.aksw.commons.sparql.core.ResultSetRenderer; -import org.aksw.commons.sparql.core.SparqlEndpoint; -import org.aksw.commons.sparql.core.SparqlTemplate; -import org.aksw.commons.sparql.core.decorator.CachingSparqlEndpoint; -import org.aksw.commons.sparql.core.impl.HttpSparqlEndpoint; import org.apache.velocity.VelocityContext; import org.dllearner.algorithms.celoe.CELOE; import org.dllearner.core.AbstractReasonerComponent; @@ -62,7 +57,11 @@ /** * A script, which learns definitions / super classes of classes in the DBpedia ontology. * + * TODO: This script made heavy use of aksw-commons-sparql-scala and needs to be + * rewritten to use aksw-commons-sparql (the new SPARQL API). + * * @author Jens Lehmann + * @author Sebastian Hellmann */ public class DBpediaClassLearnerCELOE { @@ -71,7 +70,7 @@ private static org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(DBpediaClassLearnerCELOE.class); - SparqlEndpoint sparqlEndpoint = new CachingSparqlEndpoint(new HttpSparqlEndpoint(endpointurl, "http://dbpedia.org"), "cache/"); +// SparqlEndpoint sparqlEndpoint = new CachingSparqlEndpoint(new HttpSparqlEndpoint(endpointurl, "http://dbpedia.org"), "cache/"); public DBpediaClassLearnerCELOE() { // OPTIONAL: if you want to do some case distinctions in the learnClass method, you could add @@ -81,10 +80,10 @@ public static void main(String args[]) throws LearningProblemUnsupportedException, IOException, Exception { DBpediaClassLearnerCELOE dcl = new DBpediaClassLearnerCELOE(); - Set<String> classesToLearn = dcl.getClasses(); - - KB kb = dcl.learnAllClasses(classesToLearn); - kb.export(new File("result.owl"), OntologyFormat.RDF_XML); +// Set<String> classesToLearn = dcl.getClasses(); +// +// KB kb = dcl.learnAllClasses(classesToLearn); +// kb.export(new File("result.owl"), OntologyFormat.RDF_XML); } @@ -109,7 +108,8 @@ } public Description learnClass(String classToLearn) throws Exception { - SortedSet<String> posEx = new TreeSet<String>(getPosEx(classToLearn)); + // TODO: use aksw-commons-sparql instead of sparql-scala + SortedSet<String> posEx = null; // = new TreeSet<String>(getPosEx(classToLearn)); logger.info("Found " + posEx.size() + " positive examples"); if (posEx.isEmpty()) { return null; @@ -182,27 +182,26 @@ return la.getCurrentlyBestDescription(); } - //gets all DBpedia Classes - public Set<String> getClasses() throws Exception { - SparqlTemplate st = SparqlTemplate.getInstance("allClasses.vm"); - st.setLimit(0); - st.addFilter(sparqlEndpoint.like("classes", new HashSet<String>(Arrays.asList(new String[]{"http://dbpedia.org/ontology/"})))); - VelocityContext vc = st.getVelocityContext(); - String query = st.getQuery(); - return new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query))); - } +// public Set<String> getClasses() throws Exception { +// SparqlTemplate st = SparqlTemplate.getInstance("allClasses.vm"); +// st.setLimit(0); +// st.addFilter(sparqlEndpoint.like("classes", new HashSet<String>(Arrays.asList(new String[]{"http://dbpedia.org/ontology/"})))); +// VelocityContext vc = st.getVelocityContext(); +// String query = st.getQuery(); +// return new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query))); +// } +// +// public Set<String> getPosEx(String clazz) throws Exception { +// SparqlTemplate st = SparqlTemplate.getInstance("instancesOfClass.vm"); +// st.setLimit(0); +// VelocityContext vc = st.getVelocityContext(); +// System.out.println(clazz); +// vc.put("class", clazz); +// String query = st.getQuery(); +// return new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query))); +// } - public Set<String> getPosEx(String clazz) throws Exception { - SparqlTemplate st = SparqlTemplate.getInstance("instancesOfClass.vm"); - st.setLimit(0); - VelocityContext vc = st.getVelocityContext(); - System.out.println(clazz); - vc.put("class", clazz); - String query = st.getQuery(); - return new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query))); - } - /** * gets all direct classes of all instances and has a look, what the most common is * @@ -213,7 +212,8 @@ */ public String selectClass(String clazz, Set<String> posEx) throws Exception { Map<String, Integer> m = new HashMap<String, Integer>(); - + // TODO: use aksw-commons-sparql instead of sparql-scala + /* for (String pos : posEx) { SparqlTemplate st = SparqlTemplate.getInstance("directClassesOfInstance.vm"); st.setLimit(0); @@ -230,8 +230,8 @@ m.put(s, m.get(s).intValue() + 1); } } + */ - int max = 0; String maxClass = ""; for (String key : m.keySet()) { @@ -239,6 +239,7 @@ maxClass = key; } } + return maxClass; } @@ -253,6 +254,8 @@ public Set<String> getNegEx(String clazz, Set<String> posEx) throws Exception { Set<String> negEx = new HashSet<String>(); + // TODO: use aksw-commons-sparql instead of sparql-scala + /* String targetClass = getParallelClass(clazz); logger.info("using class for negatives: " + targetClass); if (targetClass != null) { @@ -261,18 +264,19 @@ st.setLimit(0); VelocityContext vc = st.getVelocityContext(); vc.put("class", targetClass); - st.addFilter(sparqlEndpoint.like("class", new HashSet<String>(Arrays.asList(new String[]{"http://dbpedia.org/ontology/"})))); +// st.addFilter(sparqlEndpoint.like("class", new HashSet<String>(Arrays.asList(new String[]{"http://dbpedia.org/ontology/"})))); String query = st.getQuery(); - negEx.addAll(new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query)))); +// negEx.addAll(new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query)))); } else { SparqlTemplate st = SparqlTemplate.getInstance("someInstances.vm"); st.setLimit(posEx.size() + 100); VelocityContext vc = st.getVelocityContext(); String query = st.getQuery(); - negEx.addAll(new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query)))); +// negEx.addAll(new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query)))); } negEx.removeAll(posEx); + */ return negEx; @@ -280,15 +284,16 @@ public String getParallelClass(String clazz) throws Exception { - SparqlTemplate st = SparqlTemplate.getInstance("parallelClass.vm"); - st.setLimit(0); - VelocityContext vc = st.getVelocityContext(); - vc.put("class", clazz); - String query = st.getQuery(); - Set<String> parClasses = new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query))); - for (String s : parClasses) { - return s; - } + // TODO: use aksw-commons-sparql instead of sparql-scala +// SparqlTemplate st = SparqlTemplate.getInstance("parallelClass.vm"); +// st.setLimit(0); +// VelocityContext vc = st.getVelocityContext(); +// vc.put("class", clazz); +// String query = st.getQuery(); +// Set<String> parClasses = new HashSet<String>(ResultSetRenderer.asStringSet(sparqlEndpoint.executeSelect(query))); +// for (String s : parClasses) { +// return s; +// } return null; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |