【发布时间】:2016-12-07 10:39:03
【问题描述】:
我想编写一个查询来获取与电影相关的实体的三元组。这是查询:
PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX : <http://dbpedia.org/resource/>
SELECT DISTINCT ?s1 WHERE {
SERVICE <http://dbpedia.org/sparql/> {
?film ?p ?o
FILTER (?film = :Braveheart) .
OPTIONAL {
{
{
{?o ?p2 ?o2 .}
OPTIONAL {
{?o2 ?p21 ?o21}
UNION
{?s21 ?p22 ?o2}
}
}
UNION
{?s1 ?p3 ?o}
}
}
}
}
此查询不获取结果。但是,评论该部分
OPTIONAL {
{?o2 ?p21 ?o21}
UNION
{?s21 ?p22 ?o2}
}
生成结果。我想了解为什么 OPTIONAL 子句会阻止生成结果以及如何解决该问题。
【问题讨论】:
-
Web 界面出现超时,这使得 Virtuoso 随时使用功能。
标签: sparql dbpedia linked-data