Мне кажется, именно это обстоятельство и послужило поводом для создания темы.
Такое впечатление, что новые теги вносил бот, тупо копирующий name в name:ru.
Тут непонятно вообще, зачем нужна такая “правка”. Какой смысл в новом теге, если он ПРИНЦИПИАЛЬНО не несет никакой информации?
Давайте вообще для всех тегов создавать дубли.
Как раз на пограничных объектах желательно иметь name:<страна1> и name:<страна2>, поскольку name может оказаться каким угодно, например: <имя на языке1> - <имя на языке 2>. При этом конвертировать из osm в другой формат (в первую очередь mp ) для конкретной страны лучше делать с приоритетами name:<эта страна>, name чтобы не появлялась имена вида " " или “Dun re”, как это делается в карте Болгарии.
Но то, что и как сделано в данном изменении откатить.
Зачем дублировать name в центре России? … Хотя это и может иметь смысл для тупого софта, который не смотрит на текущую страну, а берет названия в порядке name:<язык из настроек>, <английский>, … и только потом просто name?
Но совершенно неясно, что в name:ru делают иероглифы.
Всегда существует название на языке страны, на территории которой расположен объект. Именно это название и должно быть в name. Поэтому СОВЕРШЕННО непонятно, с какой стати хотя бы в одном объекте на территории РФ вдруг может появиться name:ru. Такое IMHO допустимо исключительно для объектов за рубежом, для которых хотелось бы иметь русскоязычные названия. А для “внутренних” объектов name:ru абсолютно бессмысленно просто потому, что всегда должно совпадать с name (на что, похоже, автор этого злобного бота и рассчитывал).
Полностью согласен.
Опять согласен.
Мне кажется, следует делать по уму, а не “оптимизировать под тупой софт”. В противном случае нам так и придется пользоваться именно тупым, ибо тупой не вымрет от собственной тупости.
В России далеко не только на русском языке говорят и пишут. Поэтому названия могут быть и многоязычными, и на языке компактно проживающей народности. То же самое, и даже хуже (несколько гос. языков) может быть в других странах, поэтому следует делать однообразно.
Думаю, что наличие хотя бы части объекта “за границей” и относится к случаю “заграничного” объекта, т.е. того, которому “положен” тег name:ru.
Правильно. Именно для таких (т.е. для местных языков или языков компактно проживающих народностей) и служат теги типа name:??. И, кстати, есть еще вариант loc_name. Притом, насколько я наблюдаю, практика использования склоняется именно к такому варианту. В противном случае получается, что тег name становится совершенно лишним.
Мне вот, правда, непонятен смысл int_name. Это синоним namr:en или локальное произношение, набранное латинницей?
Предложение писать в name название на официальном языке и оставлять пустым name:<оф. язык> будет работать только при выполнении следующих условий:
а) официальный язык один (иначе хрен знает что писать);
б) этому предложению последуют все без исключения (иначе логика определения языка написания name не будет работать).
name — тег низкоприоритетный. Его стоит использовать в качестве затычки, если названия на приоритетном языке не нашлось (или приоритетный язык не выбран).
И да, тупая программа — хорошая программа. Зачем решать задачу сложно, если можно решить просто? Зачем и кому нужны эти пляски с официальными языками, когда можно просто выбирать самый первый присутствующий в списке языков?
Смысл правки в том, чтобы иметь возможность стопроцентно программно выбирать именно русские наименования при наличии множественных.
Косяк вышел из-за неоднозначного поведения tagtransform, он не обрабатывал . То, что name:ru затёрлось на некоторых объектах - мой косяк, буду пытаться исправить. То, что name:ru появилось на приграничных объектах, на которых его не было и оно неверно - это collateral damage, без него никак. Если выставить там верный name:ru, то дальнейшие автоматические правки его не тронут.
Не понял как именно поломались границы. Кроме добавления тэга name:ru никаких больше изменений не вносилось. Топология ways и relations не менялась.
Или я что-то не понимаю, или у меня от третьих суток бессонницы уже крыша поехала. А зачем добавлять name:ru?
Алгоритм “иметь возможность стопроцентно программно выбирать именно русские наименования” тривиальнейший: если name:ru есть, берем его, если нету - берем просто name. Все.
И для любого объекта в РФ дублирующий name:ru просто не нужен. Поскольку name уже на русском.
Для заграницы и граничных объектов - name:ru.
Update:
Зато простору для махинаций… В name пишем Татарстан, в name:ru Татария.
По идее, надо контролировать, чтобы в name и name:ru лежало одно и то-же. Но это чревато для граничных и заграничных объектов… Не стоит овчинка выделки.
Вижу. Это баг osmosis или tagtransform. Не получается его воспроизвести на маленьких файлах, где только затронутые объекты. Попробую воспроизвести на всём дампе России.