Я хочу написать запрос, чтобы получить тройки об объектах, связанных с фильмом. Это запрос:Использование OPTIONAL и UNION в SPARQL
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 oso в любое время функция. – AKSW