2017-05-10 19 views
1

私はEclipseとJenaを使用しています。私はすでにうまくいくいくつかのクエリを作っています、そして、私はこの1つの間違いを見つけることができません。これは私のコードです:誰でもこのSPARQL QUERYに何が間違っているのか教えてもらえますか?

// Create a SPARQL query from the given string. 
String queryString = //"PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> "+ 
"PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> "+ 
//"PREFIX owl: <http://www.w3.org/2002/07/owl#>" + 
//"PREFIX ab: <http://learningsparql.com/ns/addressbook#> " + 
"PREFIX foaf: <http://xmlns.com/foaf/0.1/> "+ 
"PREFIX dc: <http://purl.org/dc/elements/1.1/> " + 
"SELECT ?name " + 
"where { "+ 
"?person foaf:weblog \""+"http://ldodds.com/blog/"+"\" . "+ 
"?person foaf:name ?name . "+ 
"?person rdf:type ?Person . "+ 
//"\"<http://ldodds.com/blog/>\""+" dc:title ?title ."+ 
"} \n "; 

クエリのみ:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 
PREFIX owl: <http://www.w3.org/2002/07/owl#>" 
PREFIX ab: <http://learningsparql.com/ns/addressbook#> 
PREFIX foaf: <http://xmlns.com/foaf/0.1/> 
PREFIX dc: <http://purl.org/dc/elements/1.1/> 

SELECT ?name 
where { 
    ?person foaf:weblog "http://ldodds.com/blog/" 
    ?person foaf:name ?name 
    ?person rdf:type ?Person 
    "<http://ldodds.com/blog/>" dc:title ?title 
    } 

Thisは、私が使用していオントロジーのリンクであり、これは私が答えることをしようとしているクエリです:

Personのタイプであり、ウェブログアドレスがhttp://ldodds.com/blogである人物の名前を取得し、彼/彼女のウェブログのタイトルを取得するSPARQLクエリを記述します。

+3

将来のために、代わりにJava文字列の「本当の」SPARQLクエリを投稿してください。人々がクエリをテストしたいときは本当にひどい – AKSW

答えて

1

あなたのデータを見てください。プロパティfoaf:weblogはリテラル文字列オブジェクトとしてではなくURIでRDFで表現リソースを使用しています。

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 
PREFIX foaf: <http://xmlns.com/foaf/0.1/> 
SELECT ?name WHERE { 
    ?person foaf:weblog <http://ldodds.com/blog/> . 
    ?person foaf:name ?name . 
    ?person rdf:type ?Person . 
} 
関連する問題