Прапанова па міграцыі name на name:be

Сабраў статыстыку па выкарыстоўваню name па катэгорыях, тут бярэцца дамп беларусі, таму можа трошкі захопліваць суседзяў, а праз postgis ня ўсе катэгорыя ўлічваюцца

https://docs.google.com/spreadsheets/d/1eJbT1uQ36uKR5CEXBCvlfNPvjepLA4Rr0CdfOjZ4NpU/edit?usp=sharing

зрабіў POC, так для admin_level можа выглядаць міграцыя: https://drive.google.com/file/d/1j-kS4-vgjCADq6ku4467TSUlNp-ehzP4/view?usp=sharing (kepler.gl з разьбіўкаю па слаях, слой можна рабіць бачным ці наадварот)

что такое “POC”?

Табличка тегов, в которых встречаются кирилические символы
http://wowik.byethost7.com/places/by/cyrtags.php

Proof Of Concept - прыклад, прататып

яшчэ адзін прататып: https://drive.google.com/drive/folders/1OoqDCdswoJl-aIyUi6d_6AIlPB1CM-x2?usp=sharing

  • geojson прыкладаў па слаях, можна глянуць у kepler.gl
  • osc
  • сёньняшні pbf з прымененым osc
  • уключае адміністаратыўныя зьмены, населенныя пункты, дарогі, адрасы

Стварыў штодзённа абнаўляльную старонку з прагрэсам і статыстыкаю:

  • розныя тэгі: name, name:prefix, short_name і г.д.
  • інфармацыя разьбіта па катэгорыях кшталту дарогі, населенныя пункты і г.д.
  • для name таксама ёсьць прагрэс і статыстыка па залежным тэгам: addr:street, destination і г.д.
  • ячэйкі ў прагрэсе маюць папап са спасылкамі на CSV ці/альбо overpass

https://tbicr.github.io/osm-name-migrate/##

Таксама скрыпт міграцыі https://github.com/tbicr/osm-name-migrate/blob/main/belarus_upd.py

тут ёсьць два сцэнары:

  1. звычайны элемент з тэгамі name, name:be, name:ru - name будзе заменены на name:be
  2. залежны элемент (напрыклад addr:street) - спачатку знаходзіцца бліжэйшы элемент з тэгамі name, name:be, name:ru дзе залежны тэг будзе у адным з name, name:be, name:ru тэгаў і потым замяняем залежны тэг на name:be.

Напрыклад node1 мае тэг addr:street=улица Скарыны, знайшлі бліжэйшы элемент way1 з тэгамі name=вуліца Скарыны, name:be=вуліца Скарыны, name:ru=улица Скарыны і мяняем node1 addr:streetна way1 name:be: addr:street=вуліца Скарыны

выправіў стварэньне osc файла цяпер ён нармальна панаўляе pbf

https://drive.google.com/drive/folders/1PvEYY1TcDeOztmxu90bwwEouP98zPHF7?usp=sharing - тут osc і pbf пасьля міграцыі admin_level, boundary=administrative, place=city, place=town, place=village, place=hamlet, place=isolated_dwelling, place=allotments, place=locality, landuse=allotments, abandoned:place, traffic_sign=city_limit, highway, type=associatedStreet, type=street і залежны тэгаў addr:region, addr:district, addr:subdistrict, addr:city, addr:place, addr:street, addr2:street, from, to, via, destination, destination:backward, destination:forward, water_tank:city

Дэталі як можна карыстацца старонкаю са статыстыкаю моўных тэгаў https://tbicr.github.io/osm-name-migrate/##

Разьдзел прагрэсу разьбіты на катэгорыі, кожная катэгорыя утрымлівае набор простых тэгаў, напрыклад у катэгорыю admin уваходзяць admin_level=2, admin_level=4 і г.д.

Кожан радок разьбіты на некалькі частак - назва катэгорыі ці тэгу, абсалютная статыстыка, статыстыка ў адсотках.

Кожан радок абсалютнае статыстыкі падсьцечаны колерам:

  • зялёны - name пазначаны па-беларуску (name і name:be аднолькавыя)
  • жоўты - name пазначаны па-расейску (name і name:ru аднолькавыя), name:be прысутнічае - элемент гатовы да аўтаматычнае міграцыі
  • чырвоны - цяжка сказаць на якой мове name - элемент не гатовы да аўтаматычнае міграцыі

Кожан радок разьдзелу прагрэсу паказывае бягучы стан моўных тэгаў:

  • be=ru азначае што name, name:be і name:ru аднолькавыя
  • be+ru азначае што name і name:be аднолькавыя, name:ru прысутнічае
  • be азначае што name і name:be аднолькавыя, name:ru адсутнічае
  • ru+be азначае што name і name:ru аднолькавыя, name:be прысутнічае
  • ru азначае што name і name:ru аднолькавыя, name:be адсутнічае
  • other both азначае што name адрозны ад name:be ці name:ru, name:be і name:ru прысутнічаюць
  • other be азначае што name адрозны ад name:be, name:be прысутнічае, name:ru адсутнічае
  • other be азначае што name адрозны ад name:ru, name:ru прысутнічае, name:be адсутнічае
  • no lang азначае што name:be і name:ru адсутнічаюць

Калі націснуць на ячэйшку то зьяўляецца папап дзе могуць знаходзіцца спасылкі на дэталі па дадзенай ячэйцы ў CSV ці overpass.

CSV
Прыклад з CSV дзе адсутнічае name:ru
На дадзенай старонцы можна знайсьці дэталі па асобных элементах з інфармацыяй аб osm_type і osm_id

overpass
Прыклад з overpass дзе name адрозны ад name:be ці name:ru
Запыт у overpass да таго ж можна выкарыстоўваць у JOSM для далейшага рэдарагваньня дадзеных

стварыў апытанку хто чым гатовы дапамагчы і каб вызначыцца што патрэбна да пачатку галасаваньня
па міграцыі https://forms.gle/zzAunzZtQfjvVqX46

Вынікі апытанкі (6 чалавек):

Для пачатку міграцыі патрэбнае добрае запаўненьне (80-90%) наступных катэгорыяў з https://tbicr.github.io/osm-name-migrate/

  • admin - 100%
  • place - 100%
  • allotments - 98%
  • locality - 100%
  • suburb - 52% - трэба дапрацаваць
  • highway - 98%
  • water - 79% - трэба дапрацаваць
  • natural - 59% - трэба дапрацаваць

дапрацаваць трэба да 7500 элементаў, часта зь іх як рэкі дублюецца, таму унікальных будзе меньш

Таксама былі адзінкавыя адказы мець добразе запаўненьне наступных катэгорыяў да міграцыі, але ў асноўным запаўняць пасьля міграцыі:

  • public_transport - 85%
  • religion - 71%
  • education - 56%
  • healthcare - 34%
  • government - 37%
  • tourism - 47%

Запуўненьне пасьля міграцыі:

  • infrastructure - 56%

Запуўненьне пасьля міграцыі ці ўвогуле не запаўняць:

  • amenity - 48%
  • building - 39%
  • office - 31%

Час які трэба актыўна падтымліваць пераход 3-6 месяцаў

Таксама стварыў старонку для агульнага рэдагаваньня https://docs.google.com/spreadsheets/d/17v5KH70O9zL9KPUCmp8d0NH2Y7OUdA9Lu3dzDAaZ4FM/edit?usp=sharing - выбіраеш радок, пішаш хто рэдагуе і калі пачаў - пераходзіш па спасылцы на overpass - запыт у overpass можна імпартаваць у JOSM - дадаць name:be

Хачу прапанаваць правіла на галасаваньне для абмяркоўваньня

Кароткае правіла:

  • беларуская мова зьяўляецца моваю па замоўчаньні, калі ўзьнікае сытуацыя раўназначнага выкарыстаньня розных моваў, то прыярытэт аддаеца беларускай
  • назвы ў name для тапонімаў, дзяржаўных ці грамадзка значных ўстановаў і інфраструктуры павінны пісацца па-беларуску, таксама абавязкова запаўненьне моўных тэгаў name:be і name:ru для беларускай і расейскай назвы
  • назвы ў name для POI мае сэнс пазначаць адпаведна шыльдам, таксама пажадана запаўненьне моўных тэгаў name:be і name:ru для беларускіх і расейскіх адпаведнікаў назвы, калі такія існуюць
  • назвы ў залежных тэгах кшталту addr павінны адпавядаць name незалежна ад мовы выкарыстаньня

Тлумачэньні:

беларуская мова зьяўляецца моваю па замоўчаньні, калі ўзьнікае сытуацыя раўназначнага выкарыстаньня розных моваў, то прыярытэт аддаеца беларускай

  • дадзенае правіла зьяўляецца працягам логікі калі новым геаграфічным аб’ектам назва даецца па-беларуску, пасьлся чаго транслітаруецца на іншыя мовы
  • дадзеная правіла звычайна не распаўсюджваецца на назвы іншамоўнага паходжаньня за выключэньнем назваў якія былі асіміляваныя беларускаю
  • напрыклад дадзенае првіла можа дапамагчы ў выбары калі існуюць шыльды на розных мовах ці існуюць шырока вядомыя варыянты назвы на неаклькіх мовах

назвы ў name для тапонімаў, дзяржаўных ці грамадзка значных ўстановаў і інфраструктуры павінны пісацца па-беларуску, таксама абавязковае запаўненьне моўных тэгаў name:be і name:ru для беларускай і расейскай назвы

  • назвы населенных пунктаў на шыльдах пераважна пазначаюцца па-беларуску
  • назвы вуліцаў, напрыклад па Менску маюць у асноўным шыльды на беларускай мове
  • прыпытнкі і маршруты грамадзкага транспарту, напрыклад па Менску маюць у асноўным шыльды на беларускай мове
  • установы адукацыі, аховы здароўя і іншыя дзяржаўныя ўстановы звычайна маюць шыльды на дзьвух мовах

тэгі тапонімаў:

  • admin_level=*
  • boundary=*
  • place=*
  • traffic_sign=city_limit
  • landuse=*
  • highway=*
  • type=associatedStreet
  • type=street
  • bridge=*
  • tunnel=*
  • waterway=*
  • type=waterway
  • water=*
  • natural=*
  • ele=*

назвы ў залежных тэгах кшталту addr павінны адпавядаць name незалежна ад мовы выкарыстаньня

залежныя ад тапонімаў тэгі:

  • addr:region
  • addr:district
  • addr:subdistrict
  • addr:city
  • addr:place
  • addr:street
  • addr2:street
  • from
  • to
  • via
  • destination
  • destination:backward
  • destination:forward
  • water_tank:city

тэгі дзяржаўных ці грамадзка значных ўстаноў і інфраструктуры (аб’екты грамадзкага транспарту, інфраструктуры, рэлігійныя, адукацыі, аховы здароўя, пошты, бібліятэкі, міліцыі, вайсковыя, дзяржаўныя, турызму):

  • public_transport=*

  • route=*

  • route_master=*

  • type=route

  • type=route_master

  • railway=*

  • barrier=*

  • power=*

  • substation=*

  • man_made=*

  • embankment=*

  • amenity=place_of_worship

  • amenity=monastery

  • building=church

  • building=cathedral

  • building=chapel

  • religion=*

  • amenity=university

  • amenity=college

  • amenity=school

  • amenity=kindergarten

  • building=university

  • building=college

  • building=school

  • building=kindergarten

  • amenity=hospital

  • amenity=pharmacy

  • amenity=clinic

  • amenity=doctors

  • amenity=dentist

  • building=hospital

  • building=clinic

  • emergency=*

  • healthcare=*

  • amenity=post_office

  • amenity=police

  • amenity=library

  • military=*

  • office=government

  • government=*

  • tourism=*

  • historic=*

  • memorial=*

  • ruins=*

  • information=*

  • attraction=*

  • resort=*

  • artwork_type=*

назвы ў name для POI мае сэнс пазначаць адпаведна шыльдам, таксама пажадана запаўненьне моўных тэгаў name:be і name:ru для беларускіх і расейскіх адпаведнікаў назвы, калі такія існуюць

  • шмат якія POI могуць мець першапачатковую назву не на беларускай мове, дадзены падыход мусіць спрасьціць запаўненьне name для POI і выкарыстоўваць правіла https://wiki.openstreetmap.org/wiki/Ground_truth
  • напрыклад KFC

Пооткатывал преждевременное
https://www.openstreetmap.org/user/avlaba/history

трошкі перарабіў прапанову па міграцыі https://wiki.openstreetmap.org/wiki/Be:Belarus_language_issues/Migration_proposal, праз некалькі дзён перавяду ў proposed, далучайцеся да абмеркаваньня

перавёў прапанову з draft у proposed: https://wiki.openstreetmap.org/wiki/Be:Belarus_language_issues/Migration_proposal

прапанаваў галасаваньне на 16 верасьня

Ідэя правільная. Можна дадаць у “новым геаграфічным аб’ектам назва даецца па-беларуску”, што “старыя назвы да 1930-х гадоў даваліся таксама толькі па-беларуску”.
А што тычыцца “З чаго і як павінна ўтравацца лацінcкая транслітарацыя int_name? Якая транслітарацыя павінна ўжывацца клясічная (Ł) ці афіцыйная (Ĺ)?” - то гэта мусіць быць толькі афіцыйны варыянт. Гэта і ground truth, і афіцыйнасць, і адсутнасць шмат якіх іншых праблем.

Галасаваньне пачалося, тут дэталёвая інструкцыя па галасаваньню https://wiki.openstreetmap.org/wiki/Be:Belarus_language_issues/Migration_proposal#%D0%93%D0%B0%D0%BB%D0%B0%D1%81%D0%B0%D0%B2%D0%B0%D0%BD%D0%BD%D0%B5

Знайшоў праблему як вызначаецца актыўны карыстальнік https://github.com/tbicr/osm-name-migrate/blob/main/belarus_active_users.csv

Падправіў - паболела на 46 чалавек, пакуль рассылаў паведамленьне пра галасаваньне даслаў большай колькасьці людзей па-за гэтым сьпісам

А калі паведамленне атрымаў, а ў спісе няма? Голас будзе залічаны? дзякуй