2016-07-22 1 views
2

Wikidata를 쿼리하여 레이블에 단어가 포함 된 모든 항목을 가져 오는 방법은 무엇입니까? 나는 이것을 시도했지만 작동하지 않았다. 그것은 아무것도 찾지 못했습니다.레이블을 사용하여 Wikidata 항목을 쿼리하는 방법은 무엇입니까?

SELECT ?item ?itemLabel WHERE { 
    SERVICE wikibase:label { 
    bd:serviceParam wikibase:language "en". 
    ?item rdfs:label ?itemLabel. 
    } 
FILTER(CONTAINS(LCASE(?itemLabel), "keyword")) 
} 
LIMIT 1000 
+0

'위키베이스 : 레이블'이란 무엇입니까? 접두사가 없으면 무엇이 잘못 될지 말하기 어렵습니다. – AKSW

+0

PREFIX wikibase :

+0

그리고이 데이터 세트의'wikibase : language' 정보는 어디에 있습니까? 없으면, 조인은 분명히 하나의 SPARQL 쿼리로 실행되는 SERVICE 부분에서 비어 있습니다. 나는 SERVICE 절 밖에 첫 번째 트리플을 넣으면 작동 할 수 있다고 생각합니다. – AKSW

답변

3

는 질문 제공하는 유용한 의견에 따라, 나는, 그 결과

item   itemLabel 
wd:Q515  city 
wd:Q7930989 city 
wd:Q15253706 city 
wd:Q532039 The Eternal City 
wd:Q1969820 The Eternal City 
wd:Q3986838 The Eternal City 
wd:Q7732543 The Eternal City 
wd:Q7737016 The Golden City 
wd:Q5119  capital city 
wd:Q1555  Guatemala City 

try it here

0

예 내가 가지고있는이 쿼리

SELECT ?item ?itemLabel 
WHERE { 
    ?item rdfs:label ?itemLabel. 
    FILTER(CONTAINS(LCASE(?itemLabel), "city"@en)). 
} limit 10 

당신을 결국 라벨로 검색 할 수 있습니다 (예 :

).

Query page에서 확인하십시오.

관련 문제