2016-09-26 11 views
0

ウィキメディアがウィキメディアが知っている(物、場所、国など)すべての物理的なもの(具体的な概念)の名前を取得しようとしています。Wikidata:すべての物理的オブジェクトをリストする

私が必要とするものに近い例がありますが、深さは1つだけです:all the things that are instances of phone

私はより多くの深さで検索し、私はentityに開始点を修正this exampleを見つけました:

#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

コメントでmentionnedとして、あなたの質問が広すぎると、あなたはあなたがそうB

のサブクラスのインスタンスのクエリあなたですAを探しあまり答え

になってしまいますポイントは、問題が大き WDで1

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

権利である:Q35120は、あなたがこのようことを確認することができます サブクラスをたくさん持っているに

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". } 
} 

などなど:あなたは40'000が

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

より正確な見解を持っているために、この便利なツール巨大また、あなたは

巨大な可能性があるレベルで述べ+、すでに存在していることがわかります
+1

これは実際に私が必要としていたものです。何百万という答えが欲しいです。私はちょうどバッチ処理を行うか、サーバーの負荷をかけないためにデータのローカルコピーを使用する必要があります。ありがとう! –

関連する問題