Ударения в названиях

Ну у нас всё-таки не государственная бд, поэтому регистрационные документы не имеют преимущества над прочими данными. Их тоже составляют люди и там тоже встречаются ошибки. Слепо повторять чужие ошибки только по тому что они присутствуют в каких-то документах не стоит.

Правила бюрократии нас ни коим образом не касаются.

Честное слов, удивляет меня эта тема.
Как дети - если в коробке есть 20 красок, то все двадцать должны быть на рисунке! Так и с символами, раз они есть - почему их не использовать!

Если уже решили делать ударения, зачем ограничиваться названиями, впоне логично ставить их также в полях key, val, а также role у отношений.

Что же касается поле name, то в него принято помещать написание, а не произношение. Поэтому, уж если куда и помещать ударение, то в специальный тег с транкрипцией.

Поиском на сайте http://taginfo.openstreetmap.ru удалось найти две группы тегов для обозначения ударений в словах.

К первой группе тегов принадлежат operator_with_accent, name_with_accent, name_with_accent:ru (в общей сложности 8 случаев использования). В качестве значения тегов записываются обычные слова, ударения в которых обозначаются специальными символами с ударением, например “Петербу́ргский метрополите́н”, “Аэропо́рт Пу́лково”.

Ко второй группе тегов относится тег name:ru:word_stress (75 случаев использования). В качестве значения тега используются слова, записанные строчными буквами, а ударные гласные записываются прописными буквами, например “большОе сорОкино”.

Возможно, это не все теги для хранения ударений в словах. Какие ещё подобные теги существуют?

Ну, мне больше понравилось name_with_accent, name_with_accent:ru
Как-то вроде логичней, но что-то я никак не наловчусь этот самый символ ударения ставить. :frowning:

А вообще, проблема интересная. Мне и самому противно, когда коверкают названия неправильным ударением.
Например, названия Люботин, Песочин, Купянск, Рогань многие неместные произносят неправильно, не подозревая, что правильно будет “люботИн”, “песочИн”, “кУпянск”, “рогАнь”.

Что касается наименования тегов, то теги типа *_with_accent не традиционны для OpenStreetMap. Предлоги неохотно используются в названиях тегов. Попадались только is_in и drive_in. Кроме того, с точки зрения английского языка accent больше относится к иностранному акценту, а не к ударению в словах. Ударение по-английски stress.

По поводу значений тегов, не знаю. Спецсимволы вводить непривычно. К клавише Shift для ввода ударного звука быстрее можно привыкнуть.

Практическое применение ударений в словах - наименование улиц. Многие знают что OsmAnd озвучивает имена улиц при навигации, через TTS. И еслимы хотим услышать “улица сАвушкина” вместо “улица савУшкина”, эти данные должны быть в базе.
Да, в name не место ударениям, но какой-нибудь тэг нужен. Например тот же - “name:ru:word_stress”.

Ага, давайте пойдём дальше - будем всё писать транслитом, 7-bit ASCII хватит на всех, наличие в коробке с красками кириллицы еще не повод её использовать.

Между name и key/val разница все таки есть. name объективно существует вне OSM, а key/val в общем случае это договорённость участников OSM как обозначать тот или иной объект. В этом плане для name есть объективная потребность использовать почти всё, что есть в Unicode, а для большинства key/val можно ограничиться английским языком и ASCII.

В Русском языке очень много названий, где ударение не очевидно даже человеку хорошо знающему русский язык. А в остальном произношение очевидно. Например есть реки По́ля и Пола́. Если произнести их с неправильным ударением - местные вас просто не поймут.
Так что потребность в карте где для названий указано ударение - есть.

Отдельный тэг с произношением, например в IPA (http://wiki.openstreetmap.org/wiki/Proposed_features/Phonetics) данную проблему не решает - из IPA получить название в таком же виде как оно пишется, но с ударением нельзя. Т. е. где то хранить название с ударением нужно, потому что из других тэгов вывести его нельзя.

Выносить название с ударением в отдельный тэг (name_with_accent) мне кажется плохой идей:

  1. У нас будет два раза храниться почти одна и та же строка.
  2. Надо будет следить, чтобы они не разъезжались. Например если название неправильное кто то может исправить name и не исправить name_with_accent (для объекта с десятком тэгов его легко будет не заметить).

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

Но в целом я бы предпочёл видеть на карте названия с ударениями, особенно там, где это не очевидно.

Если нужно вводить редко - можно просто копировать символ ударения из википедии через Ctrl+C/Ctrl+V. А если часто - то можно и запомнить сочетание клавиш.

Что-то я такой комбинации не нашёл, вот Á (Алт + 0193), код символа U+00C1.

Don’t map for TTS.

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

И да, всё это резко сломает обратную совместимость. Вы ещё вспомните об этом, когда в навигационных программах, на сайтах и в других основанных на OSM сервисах не сможете найти старинный русский город Тве́рь.

Поэтому предлагается - дополнять данные при помощи “name:ru:word_stress” в дополнение к “name”. Как с тем что писать на карте для зданий: есть “имя” - пишем его, нет пишем адрес(номер дома). Для TTS: есть “name:ru:word_stress” - произносим его, нет - произносим name.

Это риторическое замечание, потому что я прекрасно понимаю, что никто здесь не собирается менять свое мнение, но я все же скажу:
Русское ударение в названиях для TTS можно обозначать хоть символом задницы (если такой найдется в Юникоде и его удастся вводить в JOSM). Все равно, если это будет использоваться средствами TTS, там это может конвертироваться во что угодно.
Но проблема в том, что фонетические тонкости не ограничиваются ударениями. Иначе бы не придумали http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D0%B6%D0%B4%D1%83%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9_%D1%84%D0%BE%D0%BD%D0%B5%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B0%D0%BB%D1%84%D0%B0%D0%B2%D0%B8%D1%82
Совать фонетическую информацию в обычный name и предлагать оттуда что-то вычищать - идея, достойная диагноза “маниакальный бред”.

Задача сбора точных данных для систем синтеза речи пока никем не ставилась. Вряд ли данные из OpenStreetMap будут использоваться в таких системах. Хотелось бы хранить данные об ударениях в удобной для чтения человеком форме (для человека в русском языке ударения вполне хватает, чтобы уверенно произносить географические названия). Желательно, чтобы эти данные удобно можно было бы вводить. Необязательно эти данные выводить на картах. Вполне достаточно, чтобы их можно было бы посмотреть в редакторах или на web-страничках объектов. Некоторые валидаторы имеют ссылки на такие страницы (например, ссылки на страницы границ и точек населённых пунктов). Если данных об ударениях станет много, то можно будет отображать их прямо в валидаторах.

Для записи ударений пока нашлось три способа:

  1. С помощью знака ударения или спецсимволов (Ни́жний Таги́л);
  2. С помощью заглавных букв (нИжний тагИл);
  3. С помощью указания номера ударного слога в слове (1 2).

Первый способ наглядный, но не очень удобный для ввода. Второй наглядный и удобный для ввода. Третий ненаглядный (но очень компактный), удобный для ввода, но при этом сложно сопоставить такую запись записи в name (например, после изменения name). Какой из способов приживётся покажет время.

Главное, не тащите это всё в name=,
И по “2 способу”, как быть с ИркУтском или АбакАном?, ну и кучей других name=
, или предлагается их со строчной буквы писать? :smiley:

Сейчас в базе данных для хранения ударений используются теги name:ru:word_stress, name_with_accent:ru и некоторые другие, а не name.

Иностранцы указывают ударение одиночной кавычкой перед ударным слогом. Вопрос: зачем изобретать колесо ?
http://oald8.oxfordlearnersdictionaries.com/dictionary/transcription

Во-первых, это не “иностранцы”, а лингвисты.
Во-вторых, символ, напоминающий одинарную кавычку в примере trænˈskrɪpʃn - это только один вид ударения (так называемое “основное ударение”, оно же primary stress, потому что есть еще “дополнительное ударение”, оно же secondary stress, которое обозначается таким же символом, но внизу строки).
В-третьих, символ основного ударения в Юникоде - это U+02C8, что не то же самое что одинарная кавычка или апостроф.
Все это наверняка написано даже в википедии, так что прежде чем писать, стоило бы проверить.

(del, что тут скажешь)

Ударение - полумера. Надо всё произношение в виде звукового файла для каждого НП.
http://www.forvo.com/word/%D0%B1%D1%83%D0%B4%D0%BA%D0%B0_%D0%B6%D0%B5%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B9_%D0%B4%D0%BE%D1%80%D0%BE%D0%B3%D0%B8_372,373%D0%BA%D0%BC/

А если без шуток, то нужна информация для ударения, которую легко подсунуть читалкам, озвучавающим названия в навигаторах. Какие у них там форматы популярны?