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

Вот, заглянулось мне в Адресный валидатор Zkirа. Поздравляю, в Украине 79.76% адресов неверные. Ужас, ужас.

К сожалению, косяков сильно хватает даже в тех местах, которые мапятся активно – Днепропетровск, Киев, Черновцы.

В общем, рекомендую заглядывать туда регулярно, править. Очень часто новички невнимательно задают улицы в тегах.

Рекомендую делать адресацию через отношения, проверять очень легко, и мест для ошибок в разы меньше. Особенно упрощает жизнь плаги relation toolbox.

Eugene

PS. Не обращайте внимание на недостачу информации по населению в НП. Я скоро везде исправлю.

Є сумніви в актуальності наведеної інфи. Знайшов Полтаву в списку міст без полігональних меж. В той час як http://www.openstreetmap.org/browse/relation/1641691.
І не тільки Полтава: http://www.openstreetmap.org/browse/relation/361818

P.S. Вже згодом дочитався, що вони хотять

Але у OSM-Wiki ніде цього не сказано. Навіщо дублювати інфу ще й у полігоні коли є relation? Не мапити ж під правила кожного окремо взятого валідатора.
І чи знає взагалі цей валідатор про відношення? Бо оце:

теж наводить на сумніви.

Ну, справа в тому, що так саме прописано на Російському Вікі, і зроблено на більшості НП у нас. Я би підняв це но голосування. Я думаю, зайвим цей теґ не буде, особливо, коли ми почнемо нарешті малювати границі районів. Справа не в дублюванні на полігоні, а у відсутності теґу place на відношенні.

Стосовно addr:street, валідатор підтримує відношення street (associatedStreet). І коли нема, то воно й скаржиться. Якщо помилково, будемо виправляти валідатор.

Eugene

Я за відношення.
Малювання меж районів проблему проявить: один відрізок є межею одночасно двох районів, плюс додатково може бути межею області і держави. Відношення це красиво обходять.
А з тегами буде щось схоже на таке нахаращення: name=Район 1;Район 2;Область 1; Область 2. При правках доведеться переглядати усі відрізки, щоб нічого не пропустити.
Вважаю це проблемами валідатора.

Так, друга помилка досить дивно виглядає. Думаю, мається на увазі невідповідність назви addr:street у відношенні. З відношеннями працює нормально, причому як з street, так і з associatedStreet (на відміну від номінатіма)

  • Було б непогано додати, що саме не співпадає в назві вулиці і відношення (часом попадається невідповідність укр і лат букв “і”, складно помітити, а часом просто не знаходить вулицю через те, що вона service замість residential)
  • В валідацію не включаються точки (просто addr:housenumber, включені у відношення)
  • Схоже, не включаються також нормально pedestrian-вулиці. У нас їх аж одна, але будиночків там багато

Підфіксив Чернівці, проте спеціально пропустив кілька адрес, де поки ще не пройшлися. Міг випадково змінити ім"я вулиці на неправильне (ті самі і або ї-і), сподіваюсь, помічу

П.С - дякую за назву міста активним :wink:

Хотів уточнити декілька пунктів.

  1. Валідатор свариться на relation type=street, каже Unknown relation type. Змінювати на associatedStreet чи залишати так?

  2. На associatedStreet свариться іноді що Number of ‘street’ roles too high. Хоча на вікі пишуть, що recurrence для ролі street - one or more. Якщо це бага у валідаторі, кому про неї писати?

  3. Чи треба в associatedStreet (а також і в street, якщо це валідний relation type) проставляти addr:steet, чи достатньо name? Чи навіть і name не потрібен, в wiki він optional but recommended.

  4. На associatedStreet свариться про role ‘address’ unknown. Виправляти на house чи залишати як є?

  5. Спробував додати будівлю складної форми (relation type=multipolygon building=yes addr:housenumber=* до associatedStreet. Валідатор сказав Member for role house of wrong type. Вікі й справді каже, що тип має бути node або area, але як же тоді додавати до associatedStreet такі об’єкти?

1 - можна залишати. впливає лише на те, що nominatim не вміє шукати по street
2 - так, баг валідатора, нмсд, варто відкрити баг в http://josm.openstreetmap.de/newticket
3 - addr:street треба виставляти, name не обов"язково, але набагато зручніше для перегляду списку зв"язків, коли в них є імена, а не числові значення
4 - на вікі написано, що у associatedStreet є лише street і house, тому або type=street, або role=house
5 - додавай outer полігон. Сподіваюсь, в нас нема вкладених будівель, хоча після нашого історичного центру я вже нічому не здивуюсь…

Дякую за відповіді.

Ще запитання до відповідей:

  1. Якщо nominatim не шукає, може таки варто замінити type=street на type=associatedStreet? Про type=street на вікі взагалі дуже мало інформації. Можна було б звичайно додавати в обидва відношення, але буде важко слідкувати за консистентністю.
  2. Відкрив.
  3. Якщо я правильно зрозумів ідею associatedStreet, addr:street для об’єктів з ролями ‘house’ має братись з name об’єкта, що має роль ‘street’. Тоді виходить, що addr:street є зайвою інформацією? Крім того, name у об’єкта street може бути задано декількома мовами, а addr:street тільки однією.
  4. Справа в тому, що addr:housenumber виставлено для multipolygon, а не для outer way. Щоб було більш зрозуміло - ось приклад. Переносити addr:housenumber на outer way? Що робити з building=yes - теж переносити чи залишати на multipolygon?
  1. Ці два відношення є повністю рівноцінними. З появою relation_toolbox я користуюся street, nominatim шукає добре. Йому потрібен час для синхронізації.
  2. addr:street таки не є обов’язковим, і береться з відповідних вулиць. name краще додавати для зручності.
  3. Так, перенось housenumber на outer way. Відношення у відношенні це не є добрим. building=yes у адресації не викормстовується, тому думаю, можна залишити на полігоні.

Eugene

За 1 - дякую, буду знати…

До речі, баг у валідаторі вже закрили, і в наступних версіях josm (а також з поточної latest) випадок з багатьма частинами вулиці з role=street помилкою вважатись не буде.

Як вважаєте, чи варто включити в валідатор функціональність перевірки name вулиць з addr:street (чи name, уточніть??) відповідного зв"язку? Чи це взагалі можливо в рамках поточного валідатора?

Не дивився їхній код, але перевіряти це б не завадило. Або для зменшення помилок, я би вважав присутність addr:street у відношенні помилковим, і додатково перевіряти, що всі вулиці мають ті самі теґи name:*

Eugene

Тобто addr:street у відношенні не потрібний? Пошук по чому буде проходити, по назві чи по назвах вулиць-членів?

До речі, що робити з площами? Чи нормально в street-role класти замкнений вей з highway=pedestrian, area=yes, name=Соборна Площа?

Я ставлю addr:street тільки на відношення.
На веї вулиць і полігони будинків не ставлю.
Це працює - пошук за адресою діє.
І це економить місце в базі, тим більше що вулиця може мати кілька членів street (з різними характеристиками).

А чи існує якись плагін/валідатор/скрипт який би підказував які будинки/вулиці варто об’єднати у relation?
Наприклад, помічає плагін, що поруч два highway/building-об’єкти з однаковим name/addr:street зі спільною точкою або в межах 500м і пропонує(робить автоматично) створити/поповнити relation.

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

Тому для Полтави потрібно прописати у відношенні place=city. Але я все ж таки радив зробити копію відношення, і використовувати теґ place_name, щоби на мапі не з’явілося два надписи.

Взагалі, ці всі питання треба нам вирішувати.

Eugene

Ну, шановні, вже набагато краще, 47.92% не співставлено. Правда, десь відсотків трідцять закрілося само, як тільки я додав полігони у великих містах, або ж вказав відповідні теґи. Але тепер на мою думку, можна вже працювати.

Я помітив, що у Київі багацько домів, на яких вказан номер, поряд є вулиця з відношенням, але сам будинок туди не додано. Це виправляється ну дууже швидко за допомогою втулка relation toolbox. Тож можна кожному потроху це додати, і поступово воно виправиться.

Офтоп: щось останнім часом дуже часто в тебе трапляється “і” на місці “и”. Білоруську клаву встановив, чи що?
Перепрошую, але це вже починає нагадувати Азарова, що одного разу сказав, що зарплати будуть “підвішуватись” замість “підвищуватись”.

Переключаюсь между маком и виндовс, и на маке клавиши местами поменяны. Сам мучаюсь.

ну это наверное моя “заслуга”, так как на тот момент единогласного решения о стандарте прописывания улиц не было - не делал этого…