Wikidata SPARQL запрос актеров и команды

Моя цель - создать запрос sparql, который извлекает список актеров и членов экипажа и его тип викиданных ("директор", "сценарист", "член актерского состава",...)

Пока у меня есть это:

ВЫБЕРИТЕ? TitleLabel? CastLabel? Свойство? PropertyLabel
ГДЕ {
    название wdt:P345 "tt0848228".
    название wdt:P57 литой.?property wikibase:propertyType?propertyType.
    СЕРВИС wikibase:label { bd:serviceParam wikibase: язык "en". }
}

Вывод, который я хочу получить, представляет собой таблицу со строками, такими как:

"The Avengers", "Joss Whedon", "wd:P57", "director" ...

1 ответ

Решение

Я пришел с этим запросом:

SELECT ?titleLabel ?castLabel ?property ?propLabel
WHERE {
    ?title wdt:P345 "tt0848228".
    # take all claims on this movie
    ?title ?property ?cast .
    # that involve a human
    ?cast wdt:P31 wd:Q5 .

    # get the property label
    # see https://www.wikidata.org/wiki/Wikidata:SPARQL_query_service/queries#Adding_labels_for_properties
    hint:Query hint:optimizer "None" .
    ?prop wikibase:directClaim ?property .

    SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
Другие вопросы по тегам