Ужасы адресации в Украине

да я в Java тоже полный ноль, но если вариантов нет, то…

на скорую руку…
http://rghost.ru/43221221
при создании нового отношения, после нажатия на кнопку fix, дополнительно копируются name:ru и name:en, ели они есть на веях, в name:uk копируется значение name :expressionless:

Barbos
Спасибо большое! То что надо.
Минус куча кликов при создании associetedStreet. Круто :slight_smile:

Только ему нужен JOSM не меньше чем 5613 пришлось перейти на latest версию.

Дописал в свой черновичок про систему адресации ешё пару нюансов: про нумерацию подъездов и адресацию домов, нарисованных мультиполигонами.
http://forum.openstreetmap.org/viewtopic.php?pid=305091#p305091
Просьба взглянуть.

в общем случае это некорректно. Т. к. в name может быть название не на украинском.

dimonster
Так эта кнопка нужна при создании relation. А перед тем как его создавать все равно нужно проверять правильность тегов веев.

В ближайшее время попробую что нибудь набросать. Как минимум задача интересная :slight_smile:

Хочу обговорити масові видалення тегів addr:street.
http://www.openstreetmap.org/browse/changeset/14852086
http://www.openstreetmap.org/browse/changeset/14852450
http://www.openstreetmap.org/browse/changeset/14852508

По-перше, relation|type=street все ще тільки в пропозалах. Його використання - на свій страх.
По-друге, схему тегування по way|addr:street ніхто не відміняв, вона актуальна і підтримується більшістю користувачів осм-даних.
По-третє, це просто самоуправство без обговорень переводити все на одну схему.
По-четверте, відсутність addr:street спонукає новачків, які не знають про звязки, витрачати час на внесення даних(часто з помилками) в addr:street будинку.

Особисто я сприймаю ці правки як вандалізм.

Вважаю допустимим створення street-звязків, в тому числі й для підтримки багатомовності, але не вважаю це за причину масово видаляти addr:street.

По-перше, масові зміни були б, якби я всюди почав би видаляти addr:street, а так я це зробив тільки там, де до цього інші правки робив.
По-друге, street/associatedStreet рівнозначні і давно використовуються. Ви користуєтесь виключно “затвердженими” тегами?
По-третє, в Україні, наскільки я пам’ятаю, прийшли до згоди використовувати відношення замість простих тегів. Так проблема з новачками може існувати, але треба серед них проводити роз’яснювальну роботу, а не підтримувати недосконалу систему адресації.
По-четверте, на скільки я знаю, всі основні компоненти ОСМ розуміють схему адресації через відношення. Якщо я помиляюсь, то наведіть приклади.

Знов за рибу гроші :frowning:

  1. Це не є вандалізм, оскільки інформація про приналежність будинку до вулиці не знищується.
  2. Використання релейшенів давно прийняте, прописані схеми тегування, є інструменти для роботи з associatedStreet у JOSM, конвертор osm2mp розуміє релейшени, Номінатім розуміє релейшени.
  3. Використання релейшенів дозволяє зробити карти з адресним пошуком на будь-якій мові (російський, українській, англійській (трансліт)), що припинить “мовні війни” у Криму та інших областях, де русіфіковані на всю голову мапери.

Краще давайте попросимо команду розробників Потлача додати зручний інструмент для додавання та редагування релейшенів вулиць.
Новачки частіше використовують Потлач. Якщо буде у Потлачі можливість зручної роботи з релейшенами - новачки будуть використовувати релейшени.

Читаем http://forum.openstreetmap.org/viewtopic.php?id=10170

То есть этот гайд неправильный?

dimonster, спокойней, тут речь немного о другом…

прочитал, про удаление уже проставленных тегов там ничего не сказано…

iONiX, dudka может договоримся: если теги addr:street (которые находятся в релешке) не содержат ошибок (согласно правилам укр адресации) - то их не трогаем, а если с ошибками - можно удалить, если лень исправить (и это не призыв сразу все проверять и удалять)

Що з можливим задвоєнням адресної інформації? osm2mp вибирає тільки одну схему адресації, якщо обидві присутні, а як з іншими програмами? Якщо вони теж не мають проблем, то мені персонально теги addr:street не заважають. Тим не менш, я не бачу аргументів для їх використання, крім як “зручніше для новачків”.

Якщо на будинку є тег addr:street та будинок при цьому включений до релейшена вулиці, то osm2mp спочатку пропише назву вулиці з тегу addr:street, а потім візьме назву з релейшена та перезапише.

Весело буде, якщо будинок помилково включений не до того релейшена, або назва вулиці записана з помилкою.
Новачки будуть довго думати, чого це будинок у навітелівській карті прописаний по вулиці Іванова, хоча на будинку написано addr:street=Петрова вулиця. :roll_eyes:

Але ще веселіше без релейшенів, коли на російськомовній карті на лінії вулиці написано “Советская улица”, а у адресному пошуку всі будинки приписані до вулиці Радянської, а вулиця Советская без будинків.

В тих трьох наборах змін addr:street було видалено у майже 100 будинків. Досить таки масово. Але всеодно суть не в цьому.
В Україні ніхто не приходив до згоди використовувати street-звязки замість простої схеми тегування адресації.
Я не маю нічого проти street-звязків, можете написати скрипт і нагерувати собі цих звязків скільки завгодно. Ще є майже 20000 ліній у яких вказано addr:street не включено до street-звязку.
Ще раз: схема адресації на базі звязків не заміняє схему адресації по addr:street. Може доповнювати її, але створення звязку не повинно призводити до видалення даних відповідно іншої схеми. Так як минулорічна схема тегування громадського транспорту не відміняє highway=bus_stop.
Подивіться Європу, багато там проадресовано зв’язками? Я б сказав, що зовсім небагато.

iONiX, addr:street для тих майже ста будинків додавали не ви. Тож, якщо вони вам не заважають, то будь ласка не видаляйте їх. Заодно й ченджсети швидше відправлятимуться на сервер.

dimonster, osm2mp все ще не розуміє неіменовані звязки. iONiX саме такими їх і зробив. При цьому видаливши addr:street залишив osm2mp взагалі без даних. Relations: 2731617,2731618,2731619,2731620,2731662,2731663,2731675.

Vanuan, той гайд правильний, але не зовсім. Частково завдяки написаному там “Проставлять addr:street в дом не нужно” по всій Україні зараз десятки тисяч будинків у яких вказано номер і не вказано вулиць.
http://forum.openstreetmap.org/viewtopic.php?pid=266398#p266398

Погоджуюсь з Barbos’ом щодо вирішення питання у вигляді “если теги addr:street (которые находятся в релешке) не содержат ошибок (согласно правилам укр адресации) - то их не трогаем”.

dimonster, ось прямо в Харкові є такий будинок.
way|addr:street = Желябова провулок
relation|name=Свердлова провулок
Як конкретно в цьому випадку правильно - не знаю, більше схильний вірити інформації в addr:street.

Вообще говоря схема c addr:street тегами мне представляется кривой, неудобной и некрасивой по сравнению со схемой relation. Не понимаю почему dudka так мил этот вариант.
Но раз вопрос приводит к конфронтации, то поддержу Barbos Это пожалуй наиболее компромисный вариант, который видимо устроит всех.

А я бы наоборот, если addr:street проставлен правильно и совпадает с name улиц из отношений associatedStreet или street - удалял бы addr:street, как дублирующуюся информацию, которую к тому же сложнее поддерживать в актуальном состоянии. Мы же не ставим addr:city на каждый дом, зачем ставить addr:street, если задача отлично решается отношениями? А потлатчеров ловить за руки и пересаживать на JOSM, все равно в этом недоредакторе сделать что-то правильно и качественно практически невозможно.

dudka, Ви за сервер не переживайте, він справиться з моїми змінами. Ті 100 будинків, про які Ви кажете, це всього на-всього 7 перероблених вулиць. Так, тег name я пропустив - зараз добавлю, та поверну Вам теги name на будинки, але запам’ятайте: Те, що name додавав не я (Ви?), не означає, що я не можу їх видалити, якщо мої правки валідні. ОСМ проект спільноти, а не декількох людей!

Почитайте уважно Karlsruhe Schema.

Виділення моє.

Ще трохи історії для Вас: Схема адресації через теги була придумана в німецькому місті Карлсруе, тому і носить назву “Схема Карлсруе”. В Німеччині майже не існує дивних схем адресації, кожний під’їзд має зачасту свій офіційний номер. Через це адресація через теги так поширена в Німеччині, бо вона дуже добре підходить до реальної адресації. Про інші країни Європи точно сказати не можу, але в західній Європі адресація дуже схожа на адресацію в Німеччині. Дивні схеми адресації я зустрічав лише в східній Європі.

Vanuan, все там правильно написано, щоб впевнитися в цьому треба читати першоджерела.

dimonster, треба ще перевірити як мінімум Nominatim та OsmAnd.

dudka, братишка, напоминаю, что весь сыр-бор с релейшенами разгорелся из-за невозможности сделать мультиязычный адресный поиск при системе адресации, завязанной на addr:street. Что, кстати, подогрелось и “языковой войной” в Крыму.

Релейшены позволяют сделать адресный поиск на любом языке, лишь бы название на этом языке было прописано в релейшене. А вот адресация по addr:street этого не позволяет.

У вас есть конвертер, который может из addr:street=Радянська вулиця вытянуть русское название “Советская улица”? Нет? Так не гоните волну.

Значит, будем добавлять name:ru в теги релейшена. Или снова патчить конвертер.

Лучше пойдите, попинайте команду разработчиков Потлача, чтобы добавили удобный инструмент для работы с релейшенами.

А никому не верю. Лучше сходить и посмотреть на дом глазами.
Кстати, если уж придираться к этому конкретному домику, то посмотрите где пер. Желябова, а где пер. Свердлова. И на нумерацию соседних домиков.
Кстати, addr:street=Желябова провулок прописал какой-то Alex_TM

В данном случае не вижу смысла патчить конвертер, он как раз все делает верно - берет данные из централизированного непротиворечивого источника. ИМХО тут наоборот нужно патчить рендеры, чтобы не было необходимости добавлять теги name* на веи, а они брались из отношения. Тогда у всего объекта “улица” будет одно место хранения имен на всех возможных языках и один уникальный ID с помощью которого можно работать со всей улицей в целом.

iONiX, видалення валідних даних не може вважатися валідною правкою. Те, що ви створили дублюючу інформацію не дозволяє вам видаляти першоджерело.
Ваша цитата Karlsruhe Schema говорить про те, що при додаванні будинків можете замість addr:street використовувати street-relation. Там не говориться про те, що потрібно видаляти addr:street на користь street-relations.
Не треба вигадувати про те що у нас якась не така адресація. При бажанні все можна проадресувати без зв’язків. Білорусь і Росія успішно з цим справляються.
На всю Європу близько 100 тисяч street-зв’язків, що містять близько 1.5 мільйона будинків.
http://tagwatch.stoecker.eu/Europe/En/relationstats_associatedStreet.html
При цьому addr:street-ліній понад 11 мільйонів.
http://tagwatch.stoecker.eu/Europe/En/tagstats_addr_street__.html
Використання addr:street суттєво переважає використання street-зв’язків.
Схоже, що в Східній Європі тільки Україна активно використовує street-звязки. Переважна більшість європейських street-зв’язків знаходяться в Німеччині і Франції, але здається мені там ніхто не видаляє валідні addr:street.

Власне сьогодні зробив дещо в цьому напрямку.
http://forum.openstreetmap.org/viewtopic.php?id=19943
Спробуйте, сподіваюсь вам сподобається.
В потлачі якраз простіше додати addr:street, ніж шукати десь в Advanced Mode як додати будинок у звязок.

Гарик, мы по этому поводу долго спорили с Лёшей “Божьей коровкой”. И переубедить его не удалось. В общем смысле он, конечно, прав. Но фактически на сегодня получается дублирование названий. Получается, что названия на веях мы пишем для мапника, а названия в релейшене мы пишем для адресного поиска.
Так что давайте, наверное, всё-таки дублировать name:ru в теги релейшена. И делать новый патч для конвертера. Потому что обработать все релейшены - это долго, а карту с мультиязычным поиском хочется уже сейчас.
Я уже написал в вики на страничке пожеланий к разработчиками Потлача http://wiki.openstreetmap.org/wiki/Potlatch_2/Suggested_enhancements про необходимость удобного инструмента для работы с релейшенами улиц. Но, похоже, они редко на эту страничку заглядывают :frowning: