Я катаюсь с sparql и java-приложением, я нашел несколько основ соединения, чтобы начать работу, но боюсь, что я совершаю ошибку, которая позже превратится в нечто худшее.
Каждое предложение о подключении, независимо от используемой библиотеки, говорит о подключении к "http://dbpedia.org/sparql/"
, но это не работает для меня.
Я проверил URL-адрес, который возвращается при запуске запроса с помощью онлайн-редактора, и заметилпрефикс live, поэтому я добавил это как строку подключения, и она работает.То есть моя строка подключения выглядит как "http://live.dbpedia.org/sparql"
И она действительно возвращает результат, однако, к результату присоединена схема XML, что заставляет меня задуматься, действительно ли это из-за этого live.
Я добавил.
Ниже приведен простой код подключения, который я использую, это правильно?Любая и вся помощь очень благодарна.
Если 'live' правильно, возможно ли добавить только значение без Схемы?
StringBuilder sb = new StringBuilder();
sb.append("PREFIX dbr: <http://dbpedia.org/resource/> \n");
sb.append("PREFIX dbp: <http://dbpedia.org/property/> \n");
sb.append("PREFIX dbo: <http://dbpedia.org/ontology/> \n");
sb.append("SELECT ?dob \n");
sb.append("WHERE {dbr:Tony_Blair dbp:birthDate ?dob} \n");
Query query = QueryFactory.create(sb.toString());
QueryExecution qexec = QueryExecutionFactory.sparqlService("http://live.dbpedia.org/sparql", query);
try {
ResultSet results = qexec.execSelect();
for ( ; results.hasNext() ; )
{
QuerySolution soln = results.nextSolution() ;
System.out.println(soln.get("?dob"));
}
результат будет:
1953-05-06^^http://www.w3.org/2001/XMLSchema#date