0
我試圖創建一個Sparql-Query來獲取與演講相關的所有消息。我是整個'語義網絡'故事的新手,所以如果用法名稱空間完全錯誤,請耐心等待。Sparql Select Query適用於Sesame-Workbench,但不適用於Java
我試圖執行的查詢是:
PREFIX siocNS: <http://rdfs.org/sioc/ns#>
PREFIX rdfPred: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX purlPred: <http://purl.org/dc/terms/>
PREFIX purlPredLecture: <http://purl.org/<CENSORED>/lecture/>
select ?post ?title ?content ?time ?creator where
{
?post rdfPred:type siocNS:Post.
?post purlPred:title ?title.
?post purlPred:content ?content.
?post purlPred:created ?time.
?post purlPred:creator ?creator.
?post purlPred:context purlPredLecture:1337-7331.
}
其中1337-7331
是一個ID。
在Sesame-Workbench上查詢似乎工作正常(因爲我得到我的2預期行)。在Java上,使用Jena,似乎我的QueryExecuion
是不正確的。
這裏我的代碼:
String prefix = "PREFIX siocNS: <http://rdfs.org/sioc/ns#>\n"
+ "PREFIX rdfPred: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n"
+ "PREFIX purlPred: <http://purl.org/dc/terms/>\n"
+ "PREFIX purlPredLecture: <http://purl.org/<CENSORED>/lecture/>\n";
String queryString = "select ?post ?title ?content ?time ?creator where\n"
+ "{\n"
+ "?post rdfPred:type siocNS:Post.\n"
+ "?post purlPred:title ?title. \n"
+ "?post purlPred:content ?content. \n"
+ "?post purlPred:created ?time. \n"
+ "?post purlPred:creator ?creator.\n"
+ "?post purlPred:context purlPredLecture:"
+ lectureID + ".\n" + "}";
logger.info("Created Query:" + prefix + queryString);
Query query = QueryFactory.create(prefix
+ queryString, Syntax.syntaxSPARQL);
query.addResultVar("?post");
query.addResultVar("?title");
query.addResultVar("?content");
query.addResultVar("?time");
query.addResultVar("?creator");
Model model = ModelFactory.createDefaultModel();
QueryExecution execution = QueryExecutionFactory
.create(query, model);
ResultSet execSelect = execution.execSelect();
while (execSelect.hasNext()) {
...
DO SOME STUFF
...
}
以上所示的查詢被從Java調試器複製。我在準備Query(Execution)
時錯過了什麼,芝麻工作臺完成了什麼?
Thx爲您的幫助!
DPA
什麼是你所得到的例外呢? lectureID的價值是什麼? –
我沒有得到任何異常。在執行'execution.execSelect();' ResultSet是空的。 lectureID的值是1337-7113(與查詢中相同) – dpa
OMG現在我看到了什麼是缺少......錯過了設置服務器(包括ReposiotryID)。但沒有看到任何設置這些信息的可能性。任何幫助? – dpa