Mercurial > repos > mikel-egana-aranguren > sparql_galaxy
diff src/es/cbgp/galaxy/sparql/jena/SPARQLQueryEngine.java @ 2:b8bf1af83841 draft
Paste query added, query engine improved, examples added
author | Mikel Egana Aranguren <mikel-egana-aranguren@toolshed.g2.bx.psu.edu> |
---|---|
date | Wed, 04 Dec 2013 08:17:00 +0100 |
parents | 137f9a4a6337 |
children |
line wrap: on
line diff
--- a/src/es/cbgp/galaxy/sparql/jena/SPARQLQueryEngine.java Thu Oct 25 18:35:25 2012 +0200 +++ b/src/es/cbgp/galaxy/sparql/jena/SPARQLQueryEngine.java Wed Dec 04 08:17:00 2013 +0100 @@ -4,16 +4,17 @@ import java.io.FileReader; import java.util.Iterator; -import com.hp.hpl.jena.ontology.OntModel; import com.hp.hpl.jena.query.*; +import com.hp.hpl.jena.rdf.model.Model; +import com.hp.hpl.jena.rdf.model.RDFNode; import com.hp.hpl.jena.shared.Lock; public class SPARQLQueryEngine { - private OntModel queryModel; + private Model queryModel; private String sparqlFile; - public SPARQLQueryEngine(OntModel om) { + public SPARQLQueryEngine(Model om) { this.queryModel = om; } @@ -33,9 +34,8 @@ Iterator<String> vars = qs.varNames(); while (vars.hasNext()) { String var = vars.next(); - if (!qs.getResource(var).isAnon()) { - res += "?" + var + "\t" + qs.getResource(var) + "\n"; - } + res += "?" + var + "\t" + getValue(qs, var) + "\r\n"; + } } return res; @@ -50,6 +50,38 @@ return null; } + private String getValue(QuerySolution qs, String var) { + RDFNode n = qs.get(var); + return n.toString(); + +// System.out.println("RDFNode (" + var + "): " + n); +// try { +// if (!qs.getResource(var).isAnon()) { +// if (qs.getResource(var).isResource()) { +// return qs.getResource(var).toString(); +// } +// if (qs.getResource(var).isLiteral()) { +// return qs.getLiteral(var).toString(); +// } +// } +// } catch (Exception e) { +// +// } +// try { +// if (!qs.getLiteral(var).isAnon()) { +// if (qs.getResource(var).isResource()) { +// return qs.getResource(var).toString(); +// } +// if (qs.getResource(var).isLiteral()) { +// return qs.getLiteral(var).toString(); +// } +// } +// } catch (Exception e) { +// +// } +// return "Error"; + } + private String loadQueryFromFile() throws Exception { String query = ""; BufferedReader bL = new BufferedReader(new FileReader(this.sparqlFile));