Вопрос для начинающих SPARQL - PullRequest
0 голосов
/ 11 сентября 2009

Я только недавно запустил SPARQL и у меня есть несколько вопросов.

  1. Когда я запрашиваю конечную точку (базу данных связанных фильмов) для актера и режиссера с заданным названием фильма, я ничего не получу, если у запрашивающего фильма есть только одно из запрошенных свойств (у фильма есть только актер). или свойство режиссера, например, этот фильм "Бэтмен" имеет только свойство актера http://data.linkedmdb.org/page/film/12583),, так есть ли способ запросить несколько свойств и получить любой доступный результат, даже если запрошенное свойство недоступно?

  2. Как я могу получить все свойства для данного названия фильма?

Спасибо

1 Ответ

4 голосов
/ 11 сентября 2009
  1. Возможно, вам нужно ключевое слово SPARQL OPTIONAL.
SELECT *
WHERE {
  ?movie a ex:Movie .
  OPTIONAL { ?movie ex:prop1 ?prop1_value }
  OPTIONAL { ?movie ex:prop2 ?prop2_value }
  OPTIONAL { ?movie ex:prop3 ?prop3_value }
}
  1. Примерно так:
SELECT ?p ?o
WHERE {
  ex:MyMovie ?p ?o
}

Конечно, вам нужно заменить все URI выше (например: prop1, ex: MyMovie и т. Д.) Фактическими URI из набора данных Linked MDB.

надеюсь, это поможет!
Lee

...