А какие у UI есть возможности, чтобы определить нужный результат? Наугад или самому дополнительно считать геометрическую вложенность?
И я правильно понимаю, что в случае отсутствия обоих полигонов place (и города, и деревни) и присутствия на здании тега addr:city Nominatim выдаст ровно один результат с тем городом, что на здании?
В ходе обсуждения в телеграм-чате были выявлены следующие (возможные) кейсы использования place:
Nominatum (разобрано выше)
Определение скоростных ограничений в НП в автонавигаторе
Overpass умеет делать запросы через named area
Для разного рода урбанистических проектов, расчета плотности населения и т. п.
По поводу навигаторов. Скоростные ограничения RU:urban сейчас проставлены на подавляющем большинстве дорог; на тех, что ведут в/из города - уж точно. Ни на русской, ни на английской вики нет рекомендации использовать для этого полигоны place. Что стоит сделать - так это доставить их на мелких дорогах внутри НП, где вообще может быть жилая зона, и потому ограничение в 60 км/ч не спасет.
То есть уже есть 4 разных варианта трактовки этих полигонов:
Для адресации. Тут вопрос курицы и яйца: чтобы так его провести, надо для начала собрать эти адреса на местности или с ПКК, нанести их все вместе с addr:city, а уже потом обводить полигон и, возможно, удалять addr:city с домов. Смысл последних двух действий неясен: если НП уже есть на всех зданиях, то охватывающая его геометрия и не нужна, и незачем удалять правильные теги и городить лишние контура в базе. Если же на части зданий адресов нет, то включать их в полигон НП не сильно лучше, чем вычислять эту часть адреса по ближайшей точке place=* - в любом случае результат будет “на глазок”.
Просто чтобы обвести застройку (не обязательно жилую). Тут большой вопрос, а место ли таким данным в OSM. Это ведь то же самое, что хранить, например, контура обводки водоемов с прибрежными полосами для каких-либо экологических проектов или нарезку для Навитела. Новой информации это не вносит и этому место в своей базе у того, кто использует данные.
Для расчета скоростных ограничений. Тут требуется, чтобы полигон пересекал входящие в город автодороги ровно в тех местах, где стоит табличка начала населенного пункта.
По генплану/СТП. Обновляются редко и хотя в таком виде полигон хоть отдалённо верифицируем, но вряд ли послужит практическим задачам. Потому что границы оттуда могут не обязаны совпадать ни с дорожными знаками, ни с границами существующей застройки, ни с адресами.
Когда урбанист использует полигон place для своего проекта или кто-то делает запрос к нему в Overpass, то он на самом деле вообще не знает, чему будет соответствовать полученная выборка и как трактовать результаты. Табличка на дороге может быть в одном месте, а последний дом с адресом по данному НП - задолго до неё. То есть либо часть домов не посчитается, либо навигатор будет неверно подсказывать. А скорее всего в геометрии будет лежать что-то среднее и не соответствующее ни тому, ни другому. Они используются на данном этапе не от хорошей жизни, а исключительно за неимением более детальной и верифицируемой информации для этих целей. Вот прямо сейчас массово их удалять, пожалуй и правда не стоит.
Поэтому на текущем этапе следует прописать на нашей вики то же, что и в английской: что полагаться на информацию с этих полигонов не следует - ни для адресации, ни для навигации, ни для расчетов. И это действительно соответствует реальности.
А что следует сделать - так это проставлять addr:city на зданиях, реальные скоростные ограничения на дорогах и разметить зоны жилой и прочей застройки, чтобы по ним можно было считать плотность населения. Тогда со временем сами полигоны place станут бесполезными и отомрут естественным порядком. Главное, повторюсь - чёткое указание, что на них не надо завязывать новые процессы и пытаться придавать им какой-то особый смысл.
я бы сказал, на подавляющем меньшинстве, даже в Москве… откуда такие сведения? Вот ВООБЩЕ любой maxspeed - настолько редко он проставлен http://overpass-turbo.eu/s/148R
А RU:rural за городом только на крупных магистралях встречается, и то далеко не везде
Оверпасс меня временно (надеюсь) забанил за превышение квоты запросов с IP адреса, поэтому пришлось оценивать по карте на Taginfo. Я вообще с замиранием сердца думал, что там по России только отдельные пятна будут. Ну что ж, тогда тем больше резона их проставить
Загородные ограничения на применимость place же не влияют. Понятно, что на каждой лесной дороге их проставлять нет смысла, да и непонятно как. А вот по дорогам, которые в пределах нынешних полигонов place и не имеют скоростных ограничений, можно даже в рулетку будет задание соорудить, если ещё не.
Есть ли замечания по предложениям в последних 2 абзацах?
Есть небольшие замечания.
Прописать, что addr:city надо брать в первую очередь с полигона place, что проставлять addr:city на зданиях внутри этого полигона не нужно, что полигоны эти никуда не денутся и не отомрут.
Никакой магии нет. openstreetmap.org всегда показывает последний в списке.
Не понятны несколько моментов:
Как теперь обозначать в OSM сущность из реального мира под названием “Граница населенного пункта”. Если такая сущность есть, чем она удобней (мульти-)полигона с place=*. Если эта сущность вообще не нужна, что делать с аналогичными по смыслу “приблизительно обозначенными” границами районов, городских районов, областей, федеральных округов, заповедников и пр.
Единственный минус сокращенной схемы, указанный в стартпосте - возникновение ошибок адресации повреждении полигона НП. Допустим, мы не используем автоматизированные инструменты контроля качества и находим и исправляем ошибки (опечатки, вандализм, законодательные изменения в адресах) вручную. Что будет проще: отследить и исправить одну линию или все объекты внутри? Спрашивает бывший вахтёр из центральных областей РФ.
В чём вообще проблема? Хотите полную адресацию, пишите addr:place на здании. Никто не возражает, хотя некоторые будут рады, если вы потратите это время на леса в Смоленской области. То же касается ресурсов, потраченных на прописывание и администрирование скоростных режимов. Если ПО не умеет работать с сокращенной схемой, его нужно переписать или предварительно готовить для него данные. Нужна помощь?
Юзкейсов для таких полигонов в практике сильно больше, чем мы расписали в чатике. Завтра придёт человек, который “оспаривает эту схему, ссылаясь на то, что вики-страница не есть результат голосования сообщества”. Какие у нас для него аргументы? И нужны ли Сове наши аргументы? Он обиделся.
В любом случае, в вики необходимо указать, что в России в силу сложившейся практики использования границ населённых пунктов, не рекомендуется их удаление. Для удаления нужно голосование. Но оно вряд ли пройдёт.
Сверился со “старшим братом”. Оказывается, у Яндекса населённые пункты тоже размечаются независимо от городских округов и прочей АТД. И тоже участвуют в адресации.
Правила следующие - если есть генплан или иные документы, то рисуется по ним, если нет, то так:
Правда, у них требуется включать НП в иерархию АТД и подчинять городскому округу, сельскому поселению или чему-то подобному, потому что отдельной категории нет.
Будет, конечно, несколько странно, что “карты номер один” с жесткими правилами сумели эту сущность осилить, а более гибкий OSM - не сумеет…
Тогда надо будет таки добавить этот момент и на английскую страницу вики, чтобы пользователи данных и текущие/будущие разработчики софта в принципе знали об этом и могли учесть момент, а не полагались целиком на адреса со зданий.
Для place=city, name=Санкт-Петербург работает только п.1 В общем получается, что граница НП в российском OSM это вовсе не граница НП, а граница почтового адресного пространства, где в адресе на месте населенного пункта стоит данный name. По сути столь же полезная/бесполезная виртуальная вещь как, например, судебные округа. Разница только в том, что одно выпилили, а другое оставили
Такого пропозала в вики тоже нет. Все что есть, это страничка RU:Addresses c недавними правками Совы И все.
RU:Addresses я приведу в порядок в ближайшее время. Новый перевод RU:Key:addr я уже сделал.
Пока ничего не вычищаем. RU:key:addr - просто перевод. До сегодняшнего дня там вообще был английский текст. Все, что там было специфично российского до отката Совы я перенесу в RU:Addresses. А там посмотрим
Кстати в Штатах, там офиицальное подразделение OSM c секретаршами и домино. Все строго зарегулировано. Страничку эту штатовскую в вики с правилами вообще правит только один из директоров. Наверняка у них где-то (в форуме?) обсуждения/глосования проходят, а потом уже один этот специально обученный директор все в вики заносит
Или директор приказом вводит, безо всяких демократий
Я специально искал отсылки на голосования в проекте USA - ничего не увидел. Так что, пока не доказано иного, считаю, что их не было. У нас если голосования были - ссылки на них публикуются.
Хорошо, убедили, я не Сова, вопреки воле сообщества не иду Сущность “Граница населённого пункта” уместна в OSM. С этой точки зрения её надо рисовать (по возможности) по генплану с учётом последних изменений (как я понимаю, при прирастании новыми кварталами в ГП вносятся изменения, чтобы они не оказались за границе), а в местах пересечения с дорогами - по табличке с названием НП.
Осталось решить, как это соотнести с адресацией. Технически возможны два случая:
Дом адресуется по НП, но находится вне его границы по ГП.
Дом находится в пределах границы НП по ГП, но адресуется не по нему.
Вопросы:
Возможно ли эти случаи с точки зрения закона, или это однозначный признак ошибочно проведенной границы НП? Отдельный вопрос с текущей границей в OSM для НП “город Санкт-Петербург” - раз Николай говорит, что там проблемы, то может это надо там что-то с границами поправить?
Если возможно, то какие теги куда ставить для правильной адресации в каждом из этих случаев (желательно, чтобы Nominatum и иже с ними сумели определить правильный адрес)?