Nominatim поиск станций метро

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

Хотел добавить ключевое слово “метро” в название станций, но мои правки откатили… чё делать и как с этим жить?))) посетители сайта естественно используют ключ “метро”

Неужели нельзя добавить ключевое слово “метро” в название…

Нельзя, потому что название - это только название, без слов типов.

Вам же на своей стороне нужно вырезать “Метро” и заменить его на уточнения для номинатима “railway=station”

https://nominatim.openstreetmap.org/ui/search.html?q=railway%3Dstation+кунцевская

Каждый раз заменять “Метро” на “railway=station” тоже не вариант, т.к. пользователь может искать автобусную остановку с одноимённым названием. Т.е. по исходным правилам, чтобы найти остановку метро нужно искать “Кунцевская”, а чтобы найти автобусную остановку “Метро Кунцевская”
Остаётся только править дампы на своей стороне…

https://wiki.openstreetmap.org/wiki/RU:Названия

что мешает изменять введенные пользователем имя перед посылкой в поисковую машину ??

Не совсем удобно для пользователя, к примеру он ищет “Метро Дыбенко” мы можем убрать из запроса слово “метро” но тогда в результатах поиска огромное количество записей “Улица Дыбенко” и среди них где-то в серединке есть результат “Дыбенко” что относится к метро и есть несколько результатов “Станция метро Дыбенко” что относится к остановкам наземного транспорта, юзабилити зашкаливает))) А учитывая что это портал общественного транспорта Санкт-Петербурга, пользователи разных возрастов, не каждый сможет разобраться сразу…

Правильно ли я понимаю, что вики мне советует использовать loc_name или alt_name?))

Правильно, для решения вашей проблемы не советует.

1 Like

Из текста пользователя удаляется “метро” как слово-категория, а в запрос поисковой машине добавляется ограничение поиска только по пои с тегом " railway=subway_entrance" и подобное - пользователь получает выходы из метро.
Просто надо чутка поднятся выше “только текстового поиска”

Неправильно :slight_smile: это альтернативные именования объектов.
А не костыли под ваше личное мнение о именах.

Направление мысли правильное, но не до конца) Тогда в результат поиска не попадают остановки наземного транспорта с названием “Станция метро такая-то”
Вопрос был, можно ли как-то добавить инфу в ОСМ, для того чтобы не ковырять сервис поиска, уже объяснили что нет.
Буду поисковик учить искать правильно, чтобы смотрел на теги

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

тем более твой взгляд на результат поиска вполне реализуем правильной настройкой алгоритма поиска - добавишь еще в поиск теги общественного транспорта и океюшки.

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

Для решения вашей задачи принципиально не получится использовать только тег name. Чтобы различать объекты по типам, необходимо смотреть и на другие теги. Например, о том, что данный объект является станцией метро, сигнализирует комбинация тегов railway=station + station=subway. Просто railway=station без station=… означает железнодорожную станцию, railway=halt - железнодорожный остановочный пункт (который часто называют “платформа N-ая”), а highway=bus_stop - остановку автобуса и/или троллейбуса.

Читаю правила. И ничего не понимаю:
"Названия должны ограничиваться только именем предмета и не должны включать слова-категории которые мы обозначаем тегами, описания, адрес и почтовый индекс либо замечание.
Вместе с тем, если родовое обозначение объекта (слово-категория) является неотъемлемой частью названия, то оно указываются в теге name и аналогичных ему. Правильно: name=Парк Горького, name=Химкинское водохранилище, name=Паб для всех. Неправильно: name=Горького, name=Химкинское, name=для всех). "

И напротив:
“Несколько примеров наиболее часто встречающегося по статистике неверного использования и правильного обозначения для соответствующих случаев:
город Казань (для города с названием Казань не следует добавлять описание город; следует учитывать, что могут существовать городские округа с названиями типа город Казань)
мультиполигон Ковалёвский лес: не включайте тип объекта или иную терминологию OSM, если она не используется вне OSM”

Как проводится грань между - “Парк Горького” и “город Казань”? Между “Химкинское водохранилище” и “Ковалёкский лес”?
Неужели в не OSM мы говорим “Ковалёвский”? Нет, мы говорим “Ковалёвский лес”. Мы даже в случае с городом чаще говорим “город Казань”. Иначе не понятно и можно перепутать с “паб Казань”.
А уж про “Метро” и вовсе не возможно говорить просто “Дыбенко”:
“Товарищь, подскажыти где здесь Дыбенко? Ответ - полигон Коммунарка!”
И грустно, и иронично, и … обратите внимание в ответе не просто “Коммунарка”, а “полигон Коммунарка”!
Исключение из названий слов-категрий действие опрометчивое, странное и не обоснванное. Полное именование города включает слово “город”. Ибо есть и село, и деревня, и много ещё чего. Ну и Метро без слова Метро не метро.

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

Потому что у нас база данных, где много колонок, которые разделяют разные сущности с одним названием. И на картах существуют условные обозначения, а не всё подписывается словами.

1 Like

Условные обозначения - это прекрасно. Но есть еще площадные объекты для которых название помещается где-то в некоем “центре” и как правило без всяких значков.
Имеет смысл избегать названий, которые состоят только из “категорий” - типа “Магазин” “Кафе” и т.д. А для площадных объектов включение категорий в название вполне логично.

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

Раз в ход пошли аналогии, значит осмысленная часть обсуждения завершилась.

Не логично для кого? Я обратил ваше внимание на то что в правилах нет однозначности. Это логично?!