Я использую службу запросов викиданных для получения данных: https://query.wikidata.org/
Мне уже удалось использовать метку объекта двумя способами:
- Использование службы меток викибазы. Например:
SELECT ?spouse ?spouseLabel WHERE { wd:Q1744 wdt:P26 ?spouse. SERVICE wikibase:label { bd:serviceParam wikibase:language "en" . } }
- Используя свойство
rdfs:label
:
SELECT ?spouse ?spouseLabel WHERE { wd:Q1744 wdt:P26 ?spouse. ?spouse rdfs:label ?spouseLabel. filter(lang(?spouseLabel) = "en"). }
Однако похоже, что для сложных запросов второй метод работает быстрее, в отличие от того, что указано в руководстве пользователя MediaWiki:
Служба очень полезна, когда вы хотите получить метки, поскольку она снижает сложность запросов SPARQL, которые в противном случае вам потребовались бы для достижения того же эффекта.
(https://www.mediawiki.org/wiki/Wikidata_query_service/User_Manual#Label_service/
Что добавляет викибаза, чего я не могу добиться, используя только rdfs: label? Это кажется странным, поскольку они оба, по-видимому, достигают одной и той же цели, но метод rdfs: label кажется более быстрым (что логично, поскольку запрос не требует объединения данных из внешних источников).
Спасибо!