-1

SPARQL を使用して、すべての英語の小説とそのプロパティのリストを取得しようとしています。

また、映画がその小説に基づいて撮影されたかどうかを調べ、映画の名前とその監督を取得したいと思います。映画関係が存在する場合。

コード:

SELECT ?movie ?director ?book ?author ?publisher ?illustrator
WHERE {
?movie  dcterms:subject  <http://dbpedia.org/resource/Category:films> ;
        dbpedia-owl:basedOn     ?book .
?movie dbp:director ?director .

?book a dbpedia-owl:Book .
?book dbp:author ?author .
?book dbp:publisher ?publisher .
?book dbp:illustrator ?illustrator .

}
limit 200
4

1 に答える 1

1

このようにクエリを変更すると、多くの正しい結果を得ることができます...

PREFIX     dcterms: <http://purl.org/dc/terms/>
PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>
PREFIX         dbp: <http://dbpedia.org/property/>

SELECT ?book ?author ?movie ?director  ?publisher ?illustrator
WHERE {
?book a dbpedia-owl:Book .
  OPTIONAL {?book dbp:author ?author .}
  OPTIONAL {?book dbp:publisher ?publisher .}
  OPTIONAL {?book dbp:illustrator ?illustrator .}
  OPTIONAL {?book ^dbpedia-owl:basedOn ?movie . ?movie a dbpedia-owl:Film }
  OPTIONAL {?movie dbp:director ?director .}
}
LIMIT 200

...しかし、 に分類されない映画がたくさんあることに注意してdbpedia-owl:Filmください。もちろん、union他のいくつかの一般的な分類で を作成しますが、それでも本に基づいた映画がないことを保証するものではなく、省略されることはありません.

ところで、あなたは「イギリスの小説」を何と呼んでいますか?

于 2017-03-10T17:22:16.453 に答える