Теґування найменувань вулиць

Я можу прикрутити аналізатор, це неважко. Робити?

Eugene

Я нещодавно перекладав нові рядки для JOSM. Повинен вже бути втулок TrustOSM, який на основі GPG дозволяє накладати цифрові підписи на дані. Тож можна доопрацювати бота таким чином, щоб він перевіряв наявність таких підписів.

Ось наприклад http://www.openstreetmap.org/browse/way/33849369

Done.

Eugene

Написал шапку список того, что делает бот. Продублировал в шапке. Позже перенесу в Вики.

То, что делается сейчас:

  • Все сокращения в топонимах “разворачиваются”

  • Топонимы переносятся в конец названия

  • Все топонимы записываются с маленькой буквы

  • Исправляются типичные ошибки. тупік → тупик, вулица → вулиця, и ещё пяток других

  • Если в name записано русское название, и присутсвует “name:uk”, name записывается в name:ru (если опять же, его не было), и перетирается значением из “name:uk”

  • Если name:en отсутствует, и в “name” у нас обнаружен украинский язык, и назвнаие корректно (присутсвует топоним в конце), оно генерится транслитерацией плюс перевод топонимов

  • Если пишут “1-й провулок Васюкова”, оно превращается в “1-й Васюкова провулок”

Что планируется делать:

  • Обработка 1-й, 2-й и т.п.

  • Исправление английских топонимов – сокращения и title case. Там тоже часто пишут “str.”

  • Проверка некорректной транслитерации (тут ещё репу почесать надо, чтобы ни в коем случае не перетереть исправленное автором название, буду много тестировать)

  • Попытаться обработать случаи, когда топоним не указан вообще. “Герцена”, “Карла Лібкнета” и т.п. Там нужно добавлять “улица”

  • “Автоперевод” названий с русского языка. Если есть уже где-то улица с обоими названиями, взять оттуда. Но тут у меня большие сомнения

  • Обновлять английскую транслитерацию, когда улица переименована

  • Неверные теги. Бывают пишут “name:ua” и “name:rus”

  • Исправлять ошибки в “name:uk”

  • Автодобавление “name:uk”, было обсуждено раньше, они нужны. Брать из “name”, если там действительно украинский язык

В общем, подход в боте такой: исправлять только явные, гарантированные ошибки.

Eugene

Впевнений, що цей варіант правильний? Якщо так, то додай ще плз правило
“Васюкова 1-й провулок” → “1-й Васюкова провулок”

Про name:uk. Цей теґ, на мою думку, краще використовувати для назв об’єктів за межами України, додаючи до них український відповідник.

PS дайте посилання на обговорення, що до застосування name:uk

Дивись у мене у щоденнику останній коментар, там є посилання на обговорення англомовної спільноти.

В двох словах, це допоможе рендереру, бо не буде потреби вияснювати мову території, де знаходиться вей. Але звичайно, якщо україномовна спільнота вирішить, що не треба, я цього робити не буду.

Eugene

я цю неприємну особливість osm примітив ще давно
вказування локальних імен дозволяє рендереру вибрати найбільш доречний варіант для відображення
але відсутність можливості вказати мову локального імені зводить нанівець всі переваги багатомовної підтримки
зараз маємо ситуацію коли набір тегов містить коди будь якої мови, але не локальної
якщо записати локальну назву у тому ж форматі що і іноземну, то в результаті отримаємо дублювання інформаціі та всі проблеми, з цим пов’язані
як можна вирішити цю проблему без глобальних змін я не уявляю

Якщо це робитиме твій бот — то хай робить, я не заперечую. Руками таке робити — марна трата часу, який краще використати на замаплення території :slight_smile:

Во! Я з цього і починав. Тобто, “Не марнуйте час на name:en”. У ході дискусії виявилося, що десь можуть бути виключення, але це мізерна частина, то ж бот буде виставляти name:uk та name:en.

Eugene

Сьогодні бо ще й зазирнув у всі name:uk і повиправляв помилки там. Було 101 помилка по країні. В основному це були виправлення скорочень, правильні апострофи, і у трьох випадках перестановка топоніму на кінець назви. Я також порівняв name та name:uk. У 22-ох випадках вони відрізнялися. Виправив руками, так було простіше.

До цього додалися 167 транслітерацій, і 14 виправлень. Непогано, бо це менше 10% помилкових нових назв.

Тож, на цей час ми маємо:
1104 помилкових російських назв
2966 помилкових українських назв
1760 випадків російської мови у теґу name

Помилкові, це ті назви, де відсутній топонім. Значну їх частину буде виправлено в одному з майбутніх запусків бота.

Хочу ще раз підкреслити, що до цих пір я перевіряю всі виправлення перед завантаженням на сервер. Поки що не довелось виправляти те, що бот нагенерив, але вважаю повністю автоматичну роботу ще передчасною.

Eugene

Сьогодні додав слова вулиця та улица для тих веїв, де в назві було одне слово, і це не була назва траси.

Перевірив всі результати перед заватнаженням, було пару речей на кшталт “Гагарина вулиця”, але залишив як є, простіше виправити вручну, ніж ліпити велику купу перевірок. Таких було може 3 на майже 2.5 тисячі найменувань.

Також було додано 75 англыйских назв, та зроблено 76 виправлень назв, з них 36 заміна “Ленина” на “Леніна” в українських назвах. Тобто, справжніх виправлень усього 29.

Eugene

http://www.openstreetmap.org/browse/way/54375450/history
Трнаслітерація Польова вулиця → Polyova Street не відповідає офіційній.
Повинно бути Polova street. Толстой → Tolstoi, а не Tolstoy

Так, треба буде виправляти. Я ще не реалізував виправлення невірної транслітерації.

Eugene

Я редактирую карту в Potlatch, хочу чтобы были названия на русском языке, куда мне добавлять код “name:ru” в Alternative name? Или без всяких кодов там указывать название улицы на русском?

На территории Украины название должно быть на украинском. Если делать его на русском, это создавать работу другим, ибо кто-то должен будет это рано или поздно за вами исправлять. Код name:ru должен писаться в… name:ru! В потлаче его придётся добавлять руками в закладке Advanced.

Eugene

Понял, спасибо!
Тогда есть просьбочка не редактировать меня (Шахтёрский район Донецкой области), я лишь некоторое время подержу русскоязычные названия, потом пересниму карту и сменю названия на украинские.

Для вывода любых присутствующих у объекта на званий на разных языках можешь воспользоваться http://toolserver.org/~osm/locale/__all.html (в правом верхнем “+” выбираешь нужные языки.
http://toolserver.org/~osm/locale/ru.html - только русский язык

Спасибо, получилось! Значит буду сразу теперь названия переделывать на правильные, только кадастр улиц надо поискать, чтобы правильно названия писать по украински.

Як правильно тегувати перейменування вулиць?
Дехто записує стару назву в дужках в тег name (наприклад “Антоновича (Горького)” http://osm.org/go/0jfPMBkvZ–))
Дехто записує стару назву в old_name, що здається є більш правильним.
Тег old_name використовується тільки для пошуку? На карті не відображається?
Чи потрібен тег old_name:ru? Думаю що так, але ніде його не зустрічав.
Що робити якщо у вулиці декілька старих назв(наприклад “Січневого Повстання” → “Мазепи” → “Лаврська”)?

І ще одне запитання що стосується переіменувань будинків (хтось же додумався):
стара адреса “факультету Кібернетики, КНУ, Київ”: проспект Глушкова, 2, корпус 6
нова адреса: проспект Глушкова, 4д
Стара адреса вказана на сайті http://unicyb.kiev.ua/ua/contacts.
Нова адреса вказана на табличці на будинку.
Просто прописати новий номер?