2016-09-26 2 views
0

위키 데이터가 (객체, 장소, 국가 등)에 대해 알고있는 모든 물리적 인 것 (유형 개념)의 이름을 얻으려고합니다.Wikidata : 모든 실제 객체를 나열하십시오.

내가 필요한 것에 가까운 예가 있지만, 깊이가 1 인 경우에만 all the things that are instances of phone입니다.

는 좀 더 깊이 검색 this example을 발견하고 나는 entity에 시작점을 수정 :

#Children of Genghis Khan 

#added before 2016-10 
#defaultView:Graph 
PREFIX gas: <http://www.bigdata.com/rdf/gas#> 

SELECT ?item ?itemLabel ?pic ?linkTo 
WHERE 
{ 
    SERVICE gas:service { 
    gas:program gas:gasClass "com.bigdata.rdf.graph.analytics.SSSP" ; 
       gas:in wd:Q35120 ; 
       gas:traversalDirection "Forward" ; 
       gas:out ?item ; 
       gas:out1 ?depth ; 
       gas:maxIterations 4 ; 
       gas:linkType wdt:279 . 
    } 
    OPTIONAL { ?item wdt:P40 ?linkTo } 
    OPTIONAL { ?item wdt:P18 ?pic } 
    SERVICE wikibase:label {bd:serviceParam wikibase:language "en" } 
} 

나는 여전히 결과를 얻을 수 없습니다. 코멘트에 했나요으로

+0

이것은 너무 일반적인 질문입니다. 나는 "물리적 객체 (Q223557)"와 "엔티티 (Q35120)"를 질의하는 몇 가지 조합을 시도했지만 항상 타임 아웃을 얻는다. 쿼리를 개념적으로 이해할 수있는 별도의 조각으로 나눌 수 있습니까? – atineoSE

답변

0

, 당신의 질문은 너무 광범위하고 그렇게

쿼리하면 B

의 서브 클래스의 인스턴스가있는 너무 많은 답변

당신이 (가)를 찾아

될 겁니다 가리킨 문제가 크기 WD 하나

SELECT DISTINCT ?item 
WHERE { 
    ?item wdt:P31/wdt:P279* wd:Q35120 
} 

권리입니다 : Q35120 당신은이 방법으로 확인 할 수 서브 클래스를 많이 가지고에게

당신이

당신은 또한 거대한이 좋은 도구가 더 정확한보기

https://tools.wmflabs.org/bambots/WikidataClasses.php?id=Q35120&lang=en

을 가질 수 거대 이미 40'000 +에 명시된 수준이 있다고 볼 수 있습니다 :
SELECT ?a ?aLabel WHERE { ?a wdt:P279 wd:Q35120. 
      SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } 
} 

SELECT ?a ?aLabel WHERE { ?a wdt:P279/wdt:P279? wd:Q35120. 
      SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } 
} 

SELECT ?a ?aLabel WHERE { ?a wdt:P279/wdt:P279?/wdt:P279? wd:Q35120. 
      SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } 
} 

등등

+1

그게 실제로 필요한 것입니다, 나는 수백만의 답변을 원합니다. 난 그냥 일괄 처리하거나 서버의 과부하를 방지하기 위해 데이터의 로컬 복사본을 사용해야합니다. 감사! –

관련 문제