[Neo] VerboseQuadStore and spaql
Mattias Persson
mattias at neotechnology.com
Fri Jan 30 22:53:56 CET 2009
Allright, it seems you are using sparql-on-sail and not our integrated
neo sparql-engine. I have quite little experience with that setup, I
must add. Though I don't see why your case shouldn't work, since the
VerboseQuadStore supports all combinations of S P O C. I'm going on
vacation tomorrow for a week, but I'm sure someone else could look at
it while I'm away.
Best,
Mattias
2009/1/30 Lyudmila Balakireva <ludab at lanl.gov>:
> thank you for looking , my query snippet:
> try
> {
> sail.initialize();
> Repository repo = new SailRepository( sail );
> RepositoryConnection rc = repo.getConnection();
> ValueFactory f = repo.getValueFactory();
>
> //SailConnection sc = sail.getConnection();
>
> String queryStr = "PREFIX
> ore:<http://www.openarchives.org/ore/terms/>\n " +
> "PREFIX
> rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n " +
> "PREFIX
> orex:<http://library.lanl.gov/orex/terms/> \n" +
> "PREFIX dc:<http://purl.org/dc/elements/1.1/>\n "+
> " SELECT ?photo WHERE { " +
> "?s ?p \""+ tag +"\" ."+
> " ?photo ?x ?s . " +
> " ?photo ?y \"photo\" . " +
> // " ?photo
> ore:aggregates ?i ." + //this is does not work
> " } ; // LIMIT " +limit + " OFFSET " + offset ;
>
> System.out.println("queryStr:" + queryStr);
> // query = parser.parseQuery(
> queryStr, baseURI ); // tryed as in test example same result
>
> TupleQuery tupleQuery =
> rc.prepareTupleQuery(QueryLanguage.SPARQL,queryStr);
> TupleQueryResult result_s = tupleQuery.evaluate();
>
> // results = sc.evaluate( query.getTupleExpr(),
> query.getDataset(),bindings, false );
>
> while ( result_s.hasNext() )
> {
>
> BindingSet set = result_s.next();
> Value photo_ = ( Value ) set.getValue( "photo" );
> String P =photo_.toString();
>
> Photo photoobj = new Photo();
> photoobj.setPhotoUrl(P);
>
> setURI(P,photoobj,rc,f);
> photoes.add(photoobj);
>
> }
>
> result_s.close();
> //sc.close();
> rc.commit();
> rc.close();
>
>
>
> public void setURI (String photouri, Photo photoobj,RepositoryConnection
> rc,ValueFactory f) throws RepositoryException {
>
> RepositoryResult<Statement> resultt
> =
> rc.getStatements(f.createURI(photouri),f.createURI("ore:aggregates"),
> null, true); //same stuff working
>
> while (resultt.hasNext()) {
> Statement st = resultt.next();
> Resource s = st.getSubject();
> Resource p = st.getPredicate();
> Value o = st.getObject();
> if (o.toString().contains("_t")) {
> photoobj.setThumb(o.stringValue());
> System.out.println(s.toString()+","+
> p.toString()+","+o.toString());
> }
> if (o.toString().contains("_m")) {
> photoobj.setFull(o.stringValue());
> System.out.println(s.toString()+","+
> p.toString()+","+o.toString());
> }
> // System.out.println(s.toString()+","+
> p.toString()+","+o.toString());
> }
> resultt.close();
> }
>
>
>
>
>
> At 09:31 AM 1/30/2009, you wrote:
>>Hi Lyudmila, as Emil pointed out our sparql
>>support doesn't yet support all possible cases,
>>but according to my knowledge a ?S P ?O
>>construct is supported and tests in the sparql
>>engine verifies that. It can however depend on
>>what other triple constraints your query has.
>>The neo sparql engine needs (as of now, at
>>least) some kind of reasonable starting point;
>>somewhere to start the traversing from and it
>>may be that decision which is causing your
>>problems. If you could send your sparql query I
>>could make a much better conclusion as to the
>>source of the problem. Best, Mattias 2009/1/30
>>Emil Eifrem <emil at neotechnology.com>: > On Thu,
>>Jan 29, 2009 at 9:54 PM, Lyudmila Balakireva
>><ludab at lanl.gov> wrote: >> Hello, >> I was
>>testing sail rdf component and I made test
>>store based >> on VerboseQuadStore . >> I
>>have problem with predicate in sparql . If
>>I specify predicate >> like ?x dc:type
>>?z the query does not returning anything. (I
>>do >> have dc namespace prefix). It is work if
>>I do (?x?y?z) or (?x ?y >> "snow") or url in
>>subject or object position. >> It is work with
>>specific predicate if I do getStatements(). >>
>>Any clue would be great. > > Hi Luda, > > Our
>>Sparql support is so-so: it's optimized *enough*
>>for the > particular commercial use cases that
>>our Sparql-swinging customers > have required so
>>far. And the ?s predicate ?o pattern may very
>>well be > one that hasn't been required (yet).
>>But Mattias would know more about > this than
>>me. Mattias? > > It's weird though that it works
>>in getStatements(). How have you > configured
>>and assembled your components? Also, do you
>>use > Sparql-over-SAIL or the Neo4j Sparql
>>engine? > > Cheers, > > -- > Emil EifrÃ(c)m, CEO
>>[emil at neotechnology.com] > Neo Technology,
>>www.neotechnology.com > Cell: +46 733 462 271 |
>>US: 206 403 8808 >
>>_______________________________________________ >
>> Neo mailing list > User at lists.neo4j.org >
>>https://lists.neo4j.org/mailman/listinfo/user >
>>-- Mattias Persson, [mattias at neotechnology.com]
>>Neo Technology, www.neotechnology.com
>>_______________________________________________
>>Neo mailing list User at lists.neo4j.org
>>https://lists.neo4j.org/mailman/listinfo/user
> _______________________________________________
> Neo mailing list
> User at lists.neo4j.org
> https://lists.neo4j.org/mailman/listinfo/user
>
--
Mattias Persson, [mattias at neotechnology.com]
Neo Technology, www.neotechnology.com
More information about the User
mailing list