내가 SPARQL과 위키 데이터에 새로운 오전과 휴고 상 수상자에 대해 다음 검색하는 것을 시도하고있다 :Wikidata에서 Hugo 수상자를 검색하는 방법은 무엇입니까?
- 작업 제목
- 저자
- 년 원
내가 찾는거야 이것은 놀랍게도 어렵다.
필자는 링크 형식이 "원"인 최고의 소설에서 상을 연결하는 모든 튜플에 대해 질문하기 시작했습니다.
SELECT DISTINCT ?winner WHERE {
# P166: Award Recieved By
# Q103360: Hugo Award for Best Novel
?winner ps:P1346 wd:Q255032.
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
이 작동하지만, 내가 승자에서 제목 링크를 추가 할 때, 데이터가 없습니다 :
SELECT DISTINCT ?winner WHERE {
?winner ps:P1346 wd:Q255032.
OPTIONAL {
# P1476: Title
?winner wdt:P1476 ?title.
}
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
내가 잘못하고있는 중이 야 무슨 일이? 나는 약간의 이해와 함께 다른 네임 스페이스를 시도했지만 아무 소용이 없다. 어떻게 그 https://www.wikidata.org/wiki/Q255032#P1346
을 생성됩니다
휴고 수상자에 대한 페이지, 수상자의 한 부분이있다? 술어를 들어
SELECT DISTINCT ?winner ?winnerLabel ?for WHERE {
# P166: winner
# Q103360: Hugo Award for Best Novel
wd:Q255032 wdt:P1346 ?winner.
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
첫 번째 쿼리가 ** ** 아무것도 반환하지 않습니다! 적어도 지금 당장은 https://query.wikidata.org에서 시도해 보았습니다. 그렇다면 왜 'wdt : P166'을 술어로 사용하지 않습니까? – AKSW
그리고 두 번째 쿼리는 'wdt : P166' 술어를 사용할 때도 작동합니다. 그러나 필드를 다시 가져 오려면 SELECT 부분에 추가해야합니다 (예 : SELECT DISTINCT? winner? winnerLabel? titleLabel) – AKSW