2017-06-23 7 views
1

特定のgpsロケーションで都市/居住地を取得したいと考えています。 は、指定された範囲内で最も近いもの、または最高で最も近いものを意味します。WikiData IDをGPSロケーションで取得する

私はウィキメディアのデータの例でいくつかの例のクエリを見つけました。

私は、採用しようとするが、私はエラーのみを取得したり、私の現在のクエリで、ここで

をタイムアウト:

SELECT * 
    WHERE 
    { 
     ?city wdt:P31/wdt:P279* wd:Q15642541 . // only settlements 
     # Search by Nearest 
    SERVICE wikibase:around { 
    ?place wdt:P625 ?location . 
    bd:serviceParam wikibase:center "Point(8.4024875340491 48.9993762209831)"^^geo:wktLiteral . 
    bd:serviceParam wikibase:radius "1" . 
    bd:serviceParam wikibase:distance ?distance . 
    } 
     SERVICE wikibase:label { bd:serviceParam wikibase:language "en" } 
    } 
ORDER By ?distance 

私は和解条件を去ったとき、クエリが動作します。しかし、私はそれを追加するときは、クエリが長すぎる 私は間違って何ですか?正しい構文は何ですか?

答えて

1

私のバグを発見しました。ここ

作業クエリです:

SELECT DISTINCT * 
    WHERE 
    { 
     ?place wdt:P31/wdt:P279* wd:Q515 . 
     # Search by Nearest 
    SERVICE wikibase:around { 
    ?place wdt:P625 ?location . 
    bd:serviceParam wikibase:center "Point(8.4024875340491 48.9993762209831)"^^geo:wktLiteral . 
    bd:serviceParam wikibase:radius "10" . 
    bd:serviceParam wikibase:distance ?distance . 
    } 
     SERVICE wikibase:label { bd:serviceParam wikibase:language "en" } 
    } 

Order by ?distance 
関連する問題