Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nominatim の検索結果 #17

Open
kudarisenmon opened this issue Jan 30, 2016 · 17 comments
Open

Nominatim の検索結果 #17

kudarisenmon opened this issue Jan 30, 2016 · 17 comments

Comments

@kudarisenmon
Copy link

Nominatim の検索結果に必要のない「●●郡」の表示が含まれることがある。

@nyampire
Copy link
Member

日本の市町村の体系として、町と村は必ずなにかしらの郡に属しています。また、リレーションの構成のなかに、郡をいれてしまっているので、検索結果に入ってしまうのはしょうがないともいえます。

「日常的に "郡" は意識されないものなので、Nominatimの検索結果には入れないほうがよい」ということですか?

@kudarisenmon
Copy link
Author

町と村のときには"郡"が表示されて、市のときには表示されないが理想と思っています。
リレーションやNominatimのことを知らないひとは「横浜市, 三浦郡, 神奈川県」ってのを見て、「大丈夫か、これ?」と感じそうです。
以前からの根の深い問題だということも理解しています。

@nyampire
Copy link
Member

なるほど。では、このIssueをより細かくいうと「市を検索した時の検索結果に対して、郡が含まれてしまっている」というかんじですか?

@tankaru
Copy link

tankaru commented Jan 31, 2016

東京都や千葉県は、市を検索しても検索結果に郡が入りませんね。
静岡県だと、沼津市はOKで、静岡市は榛原郡になっていて…
リレーションをチェックしても原因がよくわかりませんでした。

@smellman
Copy link

smellman commented Feb 1, 2016

http://www.openstreetmap.org/relation/2689483
三浦郡の元ネタってこれかな?
http://www.openstreetmap.org/relation/2689487
神奈川県のリレーションに三浦市と三浦郡があって、なんか変なデータが混在してるように見えますね。

@smellman
Copy link

smellman commented Feb 1, 2016

ちなみに三浦郡はadmin_level=6で、
http://www.openstreetmap.org/relation/2689408
本来の三浦市だと思われる方がadmin_level=7なので下位になってる。
http://www.openstreetmap.org/relation/2689482
横浜市もadmin_level=7なので、神奈川県 > 三浦郡 > 横浜市となってしまってるのでないかなと...

@smellman
Copy link

smellman commented Feb 1, 2016

ちなみに、Nominatimのソースコードに"市"って文字自体に対する処理もあるので注意は必要。
https://github.com/twain47/Nominatim/blob/master/sql/functions.sql#L308

@nyampire
Copy link
Member

nyampire commented Feb 1, 2016

ビンゴですね。
県や市町村のリレーション構造として、県の下に郡を入れているのがアダになっているのかもしれません。

いくつか変更してもよいのかも、と思っている点としては、以下の組み合わせになるのかも、というJust ideaです。

  1. 郡リレーションに admin_level=6 を割り振っているが、これを admin_levelなしにする (郡には対応する行政組織が無いため。ただし、Nominatimの表示結果に影響があるか疑問)
  2. 県リレーションのmemberとして、いまは 市 と 郡 のリレーションを登録している。これを、市町村に変更し、郡をmemberから外す(あまりやりたくない)
  3. Nominatimのコード側で対応させる

@nyampire
Copy link
Member

nyampire commented Feb 1, 2016

"市"の処理がNominatim側のコードに入っている、となると、コード変更する場合には台湾とか中国あたりへの影響も考えないといけないのかしらん?

@tankaru
Copy link

tankaru commented Feb 1, 2016

関係があるかいまいち不明ですが、うまくいっている東京都と千葉県では、郡のリレーションにlabelが設定されていません。うまくいっていない県(神奈川県など)では、labelが設定されています。
もしかしたら、郡のlabelメンバーを削除すれば表示上はうまくいくのかもしれません。
東京都西多摩郡 http://www.openstreetmap.org/relation/5299312
千葉県長生郡 http://www.openstreetmap.org/relation/2679958
神奈川県三浦郡 http://www.openstreetmap.org/relation/2689483
静岡県榛原郡 http://www.openstreetmap.org/relation/4679140

@smellman
Copy link

smellman commented Feb 1, 2016

Nominatim側の処理は台湾とかの対応だと思われる。
ただ、今回のは文字をreplaceしてるような処理がひっかかってないので問題無さそうには見える。
郡のリレーションなんだけど、admin_level=6からadmin_level=7に引き下げて、下にぶら下がってる町をadmin_level=9に引き下げるのはどうなんだろう?
あまり他の郡がどうなっているのかわからないのだけど、郡が市の上位概念になっている事自体が現実的じゃないような気がするのだけど(ここでこういう概念に詳しい人に意見を貰いたい...)

@tankaru
Copy link

tankaru commented Feb 1, 2016

試験的に、三浦郡のlabelメンバーを削除してみても良いでしょうか?
(この行為は、Tagging for renderer なので、一定の合意を得たいと思います)

@smellman
Copy link

smellman commented Feb 1, 2016

三浦郡のリレーションから外すだけなら良いと思います。
ただ、Nominatimにいつ反映されるかはわからないので、そこだけ注意が必要かと思います。

@nyampire
Copy link
Member

nyampire commented Feb 2, 2016

Node削除ではなく、リレーションから外す、ということに +1です。
Nominatimの適用はわりと早く、体感では 分単位diffが適用されているように感じます。キャッシュの仕組みも、なかったように思います(データ編集後2−3分で反映)

なので、長く見て半日〜1日あれば結果の可否がみれるはずです。

@tankaru
Copy link

tankaru commented Feb 2, 2016

午前中にlabelをリレーションから解除したのですが、Nominatimのデータを見ると、Last Updated 2015-12-23 16:45となっていて、まだ反映されていないようです。とりあえず数日様子見します。

Nominatimでの三浦郡リレーション https://nominatim.openstreetmap.org/details.php?place_id=144748437

@nyampire
Copy link
Member

nyampire commented Feb 5, 2016

Nominatimのデータが更新されましたが、関係ないかもですね。うーむ。

http://nominatim.openstreetmap.org/
http://nominatim.openstreetmap.org/search.php?q=%E6%A8%AA%E6%B5%9C%E5%B8%82&polygon=1&viewbox=

@kudarisenmon
Copy link
Author

いま試したら静岡市、横浜市とも不要な郡の表示が含まれないようになっています。
もともと問題のなかった沼津市は変化ありません。
試した範囲では期待する検索結果になっています。
どこがどう変わったのかは理解できていません。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants