Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-dev] Java API for Snap SPARQL, not just the Protege plugin?

Kenny Cason Kenneth.Cason at radiancetech.com
Fri May 31 11:54:52 PDT 2019


Thanks, that does the trick!

The TestParser.java query returns a SPARQLQueryResult object. I know there is a ResultSet method to convert ResultSets to JSON strings. Is there a known way to turn a SPARQLQueryResult object into JSON or into a ResultSet?

I can write one myself but I'd rather not reinvent the wheel.

Here is the call from TestParser.java:


    private static void parse(OWLOntology ontology, String s) {

        SPARQLTokenizer tokenizer = new SPARQLTokenizerJavaCCImpl(ontology, new StringReader(s));
        SPARQLParserImpl parser = new SPARQLParserImpl(tokenizer);

        Query query = parser.parseQuery();


        SPARQLQueryResult result = queryEngine.ask(query.asSelectQuery());


Thanks as usual!

-Kenny

From: protege-dev <protege-dev-bounces at lists.stanford.edu> On Behalf Of Lorenz B.
Sent: Friday, May 17, 2019 12:42 AM
To: protege-dev at mailman.stanford.edu
Subject: Re: [protege-dev] Java API for Snap SPARQL, not just the Protege plugin?

CAUTION: External Email


Apache Jena or RDF4J are the de-facto standard Java APIs for SPARQL

Or you just stick to the Snap SPARQL API, an example how to create parser and use the query engine can be found here [1]

[1] https://github.com/protegeproject/snap-sparql-query/blob/master/src/main/java/org/semanticweb/owlapi/sparql/ui/TestParser.java


Is there a Snap SPARQL API for Java that takes a query string (formatted like the default query in the Protégé plugin) and returns the results?

For example:

String myQuery =
"PREFIX owl: <http://www.w3.org/2002/07/owl#><http://www.w3.org/2002/07/owl>" +
"PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#><http://www.w3.org/1999/02/22-rdf-syntax-ns>" +
"PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#><http://www.w3.org/2000/01/rdf-schema> " +
" " +
"SELECT ?x (STR(?lab) AS ?label) WHERE { " +
"    ?x rdf:type owl:Class . " +
"    OPTIONAL {?x rdfs:label ?lab} " +
"}" +
"ORDER BY ?label";

ResultSet myResultSet = magicalSnapSparqlEngine.getResults(myQuery);


This is what it looks like from the Protégé Snap SPARQL plugin:

[cid:image001.jpg at 01D517B7.DB0AF4C0]


FYI: I have a query working that uses the de.derivo.sparqldlapi but takes a differently formatted string as input (as far as I can tell).

de.derivo.sparqldlapi example:

   final String query_string = query_prefix +
            "SELECT *\n" +
            "WHERE { \n" +
            "Type(?myPizza, ont:pizza),\n" +
            "Type(?myEffect, ont:effect),\n" +
            "Type(?myGastroProblem, ont:gastroproblem),\n" +

            "PropertyValue(?classD, ont:hasEffect, ?myEffect),\n" +
            "PropertyValue(?classD, ont:exhibits, ?myGastroProblem)\n" +
            "};


I need this to be formatted more like what the Snap SPARQL plugin takes as input, so I can test it in Protégé before committing it to Java code:

   final String query_string = query_prefix +
            "SELECT *\n" +
            "WHERE { \n" +
            "?myPizza a ont:pizza .\n" +
            "?myEffect a ont:effect .\n" +
            "?myGastroProblem a ont:gastroproblem .\n" +

            "?classD ont:hasEffect ?myEffect .\n" +
            "?classD ont:exhibits ?myGastroProblem .\n" +
            "};

Thanks,

-Kenny Cason, CISSP
Radiance Technologies
Cyber Solutions Group
3133 General Hudnell Dr. Ste. 116
San Antonio, TX 78226
KCason at radiancetech.com<mailto:KCason at radiancetech.com>
206.550.0049




_______________________________________________

protege-dev mailing list

protege-dev at lists.stanford.edu<mailto:protege-dev at lists.stanford.edu>

https://mailman.stanford.edu/mailman/listinfo/protege-dev

--

Lorenz Bühmann

AKSW group, University of Leipzig

Group: http://aksw.org - semantic web research center
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.stanford.edu/pipermail/protege-dev/attachments/20190531/fcdda55a/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 36192 bytes
Desc: image001.jpg
URL: <http://mailman.stanford.edu/pipermail/protege-dev/attachments/20190531/fcdda55a/attachment.jpg>


More information about the protege-dev mailing list