Вы можете запросить любую конечную точку SPARQL, включая DBPedia, различными способами с помощью Sesame, либо программно, либо вручную через Sesame Workbench.
Использование верстака
Используя инструмент Sesame Workbench, вы можете запросить DBPedia (или любую общедоступную конечную точку SPARQL), создав прокси-сервер репозитория для этой конечной точки следующим образом:
выберите «Новый репозиторий», а в меню типа репозитория выберите «Прокси конечной точки SPARQL». Дайте прокси идентификатор и, возможно, название и нажмите «Далее».
введите URL-адрес конечной точки SPARQL для конечной точки запроса. Для общедоступного сервера DBPedia это должно быть http://dbpedia.org/sparql
.
Завершите, нажав «Создать».
После того, как вы настроите это, вы можете запросить его из меню «Запрос»:
Результат:
Программный доступ
Вы можете просто создать объект SPARQLRepository
, который подключается к конечной точке DBPedia:
Repository repo = new SPARQLRepository("http://dbpedia.org/sparql");
repo.initialize();
Получив это, вы можете использовать его для выполнения запроса SPARQL, как и в любом другом репозитории Sesame:
RepositoryConnection conn = repo.getConnection();
try {
StringBuilder qb = new StringBuilder();
qb.append("PREFIX dbpedia: <http://dbpedia.org/resource/> \n");
qb.append("PREFIX dbpprop: <http://dbpedia.org/property/> \n");
qb.append("SELECT ?routes \n");
qb.append("WHERE { dbpedia:Polio_vaccine dbpprop:routesOfAdministration ?routes } \n");
TupleQueryResult result =
conn.prepareTupleQuery(QueryLanguage.SPARQL, qb.toString()).evaluate();
while(result.hasNext()) {
BindingSet bs = result.next();
Value route = bs.getValue("routes");
System.out.println("route = " + route.stringValue());
}
}
finally {
conn.close();
}
person
Jeen Broekstra
schedule
28.05.2015