Сейчас в OSM улицы ничем не обозначаются, как ни парадоксально (Street Map, да). Только проезжие части с указанием улицы, к которой они относятся, а также здания с адресами (каждому из которых прописана повторяющаяся пачка юникодных букв).
Для улиц я, собственно, и предложил релейшн street в свое время. :3
Это ты street предложил, какая же ты умничка)) *целует Хинда в носик)) я его как раз и использовал везде, и дома насовал тоже в отношение, как в вики было написано))
Меня эта пестрость очень раздражает, неоднозначность. Жаль, что до сих пор нет строгой и ОДНОЙ системы описания улиц, куда входит перечисление отрезков линий, дома и прочие возможные полезные данные.
Нет же, у нас название стоит на каждом отрезке, отдельно на отношении. Коих и самих несколько типов - collection, street… И рендеры и конвертеры вынуждены всё это понимать.
И да - на каждый дом записана улица, и в отношении улицы записаны дома. Ужас.
Мало того, что информация дублируется, так она не защищена от искажений - в одном месте так написано, в другом эдак… В одном поменял, в другом по-старому осталось.
Причесать бы всё это в логичную и ОДНУ структуру!
Белорусский вариант существует, но у нас ему никто не следует… хотя он не плох.
Может соберемся с силами и выработаем что-то единственное?
А потом, по идее, надо выпилить названия отрезках дороги и зданиях.
И придут нубы, и будут снова вписывать названия, ибо нет поддержки в рендерах и редакторах.
Великая печаль обрушится тогда на OSM: “Как же быть?”
Одним не понравится первый вариант, другим второй. Уже сейчас не получится выработать единую систему без возражений, придется кому-то принять волевое решение принуждения к заданной системе, лол.
Чёрт, я тоже про это думаю! Я вообще считаю, что отношение должно стать основным средством описания объектов.
Для улиц и вообще для адресных элементов надо выработать какую-то систему.
Но пока я вижу проблему скорее в плохой наглядности редактирования отношений, по сравнению с точками и линиями, из-за чего ими ленятся пользоваться.
Плюс этой схемы - полный адрес объекта, по ней описанного, можно восстановить, пользуясь только API. Хитрые геометрические штуки из серии “а попадают ли эти точки вея в полигон” зачастую становятся не нужны.
Помоему - хороший вариант и что хорошо весьма гибкий (это я про релейшены). А НП со сквозной нумерацией домов по стране в общем то не так уж и мало. А на счет того что придут нубы и все расставят не так - ну я нуб - во первых не обязательно что все новички будут делать неправильно, а во вторых поправить теги у домов не великая проблема.
Вопрос то в том, что cladr:code еще более ненадёжен и неустойчив. И решение вопросов адресации с помощью средств для этого не предназначенных еще большая утопия.
Хм.
При отрисовке зданий я часто копирую теги или дублирую все здание целиком. Представим, что скопировали теги со здания, привязанного по кладр-коду к соседней улице. Отвлеклись, а потом забыли поправить адресную информацию. Первая проблема - здание оказалось привязано к соседней улице и эта ситуация не валидируется! Только ручная проверка соответствия кладр-кода!
Вариант второй - в аналогичной ситуации (копирование тегов) исправили addr:street и addr:housenumber, но забыли исправить cladr:code. И это опять ничем не валидируется! Опять вручную проверять код.
В случае релейшенов такой фигни не будет. При копировании тегов или дублировании здание не попадет ни в один релейшен улицы и при простом клике на нем уже будет видно, включено ли оно в какой-либо адресный релейшен. А при выборе релейшена подсветятся здания включенные в него и будут прекрасно видны пропущенные и посторонние полигоны.