я понимаю, что name для нп должен быть без приставок вроде “(нежилой)” или “руины”. но с другой стороны можно рассуждать так: place применяется ещё для обозначения “именнованного места”. и когда мы видим пустырь или руины, урочище. ближе к этому оказывается широкое значение place, т.е. именованное место, а не НП. (это совсем не похоже на НП. это именно руины, возможно, заросший фундамент) и когда мы это трактуем как “именованное место” то у нас нет ограничений на название, какое бы мы имели в случае трактовки в качестве НП без населения.
На мой взгляд это явно должно быть где-то в name - alt_name, например. (нежилой) это помета а не часть имени, но для ориентирования на картах может быть полезным.
ок. а если это просто пустырь и даже фундамента не осталось ? всё так же называть это хутором ? или может быть селом ? учитывая принцип - что на местности, то и на карте, нельзя же пустырь или холмик хутором назвать, как и развалины старой церкви нельзя церковью назвать.
Нет, alt_name это то же самое что name, для случая когда бывают разночтения названия, и также не допускает приписок.
Если даже фундамента не осталось, place меняется на locality, название же никто не менял. По сути, и некому.
Ещё я тут подумал насчёт okato/okato:user, и очень прошу отказаться от его использования в валидаторе вообще. Наша цель - создать качественный набор данных, который можно использовать самостоятельно, соответственно нужно обеспечить полноту информации и иметь возможность различать НП с одинаковыми названиями по объективным свойствам - для начала по статусной части. Возможность заткнуть валидатор, показывающий реальную ошибку - неразличимость НП в данных либо неправильное название, проставив okato:user - это очень и очень плохо. Случаи где без кода (сейчас) реально не обойтись нужно собрать и подумать что с ними делать. В самом крайнем случае это будет явный список, только для НП из которого допустимо использовать коды.
В данном случае я нигде не нашёл, что городской округ делится на административные районы. Так что это чья-то фантазия и теги admin_level = 9 и boundary = administrative лишние.
По сути если должно быть 2 НП с одни названием и в осм мы имеем 2 НП с одни названием, то стоит предположить что это они и есть. Если их 1 или 3, то значит все 1/3 неправильные.
Валидатор обновился на утренний дамп. Принципиальных изменений нет, просто прогон на новых данных. Из нового - попробовал перейти на pbf → osmconvert → osm. Всё вроде нормально, но получилась ерунда с кавычками, нужно разбираться на каком этапе это происходит.
Я в этом прогоне в спешке забыл включить проверку границ на замкнутость. Глянул на Отрадновское и обнаружил что Мышкинский район разорван. Соответственно быстрый метод на вложенность дал неверный результат. В общем нужно править Мышкинский район а мне включить проверку границу в прогон по умолчанию.
Уницкое пропало из-за сломанности границ Кесовогорского района.
Хм… а тогда чего он osmID выводит раз не нашёл. Скорее всего что-то да ему не понравилось.
А вот с ё непонятки. На странице http://atd.osm.rambler.ru/r1760248.html валидатор ожидает “Озерское”, а имеется “Озёрское сельское поселение”, с ё указано на сайте района, так что тут гадать нечего.
Ну это побочный эфект самописных геометрических алгоритмов. Тут компромисс точности и скорости. Но ломаные границы так или иначе будут приводить к тем или иным глюкам. Впрочем, в будущем подобный эффект будет минимизирован модификацией алгоритма, который будет пытаться искать сообразно истории, но полностью от таких побочных эффектов не избавится. Но если границы в ОСМ будут ломаться очень часто, то конечно придётся подумать на эту тему.
Тут рука у меня дрогнула и не захотел забивать префикс "Городское поселение Город " как валидный. Вроде бы и корректное название, но его длина смущает, хотя и не является избыточной как “муниципальное образование город Курган”. Конкретно в данном случае проблема решается добавление одной строчки в функцию нормализации имени. Если скажете что это нормальное написание, добавлю эту строчку сегодня.
Совпадение это когда коду объекта в ОСМ сопоставился код ОКТМО (грубо, так как есть некоторое количество не имеющие кодов ОКТМО, например, федеральные округа).
Ну это значит я у себя не доглядел Я стараюсь следить за “ё” но сказать что проверил все поселения - не могу. Исправил. Спасибо!
Я думаю это единственное правильное написание (только регистр всей статусной части должен быть нижний):
без сокращений
настоящее название
отличается от “XXX” и “город XXX” чтобы в адресах не было “город XXX - город XXX - улица YYY”
на карте вроде как не рисуется, так что в этом плане проблем не сулит (хотя если рисутеся, опять таки будет понятно к чему относится, а не второй “город XXX” где-то в чистом поле
только не понял зачем тут что-то добавлять, когда это название по идее должно появиться автоматически из ожидаемых названия и статусной части. Если добавлять, то очевидно что понадобятся также “городское поселение посёлок” и т.д.
ОК, поправил. За регистром я пока смотреть не буду, пока основную структуру довести бы.
Кстати, а не ли возможности прогнать что-то вроде причёсывалки названий улиц на названия муниципальных образований (хотя бы привести регистр к единому виду) и по official_status (там вообще зоопарк). Такой бот не разрушает никаких данных но стандартизирует данные для последующей автоматической обработки.
Не очень понятна мысль, если честно. Валидатор находится в состоянии беты и далёк от идеала, все вопросы сразу не решаются а решаются в соответствии с внутреними приоритетами. Дойдут руки и до Краснодарского края. Решений которые устраивают всех не бывает (вот Zkir не любит “ё” и всё тут), поэтому будут те или иные компромиссы. Сейчас я в эти дебри даже лезть не хочу.
В общем на выходных буду проводить большой рефакторинг кода, поэтому вероятность того что валидатор обновится завтра невелика - слишком много где будут переделки, а бегущий в фоне валидатор хорошо подтормаживает комп. Поэтому вероятнее всего следующее обновление будет в понедельник вечером. Но там уже будет много улучшений, как минимум - всё будет работать быстрее