dear member of jena community,

I have been trying to query wikidata following the documentation [1] and
other examples I have found, but result obtained has been null values,
besides it is a simple query, that I have just previously tested in the
wikidata query GUI.

I followed two methods, one with  QueryExecution, and another
with RDFConnectionRemote, but however in both the output is null as well.

Please, let me know if I am missing something, or if I am going in the
wrong direction.


Best regards



Luis Ramos


*CODE *



import org.apache.jena.query.Query;
import org.apache.jena.query.QueryExecution;
import org.apache.jena.query.QueryExecutionFactory;
import org.apache.jena.query.QueryFactory;
import org.apache.jena.query.QuerySolution;
import org.apache.jena.query.ResultSet;
import org.apache.jena.rdf.model.Resource;
import org.apache.jena.rdfconnection.RDFConnection;
import org.apache.jena.rdfconnection.RDFConnectionFactory;
import org.apache.jena.rdfconnection.RDFConnectionRemote;
import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;




/*
 * Example of a building a remote connection.

 */
public class RDFConnectionExample4 {

//testing
static Logger log = Logger.getLogger(RDFConnectionExample4.class);




    public static void main(String ...args) {

    log.setLevel(Level.INFO);
    log.info("This is Luis Logger");
BasicConfigurator.configure();



        String my_query = "PREFIX schema: <http://schema.org/>\n" +
    "PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>\n" +
    "PREFIX owl: <http://www.w3.org/2002/07/owl#>\n" +
    "PREFIX hist: <http://wikiba.se/history/ontology#>\n" +
    "PREFIX wd: <http://www.wikidata.org/entity/>\n" +
    "PREFIX wdt: <http://www.wikidata.org/prop/direct/>\n" +
    "PREFIX wikibase: <http://wikiba.se/ontology#>\n" +
    "PREFIX dct: <http://purl.org/dc/terms/>\n" +
    "\n" +
    "SELECT ?item1  WHERE {\n" +
    "    ?item1 wdt:P31 ?item2.\n" +
    "} LIMIT 10";

   System.out

.println("The query string is"+ my_query);

        Query query = QueryFactory.create(my_query);

        //method 1 with query execution

        QueryExecution qe1 = QueryExecutionFactory.sparqlService("
https://query.wikidata.org/sparql";, query);

        ResultSet rs1 = qe1.execSelect() ;

        while(rs1.hasNext()) {
            QuerySolution qs1 = rs1.next() ;
            Resource subject1 = qs1.getResource("s") ;
            System.out.println("Subject: "+subject1) ;
        }

        //method 2




         RDFConnection conn0 = RDFConnectionRemote.create()
            .destination("https://query.wikidata.org/";)
            .queryEndpoint("sparql")
            // Set a specific accept header; here, sparql-results+json
(preferred) and text/tab-separated-values
             //The default is "application/sparql-results+json,
application/sparql-results+xml;q=0.9, text/tab-separated-values;q=0.7,
text/csv;q=0.5, application/json;q=0.2, application/xml;q=0.2, */*;q=0.1"
           .acceptHeaderSelectQuery("application/sparql-results+json,
application/sparql-results+xml;q=0.9")
           .build();


        String queryService = "https://query.wikidata.org/sparql?";;

        RDFConnection conn = RDFConnectionFactory.connect(queryService,
null, null);

        QueryExecution qe2 = conn.query(query);

        ResultSet rs2 = qe2.execSelect() ;

        while(rs2.hasNext()) {
            QuerySolution qs2 = rs2.next() ;
            Resource subject2 = qs2.getResource("s") ;
            System.out.println("Subject: "+subject2) ;
        }



       // QueryExecution qExec = conn.query(query);


    }












https://jena.apache.org/documentation/rdfconnection/

Reply via email to