Пропозиція - природній порядок слів у назвах вулиць

Доброго дня!

Варто підняти знову питання про порядок слів у назвах вулиць. Досить багато часу пройшло з попередньо прийнятої угоди, і вона, звісно, не всіх влаштовує.
Мінуси прийнятої угоди:

  • проблема з пошуком у навігаторах видається мені надуманою (пояснення нижче)
  • порядок слів не завжди природній для української мови
  • місцями назви виглядають дуже дико - Залізнична Лінія вулиця, наприклад
  • не відповідають вимозі truth on the ground, хоч це і не так важливо через відсутність одноманіття на табличках

Поточні проблеми з пошуком в навігаторах:

  • раніше було проблемою розрізнити “вулиця Крас…”, яких може бути кілька. Зараз така сама проблема з неможливістю розрізнити “Володимира В…”.
  • досить легко в процесі конвертації (а цих конверторів у нас обмежена кількість) зробити спрощення - від імені залишити лише букву, прізвище винести на перше місце, статусну частину - на останнє, формальні правила для цього ми можемо розробити в процесі дискусії, щоб працювало на всіх можливих прикладах.

Отже, я пропоную розглянути наступне:

Приклади:
вулиця Остапа Вільшини
вулиця Головна
вулиця Генерала Катукова
1-й провулок Герцена
1-й Миколаївський провулок
Прибережна алея
алея Воїнів-Визволителів
Андріївський узвіз

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

посилання по темі:
Обговорення за 2009 рік на вікі-сторінці
Сторінка з граматичними правилами на сайті UA-MapMaker
Розпорядження про присвоєння поштових адрес об’єктам нерухомості у місті Києві

  1. Виніс статусної частину вперед всієї назви візуально хіба не ускладнить пошук потрібної вулиці на мапі?
  2. Чи гарантується, що потім можна буде однозначно визначити статусну частину?
  3. З назвами вулиць наразі і так бардак.

Якщо є бажання відобразити в name всю складність мови, може краще ввести скорочення, аби mapnik міг відрендерити більше підписів?

ні, і я не хочу це доводити :slight_smile: візуально людина нормально знаходить і слова початку, і слова з середини фрази. Тим більше, що статусна частина назви пишеться з маленької літери.

див. попередню відповідь. Для складних випадків, коли немає слів з маленької літери, статусної частини не існує

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

думаю, що це не варто робити - потрібно фіксити мапнік. чи це був сарказм?

Ні, я проти. В нас і так бардак з назвами. А буде ще гірше.

У навігаторах, може й можна навести лад, якщо зробити пост-обробку даних після конвертації у польський формат та перед конвертацією у формат навігатора.
А от при роботі з ДЖОСМом хто буде сортувати список релейшенів вулиць, де через “природній” порядок слів всі релейшени вулиць перемішаються :frowning:

Мені, навпаки, дуже подобається ідея писати назви вулиць природнім чином.
Назви типу “Незалежності майдан” чи “Ярославів Вал вулиця” чи “Ринок площа” чи “Французький Бульвар вулиця” на мою думку незвичні користувачу.
Цілком логічно вживати загальновживані “Майдан Незалежності”, “вулиця Ярославів Вал”, “площа Ринок” тощо.
Як правильно написати “Північний бульвар імені Пушкіна” згідно існуючої угоди я й не знаю.

olehz, думаю, що з визначення статусної(доречі, що це? те що на nadoloni.com “основа”?) частини проблем не повинно бути.
dimonster, але ж в джосмі дуже зручно вибирати зв’язок через relationtoolbox:
а) клік по лінії дороги, у вікні relationtoolbox з’являється зв’язок
або
б) клік Find у вікні relationtoolbox, дві букви з назви вулиці, все пофільтрується і легко знайти необхідний зв’язок

Зі свого боку хочу підняти питання про показ назв для коротких вулиць, що мають довгу назву. Ця назва навіть на великих масштабах не вся вміщується у лінію вулиці, а на більш мілких її зовсім не буде видно крім початку першого слова. Що робити в такому випадку? (питання стосується саме показу назви на мапах, як на головній так і в навігаторах)

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

Бардак, як мені здається, через неочевидність правил і через те, що про них мало хто знає.

Користувачу чого? Навігатора? Мапи на головній сторінці? Чи ви маєте на увазі маперів?
Новачкам у OSM та у картографії взагалі будь що може здаватися “незвичним”. Наприклад, дорога, представлена ламаною лінією, а не смужкою, необхідність ставити точку на перетинанні доріг. На те вони й новачки.

Я мав на увазі список зв’язків, який показаний праворуч у вікні. Там видно релейшени вулиць, відсортовані за алфавітом. І коли у ДЖОСМі відкрито значний шмат міста, тих релейшенів у списку стає понад два десятки. І без сортування за алфавітом їх незручно шукати.

Статусні частини пишемо після назви. Це правило просте. Воно записано у вікі. Можливо, комусь воно здається неочевидним. Ну то й що? Наприклад, правило російського правопису “жи, ши пиши с и” теж є неочевидним та неприроднім, бо всі чомусь говорять “жы, шы”.

“а вот ето уже наша нєдоработка”.

користувачів відрендереної мапи і маперів

нещодавно я надсилав в reltoolbox патч для сортування чисел в натуральному порядку замість лексикографічного, тепер Тролейбус 5 відображається перед Тролейбус 10, а не навпаки. Якщо вивести нормальне правило для сортування, щось на зразок цього можна додати і в головне вікно. Користувачі з російського форуму, думаю, теж будуть в захваті, якщо додати підтримку різних мов у статусних частин. Мені, особисто, незручно шукати серед вулиць, що починаються на “Василя”, потрібну. Я б по прізвищу шукав краще.

Про “просте” правило тези див. в першому повідомленні - воно неприроднє. Я хочу переконати спільноту в необхідності змін. І так, це не єдине питання, що я б хотів підняти, але давайте по черзі :slight_smile:

ИМХО я против.
Отсутствие систематизации всегда источник развития бардака. И постобработка тоже всегда легче при наличии логичной системы.

Ви невірно мене розумієте, я пропоную змінити систематизацію, а не поламати її. Постобробка - не проблема. Покажіть мені приклади існуючої постобробки, яка не перенесе зміни місця статусної частини з мінімальним фіксом.

Загалом, я підтримую. Нововедення не таке страшне, як здається на перший погляд.

Я додав перевірку в моєму валідаторі на апперкейз перших літер слів назви. Але є проблема. Що робити з name:en? Вносити статусну частину з малої літери? Що суперечить стандартам в англомовних країнах.

Загалом по Україні 3605 вулиць не проходять перевірку. Пропоную спершу, зменшити це число хоча б на порядок.

Для англомовних не треба.

На всякий случай напомню что есть (и уже более года используется в России) инструмент, который позволяет привести названия улиц в соответствие принятому в стране соглашению, а также найти опечатки и прочие ошибки. Подчеркну, что программа не зависит от языка, не завязана на принятые в России соглашения и не требует написания специфичного для языка и возможно подверженного ошибкам кода. Основа - словарь названий улиц (для России выглядит так: https://raw.github.com/AMDmi3/streetmangler/master/data/ru/main.txt)) и небольшая таблица статусных частей (https://github.com/AMDmi3/streetmangler/blob/master/lib/locales/ru.cc).

В итоге, например, со словарём из двух десятков часто встречающихся в Украине названий, программа предложит следующие замены на “каноническую” форму:

 Коцюбинського вулиця|Коцюбинського вулиця
ГОРЬКОГО вул.|Горького вулиця
ЛЕНІНА вул.|Леніна вулиця
МІЧУРІНА вул.|Мічуріна вулиця
САДОВА вул.|Садова вулиця
ШЕВЧЕНКА вул.|Шевченка вулиця
Шевченка вулиця |Шевченка вулиця
вулиця Київська|Київська вулиця
вулиця Леніна|Леніна вулиця

и такие предположения об опечатках:

Лермонотова вулиця|Лермонтова вулиця
Лєрмонтова вулиця|Лермонтова вулиця
Мічурина вулиця|Мічуріна вулиця
Мічуріня вулиця|Мічуріна вулиця
Партизанська вілиця|Партизанська вулиця
Петрівського вулиця|Петровського вулиця
Шевченко вулиця|Шевченка вулиця
Школьна вулиця|Шкільна вулиця
Шорса вулиця|Щорса вулиця

“Лермонотова” тут - явно опечатка, насчёт остального - не уверен (носителям языка должно быть виднее), но если предположения неверны они просто добавляются в словарь.

Также было найдено 48 объектов с отсутствующей статусной частью. Для визуализации всего этого можно поднять валидатор аналогичный http://streetmangler.amdmi3.ru.

Если интересно, могу подробнее рассказать как этим пользоваться, а вообще документация есть тут: https://github.com/AMDmi3/streetmangler/blob/master/README и тут: http://wiki.openstreetmap.org/wiki/Streetmangler

но судя по этому:

поддержку релейшенов все равно придется добавлять…

Моя черга: я теж підтримую цю пропозицію, але б хотілося, щоби вельмишановні dudka або olehz запустили в себе валідатор AMDmi3.

Classification statistics:
           Total       Exact match     Canonical form     Spelling fixed    Stripped status           No match          Non-names
 Total:   141181        0 (  0.00%)        0 (  0.00%)        0 (  0.00%)        0 (  0.00%)   109608 ( 77.64%)    31573 ( 22.36%)
Unique:    19655        0 (  0.00%)        0 (  0.00%)        0 (  0.00%)        0 (  0.00%)    14702 ( 74.80%)     4953 ( 25.20%)
Generalized database statistics:
           Total             Match            Fixable           No match
 Total:   109608        0 (  0.00%)        0 (  0.00%)   109608 (100.00%)
Unique:    14702        0 (  0.00%)        0 (  0.00%)    14702 (100.00%)

Спершу треба словник назв заповнити. Тобто обробити вручну 15К назв. Особисто я пас. :expressionless:

Да, но это пара строчек. Сделаю на днях.

Понятно что работа немаленькая. Тем не менее:

  • небольшая часть названий покрывает значительную часть улиц, так что чтобы исправить большую часть ошибок все улицы забивать не обязательно. Валидатору также достаточно небольшого процента названий чтобы стало видно скопления ошибок
  • в эти 15k входят и альтернативные написания каждого названия, и не-названия (в России, например, это name вида “Деревня А - Деревня Б” и “дорога на|в|к куда-то”, а также много мусора типа названий АЗС), которые можно смело игнорировать, а также (если вы используете выгрузку с gislab, например) названия из соседних стран вдоль границы (у себя я дополнительно вырезаю из выгрузки “внутренность” страны) и названия на русском (я не в курсе, к чему у вас пришли по поводу Крыма, но если к тому чтобы писать в name только названия на украинском, то русские можно просто перенести по всей стране в name:ru), так что на самом деле словарь будет в полтора-два (а можно и больше) раза меньше
  • для подмножества названий есть быстрые обходные пути добавления. Скажем, официальные реестры названий улиц по большим городам, как правило, можно добавлять после беглого просмотра (в России такие есть для Москвы и СПб и они были использованы. Ещё есть для Твери, но там мне не понравилось качество). Для названий типа “1-я улица Ленина” понятно что можно сразу добавлять 2-ю и все остальные что найдутся в OSM. При наличии “улицы Ленина” скорее всего можно добавлять и переулок и проезд, проспект, бульвар, если таковые, опять таки, есть в базе и т.д.
  • на самом деле, задача вполне подъёмная. В словаре для России сейчас 36 тысяч названий, и это я добавил один за полтора года, тратя на это менее часа в неделю (обычно просто просмотр новых названий в http://streetmangler.amdmi3.ru/api/0.1/notfound, проверка и добавление в словарь). Если у вас найдутся пользователи, готовых обработать свой город (для крупных это не больше нескольких сотен уникальных названий, и в то же время значительная часть словаря), будет ещё проще

Думаю, черновик такого словаря нетрудно извлечь непосредственно из OSM:
подвести статистику по использованию на территории Украины всех имен из нужных тегов (они были перечислены: name для highway, addr:street и т.п.), те имена, что будут повторяться по нескольку десятков-сотен раз - явные кандидаты на включение в словарь.