Я делаю небольшое задание на Спаркла и Йену По сути, мне нужно написать код, который принимает любой запрос «выбор» в качестве входных данных и преобразует его в запрос «Построить».
Это должно быть сделано через Java Code.
У меня хорошее понимание запросов "select" и "construct". Но эта задача меня смущает. Я делаю простой запрос sparql только. Кто-нибудь может мне помочь с этим?
// Select films and actors that appeared leonardo di caprio films //
"Prefix dbo: <http://dbpedia.org/ontology/>"
+ "Prefix dbr: <http://dbpedia.org/resource/>"
+ "select ?film ?actor where {\r\n" +
"\r\n" +
"?film a dbo:Film .\r\n" +
"?film dbo:starring ?actor.\r\n" +
"?film dbo:starring dbr:Leonardo_DiCaprio\r\n" +
"\r\n" +
"}";
String service1 = "https://dbpedia.org/sparql"; // for select query
Query query = QueryFactory.create(query1);
QueryExecution qe = QueryExecutionFactory.sparqlService(service1,
query);
ResultSet results = qe.execSelect();
while (results.hasNext()){
QuerySolution s=results.nextSolution();
System.out.println(s);
}
Выходные данные будут отображать результаты для запроса select, но для этой задачи я хочу написать java-код, который принимает любой запрос «Select» в качестве входных данных и преобразует его в запрос «Construct» (не результат). Запрос конструкции должен отображаться в выводе, например.
OUTPUT:
Construct {?actor <Mov:Starring> ?film.}
Where {
?film a dbo:Film .
?film dbo:starring ?actor.
?film dbo:starring dbr:Leonardo_DiCaprio
}
Есть ли способ сделать это. Кто-нибудь может мне помочь?