我想編寫一個查詢來獲取關於與電影相關的實體的三元組。這是查詢條件:在SPARQL中使用OPTIONAL和UNION
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
子句阻止生成結果以及我如何解決問題。
在使用Virtu的Web界面中有超時oso隨時隨地的功能。 – AKSW