[OSM-ja] 信濃川リレーションに対するfixmeタグのコメントについて(Triglav2018さんとのやり取り)

nabetaro @ caldron.jp nabetaro @ caldron.jp
2019年 5月 23日 (木) 16:32:08 UTC


鍋太郎です。
先月からTriglav2018さんとやり取りしていました。
御本人はMLに参加するつもりはないとのことと、MLへ投げても良いとのことでしたので、
内容をそのまま転記して共有したいと思います。
長くて申し訳ありません。

※日付はUTCになっています。

#思うところはいろいろありますが、まずは共有だけにしたいと思います。

-------------------------------------------------------------------------------------------------
From: nabetaro
To: Triglav2018
2019年04月 5日 10:56

nabetaroです。

信濃川リレーションに対するfixmeタグに以下のコメントを頂いたようですのでメッセージをお送りします。

    エリアがどうしてwaterwayになるのか説明してほしい

fixmeタグでは通知されることがないため気がつくのが遅れてしまいました。 申し訳ありません。

このfixmeに以下を記載したのは私です。

    不正なmultipolygonのみ修正。同名リレーションがあるため統合するか、riverbankをリレーションに含めるべきでなければ削除が適当と思われる

まず、waterwayについては、以下に定義されています。

    https://wiki.openstreetmap.org/wiki/Waterways (英語)
    https://wiki.openstreetmap.org/wiki/JA:%E6%B0%B4%E5%9F%9F (日本語)

こちらに、線形の水域に続き、「広い河川、湖沼、貯水池、島」としてriverbankを記述する方法について記載されています。 そのため、少なくともosmにおいては、riverbankはwaterway(の一部)とみなされていると考えます。

但し以下の理由により、relationにriverbankを含めるのは待ったほうが良いとも考えます。

https://wiki.openstreetmap.org/wiki/JA:Relation:waterway にはriverbankロールの説明もありますが、こうも書かれています。

    承認されておらず、あまり利用されておらず、異論があります - Talk:Relation:waterway を参照してください

内容は読み切れていませんが、waterwayリレーションについてのriverbankの扱いは微妙です。 そのため、「riverbankをリレーションに含めるべきでなければ削除が適当と思われる」と記載しました。

ではmultipolygonではどうかと言うと、 https://wiki.openstreetmap.org/wiki/JA:Relation:multipolygon に記載があります。

 The conditions to form a valid multipolygon relation are the following:
    If an endpoint is shared by more than two unclosed ways, it's ill formed and a closed polygon can't be reconstructed unambiguously. invalid example 2 (Exception - points shared by an even number of unclosed ways might be part of touching inner rings which is ok.)

少々わかりにくいので、以下を見ていただきたいです。

    https://wiki.openstreetmap.org/wiki/JA:Relation:multipolygon#Overlapping.2C_unclosed_member_ways_belonging_to_the_same_role

multipolygon を構成するpolygonは、2点を共有するように配置することができず、不正なmultipoylgonになります。 つまりriverbankのような連なったpolygonをmultipolygonリレーションに入れることはできません。

以上より JOSMエディタによる妥当性検証において、「エラー判定」されていましたので、以下の修正を行いました。

    https://www.openstreetmap.org/changeset/68356080

現在、信濃川リレーションはmultipolygonに戻され、エラーが復活しています。 連なる千曲川リレーションもmultipolygonも同様です。 (こちらには開いたwayがmultipolygonに登録されているという別のエラーもあります)

以上でご質問への回答になったでしょうか?

ご確認をよろしくお願い致します。

-------------------------------------------------------------------------------------------------

From: Triglav2018
To: nabetaro
2019年04月 8日 11:01

詳しい解説ありがとうございます。

一番は編集ツールごとでエラー判定が異なることに問題がありそうです。

Wikiepdiaの「ネヴァ川」に採用されているのを見つけてから日本の河川に写し取ってみましたが、なるほどネヴァ川のメンバーにはriverbankが使われていませんね。

https://ja.wikipedia.org/wiki/%E3%83%8D%E3%83%B4%E3%82%A1%E5%B7%9D https://www.openstreetmap.org/relation/2599821

新たに湧別川を書き直しましたのでご確認ください。

https://www.openstreetmap.org/relation/9279259

-------------------------------------------------------------------------------------------------
From: nabetaro
To Triglav2018
2019年04月 9日 16:00

返信ありがとうございます。

On 2019-04-08 11:01:18 UTC Triglav2018 wrote:

    Wikiepdiaの「ネヴァ川」に採用されているのを見つけてから日本の河川に写し取ってみましたが、なるほどネヴァ川のメンバーにはriverbankが使われていませんね。

    新たに湧別川を書き直しましたのでご確認ください。

    https://www.openstreetmap.org/relation/9279259

拝見しました。

なるほど、multipolygonの外周を開いたwayで接続して全体のエリアとしたのですね。 確かにJOSMとしてはエラーにならなくなります。

ただ、もとの私のfixmeに記載した以下の内容

    不正なmultipolygonのみ修正。同名リレーションがあるため統合するか、riverbankをリレーションに含めるべきでなければ削除が適当と思われる

の中で、統合ないし削除を記載した理由の中に、前回出典を示せなくて省略したものがあります。 後出しになってしまい申し訳ありません。

OpenStreetMapのベストプラクティスの中に、「地物ひとつにOSM要素はひとつ」というのがあります。

    https://wiki.openstreetmap.org/wiki/One_feature,_one_OSM_element (英語)
    https://wiki.openstreetmap.org/wiki/JA:%E5%9C%B0%E7%89%A9%E3%81%B2%E3%81%A8%E3%81%A4%E3%81%ABOSM%E8%A6%81%E7%B4%A0%E3%81%AF%E3%81%B2%E3%81%A8%E3%81%A4 (日本語)

「湧別川」にしろ「信濃川」にしろ、これらを表すリレーションが現状では2つづつあります (waterwayとmultipolygon)。 この状況は「地物ひとつにOSM要素はひとつ」に反していると考えます。 そのため、統合すべき、または統合の結果、記載するべきでない情報となったしまう場合は、削除すべきと考えています。

また、waterwayは水域を表しますが、multipolygonは複数の多角形を組み合わせたものを表します。どちらが情報として詳細でしょうか。

以上から、multipolygon「湧別川」リレーションが持つメンバ及びタグは、waterway「湧別川」リレーションに(不都合がないもののみ)移動し、multipolygon「湧別川」リレーションは削除が良いと思っています。

以上ご確認ください。

-------------------------------------------------------------------------------------------------
From: Triglav2018
To: nabetaro
2019年04月12日 18:46

OSMに無知な状態で意見することをお許しください。

「地物ひとつにOSM要素はひとつ」は、確かにそのとおりだと思います。

でも河川に地物が2つ重なっているとしたら?

道路は、線で表現します。 湖水は、面で表現します。

河川は、流路の線と、水域の面の2つの地物が重なっているのではないでしょうか?

なぜなら、流路のリレーションは水域を取り込まないし、その逆も然りです。 各国の河川を見てみましたが、両方を取り込んでいるリレーションを見たことがありません。

もし重複の判定を名称でされているのだとしたら、主である「流路」に対しての従「水域」の名称を取り除いてしまえばよいと思います。

さて、本題

今回開発されたウィキペディアへの移入ツールがなぜ type=waterway を拒絶しているのかが謎です。データの軽量化なのでしょうが、ノードを大量に間引きしてしまっているためにウィキペディア上でマップを拡大したら見れたものではありません。そのような状況で河川に対しては「面」で表現させようとしている。

河川も湖の延長にとらえているのでしょうね

湖のリレーションは natural=water, type=multipolygon, water=lake なので https://www.openstreetmap.org/edit?changeset=68860510

河川のリレーションは natural=water, type=multipolygon, water=river となるのでしょう。

-------------------------------------------------------------------------------------------------
From: nabetaro
To Triglav2018
2019年04月13日 21:57

On 2019-04-12 18:46:24 UTC Triglav2018 wrote:

    「地物ひとつにOSM要素はひとつ」は、確かにそのとおりだと思います。

    でも河川に地物が2つ重なっているとしたら?

    道路は、線で表現します。 湖水は、面で表現します。

    河川は、流路の線と、水域の面の2つの地物が重なっているのではないでしょうか?

まずTriglav2018さんが言われる「流路」と「水域」は、OSMで定義されている単語と同じ使い方をされているかを確認しておきたいです。

「流路」はともかく「水域」はwaterwaysの訳語として使用しています。

    https://wiki.openstreetmap.org/wiki/Waterways (英語)
    https://wiki.openstreetmap.org/wiki/JA:%E6%B0%B4%E5%9F%9F (日本語)

「水域」には、「川、運河、小川に加えて、湖、貯水池、ドック」をすべて含みます。 つまり、「河川」(という概念)は「水域」に含まれます。

Triglav2018さんは「水域」という単語を輪郭という意味で使っていないでしょうか。

その上でwaterwayリレーションの定義をご確認いただきたいです。

    https://wiki.openstreetmap.org/wiki/Relation:waterway
    https://wiki.openstreetmap.org/wiki/JA:Relation:waterway

waterwayリレーションは「河川」(という概念)を表現します。 waterwayリレーションには、流路という線と輪郭であるpolygonを(消極的ではありますが)両方含められます。

ですから、

    なぜなら、流路のリレーションは水域を取り込まないし、その逆も然りです。 各国の河川を見てみましたが、両方を取り込んでいるリレーションを見たことがありません。

waterwayリレーションのことを「流路のリレーション」と言われているのでしたら、その認識は誤りだと思います。繰り返しますがwaterwayリレーションには「流路」も「輪郭」も含められます。「流路のリレーション」は現在存在しません。
各国の河川にそのような例がないことをもって、両方を一つのリレーションに含められないというのは違うと思います。

    もし重複の判定を名称でされているのだとしたら、主である「流路」に対しての従「水域」の名称を取り除いてしまえばよいと思います。

先程から「概念」という単語を使ってきましたが、 「地物ひとつにOSM要素はひとつ」はそういった「概念」を表す地物が重複してはいけないということだと考えています。

「概念」を識別するための情報としてnameタグがよく使われますが、nameタグだけで表すわけではありません。

今回の例で言えば「信濃川」という概念を表すためのリレーションが複数ある状況が問題です。
どちらかが「信濃川」でないものを表しているのであれば、問題ないとも言えます。
「信濃川」を表す方のリレーションには、wikidataタグやwikipediaタグによって「信濃川」の情報を付与するのでしょう。

流路を表現できず輪郭のみを表現するmultipolygonと、流路、輪郭ともに表現できるwaterway、どちらを利用するかは自明だと考えます。

    さて、本題

    今回開発されたウィキペディアへの移入ツールがなぜ type=waterway を拒絶しているのかが謎です。データの軽量化なのでしょうが、ノードを大量に間引きしてしまっているためにウィキペディア上でマップを拡大したら見れたものではありません。そのような状況で河川に対しては「面」で表現させようとしている。

「今回開発されたウィキペディアへの移入ツール」がmaplink2テンプレート (https://ja.wikipedia.org/wiki/Template:Maplink2) のことでしたら、「type=waterway を拒絶している」という認識は違うと思います。

maplink2テンプレートはKartographerというソフトウェアを利用しているようなのですが、 https://www.mediawiki.org/wiki/Help:Extension:Kartographer/OSM/ja からリンクされている https://phabricator.wikimedia.org/T156433 にて、「multipolygon/route/boundary 以外のリレーションが扱えない」というバグとして扱われています(初回登録は2017-01-27)。

※ただ、本当にmaplink2テンプレートがKartographerを利用しているかは、wikipedia日本語版のテンプレートを保守している方に確認しないとわかりません。

つまりtype=waterwayがwikipediaに表示できないのは、修正されるべきバグとして扱われ、将来表示できるようになる可能性はあります。 ここに関してできることは、Kartographerの開発に参加するなり、誰かに参加してもらうなりといったことしかないと思います。

ただこれだけは言えます。レンダラーのためのタグ付け はするべきではありません。

wikipediaに表示できないからと言う理由で、type=multipolygonを使用しないでください。
multipolygonを使用する合理的な理由をお示しください。
私には、以上を持ってその理由は存在しないと考えています。
-------------------------------------------------------------------------------------------------
From: Triglav2018
To: nabetaro
2019年04月17日 12:46

河川は、輪郭も含めてwaterwayリレーションに含めるべきであるというわけですね? でも現実は、輪郭は含まれず放置されているということでしょうか?

「wikipediaに表示できないからと言う理由で、type=multipolygonを使用しないでください。」

というよりも

「multipolygon は確立していないので、決まるまで採用を控えてほしい」と訴えるべきでしょう。

ビギナーは見よう見まねで作業をするのですから、ミシシッピー川、ナイル川、アマゾン川がそうであれば、使ってしまいますよ。

なのでそのあとの「レンダラーのためのタグ付け」の説明が役に立ちません。だって本人は前述の大河川を参考に正しいと思ってやっているのですから。合理的理由を求められるのなら、逆に「早く片付けろよ、でないと広がっちゃうよ」って思いますよね。

川の輪郭が未確立なのであれば、移入ソフトのほうは「拒絶」でなく「保留」なのですね、きっと。

さて、具体的作業ですが。先日の[[湧別川]]を

現在、20km単位ほどで5分割(両岸で10本のウェイ)を結んで1つの巨大な枠にしているものを、5つのエリアに区切って、それぞれにmultipolygonリレーションを新設。それぞれにwikidataを与える。これなら後でリレーションを差し替えるのは容易になると思います。

https://www.openstreetmap.org/relation/9279259

日頃のOSMビギナーはどのような方々なのか存じませんが、こちらは集合知という不特定多数による共同編集作業をある程度承知しているものですので、少なくとも自分が触った個所については責任をもって最終形態(あるいは修正が容易な暫定状態)に持っていきますのでご安心ください。

それにしても iDではまったくエラーが出てませんからねぇ。いったいどう直せと。とてもやりにくいです。

ps. type=multipolygon, natural=water って自然林とかと同じグループなのですね。どうりで地物と重なっても問題ないわけだ。

-------------------------------------------------------------------------------------------------
From: Triglav2018
To: nabetaro
2019年05月 4日 14:44

いかがでしょうか? ウィキペディアの一部の河川記事で、表示が消えたり再び点いたりを繰り返す不具合がありましたが、どうやらご指摘のあった multipolygon書式の不整合(outerの外にouterを作らない)が原因だったようです。修正後は安定しています(不具合が出ていない河川ものちほど修正を施します)

さて、河川域の書式が 1種類に固定されていないのが不安ですが、編集ツール上でエラーが出ていないのであれば、暫定状態のまま編集を進めたいと思います。

当面の対象範囲は日本国内の

    一級水系本流の109本
    主要二級水系本流+一級水系支流の100本程度 の計200件ほど(1本平均 4リレーションとして最終合計 800〜1000リレーション前後)

こちらが提供するものは

    中流から上流域にかけての未整備の河川域描画
    他のウィキペディアンがトラブルとなったときの意見とりまとめ

認識を共有していただきたいのは

    multipolygonによる河川域描画は暫定であるということ
    他のシステムで上記河川域描画法で不整合が生じた場合、ウィキペディアとの優先順位を検討すること
    他システムが優位という結論で、ウィキペディア移入ツールの対応に目途が立たない場合、再修正作業に取り掛かること(修正前に画像データへの落とし込みを考えています)

よろしくお願いします。

最後に。十勝川でデータを管理するスーパーリレーション?を作成してみましたが、これはダメですよね?

https://www.openstreetmap.org/relation/9500007

-------------------------------------------------------------------------------------------------
From: nabetaro
To Triglav2018
2019年05月14日 10:45

反応が遅くてすみませんでした。

On 2019-05-04 14:44:51 UTC Triglav2018 wrote:

    いかがでしょうか? ウィキペディアの一部の河川記事で、表示が消えたり再び点いたりを繰り返す不具合がありましたが、どうやらご指摘のあった multipolygon書式の不整合(outerの外にouterを作らない)が原因だったようです。修正後は安定しています(不具合が出ていない河川ものちほど修正を施します)

    さて、河川域の書式が 1種類に固定されていないのが不安ですが、編集ツール上でエラーが出ていないのであれば、暫定状態のまま編集を進めたいと思います。

「河川域の書式」と言っているのがrelationのtypeのことであれば、コンセンサスが取れているのは、waterwayでしょう。multipolygonは複雑なエリアを表すということでコンセンサスが取れています。私見ですがmultipolygonはwaterwayのメンバになれるのではないでしょうか。

実際、挙げていただいたミシシッピー川、ナイル川、アマゾン川のうち、multipolygonにnameや、その川を示すタグが入っているのはナイル川だけのようです。

特にアマゾン川にはmultipolygon relationのnoteタグに「Amazonas-2 - do not add name tags to this, they belong to the river line and waterway relation」と記載されています。

    当面の対象範囲は日本国内の

        一級水系本流の109本
        主要二級水系本流+一級水系支流の100本程度 の計200件ほど(1本平均 4リレーションとして最終合計 800〜1000リレーション前後)

    こちらが提供するものは

        中流から上流域にかけての未整備の河川域描画
        他のウィキペディアンがトラブルとなったときの意見とりまとめ

    認識を共有していただきたいのは

        multipolygonによる河川域描画は暫定であるということ
        他のシステムで上記河川域描画法で不整合が生じた場合、ウィキペディアとの優先順位を検討すること
        他システムが優位という結論で、ウィキペディア移入ツールの対応に目途が立たない場合、再修正作業に取り掛かること(修正前に画像データへの落とし込みを考えています)

こちらは私とあなたの二者でコンセンサスが取れても仕方がありません。 せめて日本語のMLに投稿するべきでしょう。

差し支えなければ、今までのやり取りを経緯として、こちらで投稿しても構いませんがいかがでしょうか。

    最後に。十勝川でデータを管理するスーパーリレーション?を作成してみましたが、これはダメですよね?

    https://www.openstreetmap.org/relation/9500007

まずrelationのtypeが不正でしょう。

-------------------------------------------------------------------------------------------------
From: Triglav2018
To: nabetaro
2019年05月19日 10:15

お付き合い深く感謝します。

ミシシッピ川ありますよ

https://www.openstreetmap.org/edit#map=16/31.2258/-91.6266

編集者ひとそれぞれという感じですね。

その後、multipolygon不整合の状態にあった北海道のいくつかの河川を修正いただきました。石狩川などをごらんください(複数のラインで1枠を作る)。

この修正内容はリレーションが1本化されているので、これで(編集ツールの警告などの)問題が無ければ、前回メールでの提示書式をやめて、この新書式を今後採用したいと思います。

こちらからは、(人員の限られる)MLに出向くことはいたしません。システム上のコミュニティページがあればよいのですが、なければウィキペディア内で記していこうと思います。

https://ja.wikipedia.org/wiki/%E5%88%A9%E7%94%A8%E8%80%85:Triglav/%E3%82%A6%E3%82%A3%E3%82%AD%E3%83%9A%E3%83%87%E3%82%A3%E3%82%A2%E4%B8%80%E8%BE%BA%E5%80%92%E3%81%AA%E6%96%B9%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%88%E3%83%9E%E3%83%83%E3%83%97%E5%88%A9%E7%94%A8%E8%A1%93

https://ja.wikipedia.org/w/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85%E2%80%90%E4%BC%9A%E8%A9%B1:Triglav/%E3%82%A6%E3%82%A3%E3%82%AD%E3%83%9A%E3%83%87%E3%82%A3%E3%82%A2%E4%B8%80%E8%BE%BA%E5%80%92%E3%81%AA%E6%96%B9%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%88%E3%83%9E%E3%83%83%E3%83%97%E5%88%A9%E7%94%A8%E8%A1%93&action=edit&redlink=1

代行していただくことは有り難く思いますが、日本国内(日本語話者間)で統一されても近い将来、国際的に不整合を生じることになるかもしれません。

十勝川のスーパーリレーションは削除しました。

-------------------------------------------------------------------------------------------------
From: Triglav2018
To: nabetaro
2019年05月19日 10:22

追記

>multipolygonにnameや、その川を示すタグ

失礼しました。nameは必要としません。

-------------------------------------------------------------------------------------------------
From: nabetaro
To Triglav2018
2019年05月23日 16:28

On 2019-05-19 10:15:29 UTC Triglav2018 wrote:

    お付き合い深く感謝します。

    ミシシッピ川ありますよ

    https://www.openstreetmap.org/edit#map=16/31.2258/-91.6266

このURLにあるmultipolygonリレーションには、nameもwikidataもついていません。 あなたが進めているmultipolygonリレーションにwikidataタグを付与するものとは根本的に異なると思います。

        実際、挙げていただいたミシシッピー川、ナイル川、アマゾン川のうち、multipolygonにnameや、その川を示すタグが入っているのはナイル川だけのようです

と書いたのは、multipolygonリレーションにname、wikidata、wikipediaなどその川を表すタグがついているのはナイル川だけだということです。 そしてナイル川はPOIが重複しているため修正するべきだと考えています。

    その後、multipolygon不整合の状態にあった北海道のいくつかの河川を修正いただきました。石狩川などをごらんください(複数のラインで1枠を作る)。

正直申し上げて、multipolygonで河岸を描いていただくことに意見はありません。エラーのない範囲で描いていただければと思います。 ただwaterwayリレーションとmultipolygonリレーションに同じname、wikidata、wikipediaタグがあるのは重複だと思います。

    こちらからは、(人員の限られる)MLに出向くことはいたしません。システム上のコミュニティページがあればよいのですが、なければウィキペディア内で記していこうと思います。

https://wiki.openstreetmap.org/ 内の適切なtalkページでは不足ですか?

議論も投票もここで行われていると思いますが。

    代行していただくことは有り難く思いますが、日本国内(日本語話者間)で統一されても近い将来、国際的に不整合を生じることになるかもしれません。

少なくとも、ここで二者で話をするよりはよほどマシだと思います。 でないと、私とやり取りしたようなことを、Triglav2018 と別の誰かがすることになると思います。 ですので、このメッセージを含め、やり取りした内容をMLに共有させていただきます。


-- 
+---------------------------------------------------------------------+
  倉澤 望(鍋太郎)
  KURASAWA Nozomu (nabetaro)  <nabetaro @ caldron.jp>
  GnuPG KeyID/FingerPrint:
    4E907A5F / F3A9 35FC C5D5 7FBC 7009  895A D5BE 94B9 4E90 7A5F
+---------------------------------------------------------------------+



Talk-ja メーリングリストの案内