Новогодняя сказочка о том, как нам OSM обустроить.
Posted by solenoid jam on 1 December 2024 in Russian (Русский).Разговоры о том, чего не хватает в OSM, это уже давно моветон, темка склизская, и попахивающая прокрастинацией. И всё же, декабрь - месяц ожиданий, надежд, и загадывания желаний, так что надеюсь читатель простит мой сентимент.
Итак, начнем с расширения наименований.
В OSM принято вносить в name= имена собственные, и во многих случаях, мы же вынуждены нарушать это правило, внося и name что то вроде “Москва река”, “Собачий пруд”, “ Парк Дубки”, “Строительство дороги Москва - Петушки”, “Детский сад Умка”, или “ГБОУ Школа №1234”. Схема получается противоречивая, генерирующая довольно грязные данные. Было бы правильно, разделять описание сущности объекта, и его имя собственное. Разделять можно двумя способами.
1- Добавить отдельный атрибут для сущностной части. Получаем:
name:type=Детский сад name=Умка
2- Вводить всё в name, но разделяя специальными символами, например так name=[Детский сад]<Умка>
Мне могут возразить, что всё это уже есть, ведь leisure=park, или water=pond, и выполняет эту задачу, описывая сущность объекта. Но нет, наших схем тэгирования не всегда хватает для красивого и правильного составления названия. Может быть, было бы лучше расширить схему наименования, для того, что бы не зависеть от костных и ограниченных существующих схем.
Ассоциированные входы.
Давно похороненная тема, не знаю кем, и не знаю зачем, но точно зря. Мы имеем множество зданий, со сложной организацией внутреннего пространства. Со сквозными проходами, с раздельными входами на разные этажи, с десятками отдельных павильонов, у каждого из которых свой вход, с входами открытыми в разное время, с выходами на подземную парковку, итд. К сожалению, накидывание точек поверх полигонов здания, этого зачастую недостаточно, для того что бы разобраться, как найти самый удобный проход к интересующей нас организации. Разметка Indoor в общем случае слишком громоздка для подавляющего большинства случаев. Отрисовывать нутро всех мини рыночков, ТЦшек, и БЦшек, слишком сложно, да и не нужно, если можно просто сделать отношение входов, и прикреплять к ним организации.
Объединяющая сущность для сетевых организаций.
Для того что бы при поиске всех организаций в сети, нам в выдачу не прилетали фирмы с тем же брендом, но не имеющие к сети никакого отношения, стоило бы для сетей использовать уникальные идентификаторы. Объединять сети можно по юридическому названию, ИНН или ОГРН. Эта информация могла бы быть добавлена в пресеты JOSM, и других редакторов, для того что бы при добавлении через пресет, у нас сразу была привязка к сети.
В принципе, у нас уже есть эта схема, нужно только её согласовать для повсеместного применения.
Проблемой может быть локализация этой схемы для разных стран, особенно для международных организаций.
Полевые инструменты сверки наличия организаций и объектов.
Чистка мусорных данных на мой взгляд важней, чем добавление новых организаций на карте, поскольку отсутствие существующей организации, это недостаток, а наличие не существующей, это ошибка вводящая потребителя в заблуждение. Нужны пресеты для Street Complete и Every Door, акцентирующие внимание только на проверке, существует ли организация, или закрылась. Ничего лишнего, только сверка наличия.
В принципе, с этой задачей справляются популярные навигаторы, вроде Organic maps, но в них не хватает режима обхода с обязательной проверкой всех организаций, одна за другой. Ведь нас никто не провоцирует проверять актуальность каждого POI, что бы точно убедиться, что проверил всё, ничего не пропустив.
Добавление организаций на главной.
Сделать во всех продуктах OSM приоритет добавления новых объектов выше, чем приоритет добавления текстовой заметки. Примерно так, как сделано в том же Organic maps. На главной должен быть интерфейс, для простого добавления точечных объектов организаций, с введением всех основных атрибутов, вроде времени работы, телефона, итд. Простая форма для создания организаций, позволит владельцам активней насыщать БДОСМ своими данными, в соответствии с нашими стандартами. Это лучше чем заметка: “добавьте магазин обуви Крутышка”, от 2017 года.
Инструмент обратной связи в JOSM.
Не хватает удобного интерфейса для обратной связи с мапперами. Хорошо было бы выделить ошибочный объект, и сразу из JOSM, сформировать сообщение об ошибке и о том, как эту ошибку не допускать в будущем. Своего рода, гео-мессенджер для своих, с возможностью замьютить сообщения от отдельных пользователей, или то всех сразу, если выслушивания поучений вам не подходит. Это решило бы проблему громоздкости процесса обратной связи, и упростило бы передачу опыта, в контексте конкретных кейсов.
Линейные и полигональные заметки.
А почему только точечные? Почему не прикреплять к точечной заметке GPX файл, который может отображаться на главной, или в JOSM? Видеть границы и форму добавляемого объекта, это удобно. Так же в полевых условиях, можно было бы более подробно собирать пространственную информацию об объектах.
Discussion
Comment from TrickyFoxy on 2 December 2024 at 12:01
Ну какая новогодняя сказочка без поддержки рендеринга новогодних ёлок!
Comment from Zkir on 24 December 2024 at 12:11
Чего мне не хватает, так это удобного способа отслеживать комменты к комитам. Ответил на них кто-нибудь, не ответил или что.
Может уже есть плагин к JOSM?
Comment from TrickyFoxy on 24 December 2024 at 12:21
HDYC же https://resultmaps.neis-one.org/osm-discussion-comments?uid=100812&commented
Может быть скоро увидим и на сайте https://github.com/openstreetmap/openstreetmap-website/pull/4248
Comment from Zkir on 24 December 2024 at 14:55
TrickyFoxy, спасибо, не знал. Конечно, на сайте было бы лучше.
Comment from superkiria on 9 February 2025 at 08:11
По поводу name:type=Детский сад. Вчера обсуждали в телеграмме и подсказали, что для этого есть official_status. И ещё full_name для фиксации того, что есть на вывеске кроме названия. Например, на вывеске написано Центр развития “Солнышко”. И мы знаем, что это детский сад такой. Тогда * name=Солнышко * official_status=Детский сад * full_name=Центр развития “Солнышко” Мне пока не до конца нравится то, что в этом варианте есть full_name с кавычками, которые не понятно как писать, нужны они или не нужны. Но буду использовать, чтобы понять как оно работает на практике.
Comment from superkiria on 9 February 2025 at 10:11
Поправка - iWowik говорит о том, что вместо full_name стоит использовать official_name - есть такая обширная практика в Беларуси.
Comment from solenoid jam on 10 February 2025 at 17:29
Я не столько про официальные названия писал, сколько про пояснительное описание заведения или учреждения. Например “Лапшичная”/”Том Ям”, или “Яхт-клуб”/”Парус”. В принципе, при отсутствии имени собственного, это могло бы быть его заменой, например “Продуктовый магазин”, или “Автосервис”. У нас иногда это пихают в name, что является ошибкой, по скольку это не имя собственное.