Потому что все смотрят на это с точки зрения база данных или уже написанных программ (навигаторов в частности), и закрывают глаза на важность читабельности карты. Яндекс решил этот вопрос введением двух полей: полное значение и как оно выводится на карту. И родовые слова выводят сокращенными или не выводят вообще, как и принято в печатной картографии. У нас же только одно поле, точнее для основного языка есть еще нелокализированный name. Вот и пытаемся найти середину между тем, как это хранить и выводить, и чтобы не обидеть уже работающие программы.
name:perefix/postfix может помочь в этом деле, если конечно рендеры научатся его подставлять к названию, и если мы будем хранить там только то, что предназначено для вывода на карту вместе с названием.
Вот все любят фразу “нельзя мапить под рендеры”, а вы встречали рендеры (особенно среди тех, которые мировые карты делают), которые занимаются форматированием выводимого названия?
en, be:
vdsch. Drazdy, вдсх. Дразды
Svislač river, р. Свіслач
vozera Kamsamolskaje, возера Камсамольскае
Navavilienskaja vulica
і калі глянуць то можна знайсьці і oz./воз., vozera/возера, ozero/возера, vadaschovišča/вдсхв., vdsch./вдсхв., vdkhr./вдсх., vdkhr./вдсв., reservoir/вдсх. - якогасьці патэрну я пабачыць нажаль ня змог, на вялікіх і малы маштабах скароты і поўныя назвы выглядаюць ці лепш, ці горш.
Адлюстраваньне залежыць ад маштабу і прызначэньня мапы, зрабіць адзіны універсальны стыль я не ўяўляю магчымым. Правіла не рабіць пад рэндар яно ж не з галавы прыдуманае, а менавіта ад адсутнасьці эталоннага выкарыстоўваньня, то бок калі існуюць добрыя дадзеныя, можна намаляваць добра для ўсіх, калі не - толькі для аднаго выпадку. Дадзеныя planet.osm могуць шмат чым адрозьнівацца, зрабіць ўнівэрсальна, каб улічваць усе падыходы адлюстроўваньня мапы з розных куткоў Зямлі мне ўяўляецца дужа складанаю задачаю.
Масштаб большой роли не играет, потому что на мелких масштабах мелкие объекты не отображаются. Родовое слово писать полностью для крупных объектов можно, но не обязательно. А вот для мелкого написать полное слово, чтобы оно перекрывало соседние названия не есть хорошо.
Так что с “СТ” решаем? Оставляем это сокращение в названии или задаем “садоводческое товарищество” в name:prefix и ждем, когда рендеры научатся его выводить и сокращать для нас?
Моя позиция конкретно по этому пункту - оставить сокращение в названии, а полную расшифровки закинуть в “official_status” и статусную часть населенных пунктов туда же.
Задаем “садоводческое товарищество” в name:prefix и ничего не ждем – рендеры их и так рисуют другими шрифтами/цветом/текстурой, а однотипные “СТ” (а то еще и кавычки) в названиях, ИМХО, мало что добавят к этому, только нагрузят карту.
Если необходимо полное наименование, то либо в official_name, либо в operator.
Я рассматриваю name:prefix как просто недостающую часть для получения полного имени.
То есть, грубо говоря, official name=name:prefix+’ '+name;
Поэтому переливать из name:prefix в official name и обратно это наилучшее применение сил и умений осмеров.
Хорошо, а из чего следует, что для СТ принято выводить статусную часть? Т.е. без статусной части на гибридной карте пользователь легко различает “деревня Пралески” от “посёлок Пралески”, но вот чтобы различить "СТ “Пралески” ему статусная часть необходима? Скорее проще по планировке и плотности застройки отпределить, что это СТ или НП, чем отличить деревню от посёлка.
Другими словами, если для решения более сложной задачи – идентификации деревни/посёлка/агрогородка – не используется статусная часть в name, то зачем её использовать для более простой задачи – разделения на СТ и НП?
Не вижу радикальных различий между СТ и НП – какой подход применяется для НП, такой же кажется логичным применять и к СТ.
Ага, осталось совсем ничего - прописать подобные правила для других категорий объектов, при этом научить их в каких-то случаях брать часть названия из других тегов типа name:prefix, и да, еще совсем чуть-чуть, сделать тоже самое на хотя бы 40-ка наиболее распространённых языках мира.
Не перебор ли это? Самое надежное правило в данном случае - это его отсутствие - положить в name то, что принято выводить на карту.
По всему миру name для place это только имя собственное, без всяких city/town/village, и только РБ такая особенная, что name для place должны содержать статусную часть? Если кому-то нужен слой со статусами, пусть пропишет для всех place official_name или научит рендер комбинировать name:prefix+name
К тому же, если кому-то понадобятся статусы с именами на других языках, то полноценные name:prefix можно перевести (то же “садоводческое товарищество” = “allotment holders’ association”), name транслитерировать и всё это вместе собрать в official_name:** автоматически. А вот если писать в name не только имена собственные, но и все сокращения статусных частей, то придётся долго лазить по форумам и искать, в каких странах какие локальные сокращения были приняты, чтобы их сначала расшифровать и только потом перевести.
Аргумент с переводом также касается водоёмов: если имеем name: prefix/postfix=“водохранилище” и name=“Вилейское”/“Дрозды”, то собрать из них “Vileiskoe reservoir”/“Drozdy reservoir” легко, а вот если это все вместо слеплено в name, то надо ещё будет поломать голову на тем, какую часть name переводить, а какую – транслитерировать.
И все-таки name:prefix не годится для родового слова, по крайней мере для населенных пунктов. http://osm.mapki.com/history/node.php?id=3813699722
Это был хутор, а теперь урочище. С одной стороны изменение сделано правильно, так как поменялась категория объекта, но с другой - мы потеряли тип населенного пункта, была ли там деревня или хутор, или что-то еще.
name:prefix является слишком обобщенным тегом, и запросто может все перепутать, что и произошло в данном примере.
Нужен новый тег для рода населенных пунктов.