Валидатор населённых пунктов и границ (http://atd.openstreetmap.ru)

Хм… а тогда чего он osmID выводит раз не нашёл. Скорее всего что-то да ему не понравилось.
А вот с ё непонятки. На странице http://atd.osm.rambler.ru/r1760248.html валидатор ожидает “Озерское”, а имеется “Озёрское сельское поселение”, с ё указано на сайте района, так что тут гадать нечего.

Ну это побочный эфект самописных геометрических алгоритмов. Тут компромисс точности и скорости. Но ломаные границы так или иначе будут приводить к тем или иным глюкам. Впрочем, в будущем подобный эффект будет минимизирован модификацией алгоритма, который будет пытаться искать сообразно истории, но полностью от таких побочных эффектов не избавится. Но если границы в ОСМ будут ломаться очень часто, то конечно придётся подумать на эту тему.

Тут рука у меня дрогнула и не захотел забивать префикс "Городское поселение Город " как валидный. Вроде бы и корректное название, но его длина смущает, хотя и не является избыточной как “муниципальное образование город Курган”. Конкретно в данном случае проблема решается добавление одной строчки в функцию нормализации имени. Если скажете что это нормальное написание, добавлю эту строчку сегодня.

Совпадение это когда коду объекта в ОСМ сопоставился код ОКТМО (грубо, так как есть некоторое количество не имеющие кодов ОКТМО, например, федеральные округа).

Ну это значит я у себя не доглядел :slight_smile: Я стараюсь следить за “ё” но сказать что проверил все поселения - не могу. Исправил. Спасибо!

Я думаю это единственное правильное написание (только регистр всей статусной части должен быть нижний):

  • без сокращений
  • настоящее название
  • отличается от “XXX” и “город XXX” чтобы в адресах не было “город XXX - город XXX - улица YYY”
  • на карте вроде как не рисуется, так что в этом плане проблем не сулит (хотя если рисутеся, опять таки будет понятно к чему относится, а не второй “город XXX” где-то в чистом поле

только не понял зачем тут что-то добавлять, когда это название по идее должно появиться автоматически из ожидаемых названия и статусной части. Если добавлять, то очевидно что понадобятся также “городское поселение посёлок” и т.д.

грош цена такому валидатору, под который нужно еще убеждать автора в правильности данных

ОК, поправил. За регистром я пока смотреть не буду, пока основную структуру довести бы.

Кстати, а не ли возможности прогнать что-то вроде причёсывалки названий улиц на названия муниципальных образований (хотя бы привести регистр к единому виду) и по official_status (там вообще зоопарк). Такой бот не разрушает никаких данных но стандартизирует данные для последующей автоматической обработки.

Не очень понятна мысль, если честно. Валидатор находится в состоянии беты и далёк от идеала, все вопросы сразу не решаются а решаются в соответствии с внутреними приоритетами. Дойдут руки и до Краснодарского края. Решений которые устраивают всех не бывает (вот Zkir не любит “ё” и всё тут), поэтому будут те или иные компромиссы. Сейчас я в эти дебри даже лезть не хочу.

В общем на выходных буду проводить большой рефакторинг кода, поэтому вероятность того что валидатор обновится завтра невелика - слишком много где будут переделки, а бегущий в фоне валидатор хорошо подтормаживает комп. Поэтому вероятнее всего следующее обновление будет в понедельник вечером. Но там уже будет много улучшений, как минимум - всё будет работать быстрее :slight_smile:

Значок ссылки на википедию можно уменьшить раза в четыре : )

Да и ещё добавить favicon.ico а то трудно найти нужную закладку.

И дату проверки на глагне хотелось бы видеть, всего-то пара строчек кода.

В воскресенье хорошо перекорёжил код, в основном под будущие изменения. В частности добавил оптимизаций в основной алгоритм который пока отнимает больше всего времени. Я ожидал ускорения на 20-30% но на тестовой выборке в 1000 нп скорость увеличилась всего на 5%. Потом оптимизировал ещё. Сегодня запустил валидатор на утреннем дампе. В итоге оказалось что всё стало работать безумно медленно. Валидатор работал на 30% времени дольше чем обычно и до конца ему было работать и работать, я уже ушёл с работы. Такой вот неожиданный результат “оптимизаций”, но в бете это ожидаемо.

Надеюсь что завтра утром валидатор отработает и я опубликую его результаты (если конечно ещё проблем не обнаружится). И потом буду профилировать работу чтобы понять чего же это я так наоптимизировал :frowning:

“Богатыри - не мы”. Сколько ни пробовал ради общего развития изучать основы программирования - дальше “Хеллоу, Вёрлд!” не продвинулся. Извините за офтоп…

fserges: ты бы исходники выложил - глядишь можно было и нужную фичу самому сделать тебя не дёргая, и попрофайлить.

Вместо стандартных 4-х часов валидатор работал почти 9 часов. Но возможно причина не только в кривизне оптимизации а в том что границы аж двух регионов оказались сломаны - Тверской области и Смоленской области!

А алгоритмы частично оптимизированы под то что границы регионов живые, в случае разломанных границ валидатор идёт по неоптимизированной ветке а там реально всё медленнее. Но по любому после окончания оптимизаций эта проблема не будет стоять так остро, просто будет некоторое замедление работы.

И да, почините, пожалуйста, границы. Иначе валидатор будет слишком долго работать …

Проверь, не сломана ли граница Россия - Беларусия, а то возможно придётся все переоткатывать.

У меня дамп вчерашний, утренний. В нём граница России не сломана, но ничто не мешало сломать её позже. Её проще проверить в JOSM - результат проверки целости границы будет актуальным (хотя и придётся подождать пока границы загружаются).

Починил . Поломаны были границы - Беларуси, РФ, ЦФО, СЗФО. Надеюсь починил правильно ))
Виновник торжества bim2010

Почти, забыл 1 линию включить.
А почему у нас порезали boundary = administrative на границе с Казахстаном ?