You are not logged in.
- Topics: Active | Unanswered
Announcement
#26 2012-10-01 13:16:25
- Marych73
- Member
- From: Ташкент
- Registered: 2011-01-18
- Posts: 283
Re: Мультиязычные адреса
Вернемся к вопросу Мультиязычные адреса - Эта проблема есть, данный топик предназначен для поиска путей ее решения.
Что есть на сегодняшний день:
1-Белорусская схема
2-Схема через отношения, как указал VikDD во втором посте.
3- ... мне не известно
У каждой преимущества и недостатки.
Надо решить, придумывать новую или развить и поддерживать существующую
Схема через отношения, спотыкается на районах, областях (отношения поддреживают только улицы) - правильно? Как это решено на Украине (Мультиязычная адресация районов и областей)?
Белоруская схема лишена подобных недостатков, но для простых пользователей разобраться в ней будет не просто. Мне нравится Белоруская схема, все равно на каждой 2-й странице народ интересуется где ошибка в адресном поиске и как исправить.
Есть 3-й вариант?
Offline
#27 2012-10-01 13:20:11
- dudka
- Member
- From: Київ
- Registered: 2011-04-22
- Posts: 1,605
Re: Мультиязычные адреса
Угу... И где их локализовывать?
В name-тегах suburb-точки обозначающей приблизительный центр микрорайона
http://www.openstreetmap.org/browse/node/1372125092
Offline
#28 2012-10-01 13:21:37
- freeExec
- Moderator
- From: Ульяновск,Модератор всех слоёв
- Registered: 2012-07-31
- Posts: 8,460
Re: Мультиязычные адреса
Наверное сморожу глупость, но вроде поддерживается отношение в отношении. По крайней мере если взглянуть на отношение "Приволжский федеральный округ" то в нем есть дочерние элементы области, которые тоже каким-то единым объектом не являются.
Offline
#29 2012-10-01 13:25:41
- liosha
- Member
- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Мультиязычные адреса
В name-тегах suburb-точки обозначающей приблизительный центр микрорайона
Это плохой вариант, потому что построение адреса начинает требовать сложной эвристики.
UPD
Хорошая схема должна быть достаточно простой и для редактировани, чтобы у среднестатического маппера не взрывался мозг, и для использования, чтобы не требовались мегабайтные алгоритмы для определения правильного адреса любого объекта.
Offline
#30 2012-10-01 13:28:58
- dudka
- Member
- From: Київ
- Registered: 2011-04-22
- Posts: 1,605
Re: Мультиязычные адреса
dudka wrote:В name-тегах suburb-точки обозначающей приблизительный центр микрорайона
Это плохой вариант, потому что построение адреса начинает требовать сложной эвристики.
Не очень и сложной..
Если у улицы/дома/street-отношения указан addr:suburb то нужно в окресности 10-20км найти place=suburb-точку у которой name-тег(или один из name:**-тегов) такой же как addr:suburb и взять из нее необходимый name:**.
Offline
#31 2012-10-01 13:30:32
- liosha
- Member
- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Мультиязычные адреса
Угу... А что делать, если там не субурб, а километр железной дороги, берег реки или упразднённая улица?
Offline
#32 2012-10-01 13:33:42
- Sergey Astakhov
- Member
- From: St.Petersburg, Russia
- Registered: 2009-11-13
- Posts: 5,779
Re: Мультиязычные адреса
Sergey Astakhov wrote:Тогда откуда он взялся в адресе?
СПб, Торики, 1-я линия
Откуда Торики???
Вполне явные границы - http://ru.wikipedia.org/wiki/%D0%A2%D0% … 0%BA%D0%B8
Ну и почему бы его не добавить? Насколько помню там вроде как даже был полигон Ториков, возможно перелицензированием смыло.
Offline
#33 2012-10-01 13:39:38
- Marych73
- Member
- From: Ташкент
- Registered: 2011-01-18
- Posts: 283
Re: Мультиязычные адреса
Хорошая схема должна быть достаточно простой и для редактировани, чтобы у среднестатического маппера не взрывался мозг, и для использования, чтобы не требовались мегабайтные алгоритмы для определения правильного адреса любого объекта.
Если про белорусскую схему, то до города отношения могут создать "старшие и опытные товарищи".
В городе - отношения на район, на suburb, на улицу - не вижу большой проблемы.
Проблемы будут только с объяснением как создать адресацию с сельскими поселениями и другими мелкими объектами. А разве сейчас их нет?
Last edited by Marych73 (2012-10-01 13:41:11)
Offline
#34 2012-10-01 13:48:05
- dimonster
- Member
- Registered: 2012-07-08
- Posts: 1,501
Re: Мультиязычные адреса
В Украине проблем с мультиязычными названиями городов и областей нет. Город обведен полигоном, на котором висят теги place=city (town, village для деревни и т.д.), и теги названия на разных языках name=Харків, name:ru=Харьков, name:en=Kharkiv и т. д.
Если улица попадает внутрь этого полигона, то на неё автоматически навешивается название города на выбранном языке. Конвертор это уже умеет. Аналогично с привязыванием города к области, области к стране.
Кстати, границы города (области, страны) можно задавать не только полигоном, но и мультиполигоном (набором линий-границ, связанных отношением). При этом одна и та же линия-граница (например, граница между Харьковской и Сумской областями) входит одновременно в разные релейшены (релейшен границ Сумской обл. и релейшн границ Харьковской обл.).
Вот одна из таких линий http://www.openstreetmap.org/browse/way/30565594
Есть проблема с привязыванием городов районного подчинения к соответствующим районам области. Конвертор этого не умеет.
Offline
#35 2012-10-01 14:14:03
- Marych73
- Member
- From: Ташкент
- Registered: 2011-01-18
- Posts: 283
Re: Мультиязычные адреса
Конвертор это уже умеет. Аналогично с привязыванием города к области, области к стране.
Насколько мне известно, конвертер для районов и областей (адресная информация) берет название из
addr:region
addr:district
а там только - name, и допиливается постпроцессором
Или что-то поменялось?
Offline
#36 2012-10-01 14:32:45
- dimonster
- Member
- Registered: 2012-07-08
- Posts: 1,501
Re: Мультиязычные адреса
Или что-то поменялось?
Ну, тут я могу и ошибаться. Дело в том, что перед конвертацией карта Украины разрезается на области с помощью Osmosis. После этого каждая область конвертируется отдельно. И при конвертации название страны и области указывается вручную в параметрах конвертера: --defaultcountry="Ukraine" --defaultregion="Kharkivska obl."
Это только liosha может точно сказать: переносится ли название страны и области с мультиполигона на города или нет.
А вот с addr:district никакой автоматизации точно нет. Поэтому если есть addr:district в тегах города, то конвертор это учитывает, если нет addr:district, то привязывает к области.
Offline
#37 2012-10-01 17:27:08
- dr&mx
- Member
- From: Saratov
- Registered: 2011-03-04
- Posts: 1,089
Re: Мультиязычные адреса
А для этого тоже есть решение - забить на простой name, а ссылки делать по типу ссылок на wikipedia, т.е. использовать "addr:street=ru:улица Ленина"
addr:street=ru:улица Ленина;en:Lenina street;uk:*;es:*;fr:* и т.д.
существующим правилам не противоречит - множественные значения через точку с запятой
правда тег с пятью десятками значений как-то не привычно выглядит
а этот вариант какие недостатки и достоинства имеет??
Offline
#38 2012-10-01 17:33:28
- liosha
- Member
- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Мультиязычные адреса
а этот вариант какие недостатки и достоинства имеет??
он несовместим с текущей практикой
Offline
#39 2012-10-01 19:30:56
- dr&mx
- Member
- From: Saratov
- Registered: 2011-03-04
- Posts: 1,089
Re: Мультиязычные адреса
практика - чаще всего приспособление, а не созидание
всё течёт, всё изменяется - не моё
а какие достоинства? можно же всесторонне рассмотреть, а не через призму привычек
Offline
#40 2012-10-02 06:12:43
- liosha
- Member
- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Мультиязычные адреса
а какие достоинства? можно же всесторонне рассмотреть
Ну я, например, никаких не вижу
Вместо прямого значения теги начинают содержать непонятную сериализацию. Да ещё и нестандартную.
Лучше уж тогда сразу json писать
Offline
#41 2012-10-02 06:26:53
- freeExec
- Moderator
- From: Ульяновск,Модератор всех слоёв
- Registered: 2012-07-31
- Posts: 8,460
Re: Мультиязычные адреса
Не, всё забить в одну строку это бред, который невозможно будет анализировать глазами, просто он банально не будет помещаться в окошечко, да ещё и высматривать где там точка с запятой.
Что-то мне навикить Белорусскую схему так и не удалось, в чём там принципиальное отличие от отношения улицы с домами ?
Offline
#42 2012-10-02 06:57:56
- dimonster
- Member
- Registered: 2012-07-08
- Posts: 1,501
Re: Мультиязычные адреса
Ну, вроде бы вот это - белорусская схема. http://wiki.openstreetmap.org/wiki/Rela … _Addresses
По крайней мере, вики на неё ссылается.
addr:street=ru:улица Ленина;en:Lenina street;uk:*;es:*;fr:* и т.д.
IMHO, длиннющая строчка из 250 названий на разных языках - неудобно.
Не пойму, почему liosha не нравится предлагаемый патч для osm2mp.pl
По факту на отрезках улиц прописаны названия улиц на разных языках. Отрезки улиц и домики связаны релейшеном.
Берём названия улиц из тегов отрезков улиц - и нет проблем.
Offline
#43 2012-10-02 07:06:10
- freeExec
- Moderator
- From: Ульяновск,Модератор всех слоёв
- Registered: 2012-07-31
- Posts: 8,460
Re: Мультиязычные адреса
Ну первый и очевидный косяк, если на веях количество тегов не совпадает. Допустим не указан какой-то язык, то тогда играет роль с какого вея брать эти данные.
Offline
#44 2012-10-02 07:10:11
- dimonster
- Member
- Registered: 2012-07-08
- Posts: 1,501
Re: Мультиязычные адреса
Конвертору достаточно, чтобы хотя бы на одном вее в тегах было название на нужном языке.
Offline
#45 2012-10-02 07:21:02
- ikz
- Member
- From: Тартария, Набережные Челны
- Registered: 2009-09-18
- Posts: 942
Re: Мультиязычные адреса
dimonster, это "достаточно" грозит переборкой всех веев в отношении, если нужного языка нет. Или только в одном вее, причем заранее неизвестно в каком...
Last edited by ikz (2012-10-02 07:21:19)
Offline
#46 2012-10-02 07:35:41
- andygol
- Moderator
- From: Дніпро
- Registered: 2009-07-31
- Posts: 1,963
- Website
Re: Мультиязычные адреса
Вообще то, если подходить к этому вопросу с точки зрения "нормализации данных" (в терминах баз данных), то все отрезки одной улицы, должны быть собраны в collection, а уже только после этого этот collection должен входить в состав релейшена с адресацией с ролью street. На collection навешивается туева хуча name:xx, которые потом и берутся для названия улицы на нужном языке — в итоге получаем нормальный алгоритм для работы как маперов так и конвертеров, к тому же БД не засирается явно избыточной информацией. Всем профит!
Offline
#47 2012-10-02 07:45:38
- dimonster
- Member
- Registered: 2012-07-08
- Posts: 1,501
Re: Мультиязычные адреса
это "достаточно" грозит переборкой всех веев в отношении, если нужного языка нет.
, вообще-то только тех веев, у которых роль street.
...
for my $member ( @$members ) {
next if !( $member->{role} eq 'street' );
...
Всем профит!
Да. Но для начала нужно всего лишь: 1) убедить всех участников OSM пользоваться только такой схемой адресации и стандартизировать схему. 2) переделать все релейшены в базе OSM и убрать addr:street с домиков, объединив их в релейшены. 3) в редакторах Потлач и ДЖОСМ убрать все инструменты для работы с addr:***, переделав всё на работу с релейшенами.
Offline
#48 2012-10-02 07:46:55
- liosha
- Member
- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Мультиязычные адреса
Релейшены в релейшенах - зло. В эту сторону лучше даже не смотреть.
Offline
#49 2012-10-02 07:55:08
- freeExec
- Moderator
- From: Ульяновск,Модератор всех слоёв
- Registered: 2012-07-31
- Posts: 8,460
Re: Мультиязычные адреса
Жаль, а было бы удобно: Область -> Район -> Поселение -> Село -> Улица -> Дом
Offline
#50 2012-10-02 07:56:08
- ikz
- Member
- From: Тартария, Набережные Челны
- Registered: 2009-09-18
- Posts: 942
Re: Мультиязычные адреса
IMHO достаточно только name:* на отношении street. Все name:* на веях - ф топку. addr:street туда же.
Ботом регулярно приводить улицы и адреса к данному виду.
Минусы: множественные адреса идут лесом. Далеко и надолго.
Offline