Ссылка на результат работы валидатора (вместе с описанием) в посте №147.
Ну а ошибок около 27000 - очевидно, среди них можно найти любой из 6 типов. Большей частью 2 и 3, но каждое действие выполняется очень долго из-за огромного количества ошибок. Для сравнения: а Запорожье их было 160. Надеюсь, следующий проход валидатора даст не более 20.
Таких около сотни, по окончанию работ я пройдусь вручную, повыясняю что к чему. У всех таких домов стоит street:id, нули, либо ещё два варианта, значений не помню.
Немного странное заявление. В этой же ветке мы обсуждаем процесс адресации. Простое суммирование по третьей колонке в текущем списке показывает более 18 тыс. домов с неполной адресацией, плюс, валидатор запускался несколько дней назад, когда ещё dudka не прошёлся своим автоматом.
Сама схема адресации тут не при чём, ибо если бы валидатор не понимал Карсруэ (адресацию через отношения) тогда бы цифры были в районе 65 тысяч, из которых осталось меньше трети. А так у нас просто у домов номера есть, а к улицам они не привязаны. Помогите, кто сколько может, инструкции написаны. Мы сегодня с dimonster уже 200 штук привязали, напомню, всего их 917 непривязанных.
да, похоже на недоделанные релейшены. Когда я тестировал пропатченный конвертор, примерно столько было релейшенов без линий улиц (по Харьковской обл.).
Кстати, названия улиц надо сверять с официальным перечнем (!).
Есть много несовпадений. Ну, и линии улицы могут быть разделены на несмежные куски. Один кусок здесь, другой дальше через квартал.
Так что если не уверены, лучше пропустите.
Кстати, вспомнил. У нас ведь вроде есть улицы с одинаковым названием, но в разных районах Харькова. Если их не “привязать” к районам, то в адресном поиске будут ошибки
Блин, а ещё ведь подобные ошибки и с привязкой деревень к районам области. Аж 608 штук.
Для таких улиц надобно addr:suburb выставить. В моем "валидаторе они синим подсвечиваются. Я бы потом помог addr:suburb для домов и отрезков проставить - на для начала сами микрорайоны хотя бы точками проставить нужно.
Это можно. Но тогда опять всплывёт вопрос мультиязычности адресов. На каком языке писать и как сделать так, чтобы в сконверченной под навигатор карте название района города было на нужном языке.
Кстати, это ж надо не только на веях улицы писать, но и на каждом домике
это будет ужас. На каждом домике по десятку addr:suburb:хх
Это однозначно убогий вариант. И база данных распухнет, и ошибиться недолго. Программерам, конечно, так будет проще, но вот вносить в базу такие навания - заколебаешься
Мне нравится второй вариант. Никаких тегов прописывать не надо и шанс ошибиться меньше.
Хотя конвертеру будет больше работы: перебрать все улицы в городе, найти улицы с одинаковым названием, проверить, в какие suburb они попадают и приписаить название suburb к названию улицы. Причём на нужном языке.
Кстати, есть случаи когда такие улицы проходят через несколько районов. Например, есть улица Такойская, которая проходит через Такойский р-н и Сякойский р-н, и есть ещё одна улица Такойская, которая расположена вообще в другом конце города в Этаковском р-не.
А ещё бывает, что улица проходит чётко по границе районов. Например, улица Полтавский Шлях в Харькове проходит по границе Ленинского и Октябрьского районов.
Так что конвертеру придётся сильно напрячь мозги (конечно, не конвертеру, а программеру, который будет его писать ).
перебираем все улицы в городе, ищем улицы с одинаковым названием. Одной улицей будем считать привязанные друг к другу отрезки с одинаковым тегом name. А также отрезки, связанные релейшеном.
для каждой из таких улиц определяем принадлежность к определённому району (районам) или микрорайону (-ам) города.
(берём каждую точку в каждом отрезке улицы и определяем принадлежность точки к полигону района). Дописываем к названию улицы названия районов, в которые она попадает.
Могут, конечно, возникнуть сложности, когда отрезки улиц не связаны релейшеном и не связаны друг с другом общими точками. Ну, значит, придётся связывать их релейшенами даже если там нет домов. В конце-концов, если отрезки принадлежат одной улице, то почему бы и не связать их релейшеном?
Та же ситуация и в Киеве. Логичнее прописывать не район, а микрорайон (как правило название села поглощенного городом). Ex: Дарниця, Бортничі, Жуляни… У вас Заїки, Затишшя, Олексіївка…
Основной минус - отсутствие каких либо четких границ для микрорайонов. А рисовать полигоны с потолка и вносить дезинформирмацию - считаю неоправданным. Я с границами сельрад так делал по-глупости.
Вулиці → Харків - Улицы помеченные синим с большой вероятностью дубликаты.
Харьков уникален тем, что на нем уже прийдется решать как быть с мультиязычностью, отношениями, отдельными домами, и сегментами. По-логике если вешаем name:lang на каждый сегмент, значит и addr:suburb:lang вешать надо. Проблему с домами в случае Харькова можно проигнорировать, учитывая, что у вас все через отношения. addr:suburb для них можно брать прямо из отношения. Но для других городов это проблемка в перспективе.
addr:suburb:lang - очевидное неправильное решение. Простое для программиста, пишущего конвертор и ужасно неудобное для пользователей, вносящих данные. Представь: на каждом домике десяток тегов addr:suburb:lang, на каждом отрезке улицы тоже десяток addr:suburb:lang.
если у нас есть сущности дом и улица, между которыми делаем отношение, то что нас останавливает сделать отношения между сущностями улица и район
или вообще, в идеале6 психануть и все 600 микрорайонов перенести, и сделать иерархию дом-улица-микрорайон-район-город
точно такой же список6 как street_id streen_name я из своей карты могу вынуть и по административным районам. для связки street_id-административный район