У меня сложилось такое впечатление, то что программисты (в данном случае fserges и другие) на самом деле хотят написать инструмент и под него уже подогнать ОСМ.
Что-то мне подсказывает, то что is_in который здесь обсуждается это такой очень старый костыль, который нужно выпиливать, выпиливать и ещё раз выпиливать.
Почему? Объясню чуть ниже.
И так программист, который спрашивает меня как сделать валидатор насел пунктов (а не адм тер дел) .
На что мой ответ примерно таков:
Первое. Нужна первичная база по которой будет работать валидатор к примеру ФИАС(не ОКТМО, ОКАТО или КЛАДР). Так же с возможностью внесения автором валидатора новых НП, или изменений. И как следствие никаких кодов в виде fias:code (желательно, но необязательно, т.к. если будут какие-то ошибки я не думаю, что исправление бд будет полноценным с кодами кладра и т.п.) .
Второе. Каждая точка деревни должна иметь addr:country, addr:region addr:district и думаю всё же правильным будет указание addr:subdistrict (сельских поселений т.к. они в фиасе есть) при 100% совпадении деревня должна считаться замапленной (соответственно если два одинаковых имени и два одинаковых имени то ок, три или один не ок). Этот пункт я думаю может быть реализован даже на диффах еже минутных!!!
Третье. Когда будет отточен второй пункт. Появится ещё инструмент, а именно проверка полигона точки на соответствие тэгов точки нп. Его например можно cделать из выгрузок гислаба. Не думаю, что получится сразу это реализовать на минутных диффах, хотя всё зависит от искуссности программиста.
Четвёртое. Когда будет реализованы предыдущие этапы и будет готовый продукт, то можно вынести отдельным пунктом разрывы адм границ. Т.е. неправильно замапленными или битыми .
Пятое. Когда останется высшая ступень : ) , то уже проверки нелогичности. Типа почему addr:disctict не равен name соответствующему отношению и т.д.
Теперь я выскажу своё мнение поповоду почему это должно выглядеть именно так,а не по другому. Идея приравнивать и брать тэги из вложенности отношений просто идеальна! Однако на практике она плохо реализуема. Я не говорю про техническую сторону вопроса. А про мапперскую. У нас есть границы до районов, но не для сельских поселений(или штучные, далее сп). Для сп их так просто не обрисуешь + они постоянно меняются. Поэтому я считаю, что реализация проверки наличия деревни (по addr:*) должна быть отдельна от проверки границ. Реально обоснованным последним перед названием думаю максимум сельские поселения, хотя может всё же имеет смысл использовать административное деление (т.е. страна, область, район, нп), т.к. тут можно напридумывать много: Страна, область, район, сельское поселение, сельский округ, нп.
А если серьёзно сказать fserges начни уже писать)))), т.к. практика показывает, что не вики и участники диктуют как маппить, а валидаторы))). Т.к. они приводят к одинаковой схеме тэггирования на всей территории страны. И если мапперы захотят использовать валидатор , то либо им придётся подстраиваться под него, либо не использовать.
Извините за 5 минут вашей жизни потраченных на чтение этих строк. Более коротко не получилось.