#sparql #dbpedia
#sparql #dbpedia
Вопрос:
Я пытаюсь получить место смерти для уникального языка. Мой запрос такой, но у меня есть ошибки…
SELECT ?place ?placeLabel
WHERE {
<https://dbpedia.org/page/Alfonso_XII> rdfs:label ?person
?place dbo:deathPlace ?person;
rdfs:label ?placeLabel.
FILTER (LANG(?placeLabel) = "en")
}
Комментарии:
1. Какие ошибки? Не могли бы вы опубликовать это в этом вопросе?
Ответ №1:
У вас есть несколько проблем с этим запросом.
- Вы используете URL ресурса, а не URI
- Место смерти связывает человека с местом, а не наоборот.
- Правильный префикс URI для места смерти
dbp:
- Места действительно должны быть ресурсами, но в DBpedia это сильное предположение
- Поскольку вы не запрашиваете уровень person, похоже, он вам не нужен в запросе
SELECT ?place ?placeLabel
WHERE {
dbr:Alfonso_XII dbp:deathPlace ?place .
OPTIONAL {?place rdfs:label ?placeLabel .
FILTER (LANG(?placeLabel) = "en") }
}
Комментарии:
1. Извините, я привел это в качестве примера, потому что мне действительно нужно было найти кого-то раньше, но я не хотел ставить все для того, чтобы сделать это легко. В моем случае я хотел поместить переменную python с именем, например, my_query, и закончить с uri после «‘ . Например, » «‘ %(uri). В этом случае < dbpedia.org/page/Alfonso_XII > на самом деле <%s>.
2. @dev2win это не имеет значения, вы можете просто использовать запрос из Ivo с интерполяцией строк в Python. Тем не менее, URL по-прежнему неверен, это так
http://dbpedia.org/resource/Alfonso_XII
. Это всегдаhttp
как протокол (нетhttps
) и всегда/resource/
для DBpedia (нет/page/
)3. @Ivo: в общем, следует предпочесть
dbo:
префикс в пользуdbp
, потому что это пространство имен свойств на основе сопоставления. К сожалению, в текущем примере таких данных нет, но это также приводит к тому, чтоdbp:
связанные факты не являются строго типизированными, здесь место — это просто простая строка, которая является нечетной, поскольку это затрудняет получение дополнительных данных, например, о месте смерти человека. Я бы просто получил оба и использовалcoalesce
с предпочтением дляdbo:
свойства на основе