[
https://issues.apache.org/jira/browse/JENA-1135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15140716#comment-15140716
]
Andy Seaborne edited comment on JENA-1135 at 2/10/16 12:46 PM:
---------------------------------------------------------------
[~rvesse] is right. {{GRAPH}} is the right way to make the query.
TDB happens to pick it's {{FROM}} graphs from the local dataset whereas the
general purpose dataset reads them from the web and {{<urn:graph>}} is not HTTP
GET'able.
Fuseki makes in-memory behave like TDB though it is not a good idea to rely on
this.
{{GRAPH}}, or setting up a ad-hoc dataset to query, is the way to do it.
was (Author: andy.seaborne):
[~rvesse] is right. {{GRAPH}} is the right way to make the query.
TDB happens to pick it's {{FROM}} graphs from the local dataset whereas the
general purpose dataset reads them from the web and {{<urn:graph>}} is not HTTP
GET'able.
> Cannot query named graph in in-memory dataset
> ---------------------------------------------
>
> Key: JENA-1135
> URL: https://issues.apache.org/jira/browse/JENA-1135
> Project: Apache Jena
> Issue Type: Bug
> Components: ARQ, Jena
> Affects Versions: Jena 3.0.1
> Reporter: Todd Schiller
> Assignee: Rob Vesse
> Priority: Minor
>
> I'm trying to query an in-memory named graph with SPARQL. Any ideas why the
> following would be returning no results?
> I'm guessing that the "<urn:graph>" is not being resolved as I would expect?
> {code:title=GraphTest.java|borderStyle=solid}
> import org.apache.jena.query.*;
> import org.apache.jena.rdf.model.*;
> import org.apache.jena.vocabulary.RDFS;
> public class GraphTest {
> public static void main(String [] args) {
> Dataset data = DatasetFactory.create();
> Model model = ModelFactory.createDefaultModel();
> model.getResource("urn:foo").addLiteral(RDFS.label, "foobar");
> data.addNamedModel("urn:graph", model);
> String sparql = "SELECT ?s ?p ?o FROM <urn:graph> WHERE { ?s ?p ?o }";
> ResultSet results = QueryExecutionFactory.create(sparql,
> data).execSelect();
> int cnt = 0;
> while (results.hasNext()) {
> cnt++;
> results.next();
> }
>
> // should both print 1
> System.out.println("# results: " + cnt); // prints 0
> System.out.println("Model size: " +
> data.getNamedModel("urn:graph").size()); // prints 1
> }
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)