Не уверен, что это хорошо. Можно навредить ещё больше, чем испортил человек.
Что будет делать скрипт, если дом внесён в два релейшена? А я уже с этим сталкивался, когда по ошибке дома были запихнуты в разные релейшены. Ошибку скрипт не исправит, а дров наломает.
Логично. Такая семантика отношения типа collection (также не утвержденного). Там тег на объекте переопределяет тег в отношении. У street семантика другая. Тег в отношении и роль объекта однозначно определяют addr:street или name. И теоретически конфликтовать они не должны.
Но есть одно но. Кто это наследование выполняет? Программа, работающая с данными. А они пока так не умеют. Заставьте авторов программ переписать свои творения.
Это хорошо т.к. лично я применяю скрипт к тем местам которые лично я же правил. и там для подавляющего числа случаев он работает корректно. Дом включенный в два отношения - это нормально. У нас есть дома, адресующиеся по нескольким улицам. Как писать им номера пока никто толком не знает.
Мой скрипт пропишет сначала одну улицу, потом затрет значение и напишет вторую улицу. поведение не совсем корректное, но допустимое.
Согласен. У вас уже есть план по захвату мира переводу всех программ на поддержку релейшенов? Мой скрипт является костылем для тех, кто их пока не поддерживает.
Для этих целей - конечно хорошо, но для бота - не допустимо.
Вот, случайно наткнулся на это http://forum.openstreetmap.org/viewtopic.php?id=6667&p=1. Что-то типа такого, что я спрашивал. Но поиск в OSMе не работает. Хотя нужно ли этот поиск кому нибудь, помимо навигаторов? Лично мне этот проект интересен только потому, что я могу им пользоваться на навигаторе.
Не совсем:) Во-первых, если где-то обсуждаемый релейшен не поддерживается в данной семантике, то не наследуется. Во-вторых, это логично до тех пор пока кто-нибудь не поставит на ваш вей name, как раз потому что relation street не поддерживается в мапнике или в каком нибудь гиде-гисе И будет совершенно прав, потому что name на вее - общепринятый на данный момент способ задания названия улицы. для улицы.
Для улицы если она имеет имя обязателен name.
Для дома если он адресуется по улице (а не насквозь в рамках поселка/города/района) - addr:street
В адресный поиск навитела/ситигида/гармина/7 дорог домик попадет только если addr:street на домике и name на улице совпадут.
Совпадение ищется полное - т.е. если улица подписана со статусной частью “переулок Красный” то и на домике в addr:street должно быть записано точно так-же. Это так же касается употребления быквы ё и сокращений.
а если ситуация такая: есть промзона разделенная на участки с названием типа Панель№ N (где N = от 1 до 20), и адреса выглядят так: г.Ноябрьск, промзона, панель № 3 (за зданием ГИБДД). Как в таком случае оформлять адреса и эти панели? писать номера Панелей в аддр:стрит для строений (в широком смысле этого слова)?