OracleデータベースのSPARQLクエリからRDF/XMLファイルを直接出力しようとしています。ResultSetオブジェクトで結果を確認したので、クエリは正常に機能しています。
しかし、そこからどうすればいいのかわかりません。QuerySolutionごとにステートメントを作成し、それをモデルに追加したいと思います。ただし、述語の値を取得する方法が見つからないため、それを行う方法がわかりません。
私が正しい道を進んでいるかどうかのヒントと同様に、どんな助けもいただければ幸いです。
QueryExecution qe = QueryExecutionFactory.create(query, oracleSemModel) ;
ResultSet results = qe.execSelect();
Model model = ModelFactory.createDefaultModel();
while (results.hasNext())
{
QuerySolution result = results.next();
Resource subject = result.getResource("s"); // get the subject
Property predicate = result.getProperty("p"); // <-- THIS FUNCTION DOESN'T EXIST
RDFNode object = result.get("o"); // get the object
Statement stmt = ResourceFactory.createStatement(subject, predicate, object);
model.add(stmt);
}
model.write(System.out, "RDF/XML-ABBREV");