You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#26 2010-02-26 08:17:24

Komяpa
Member
From: Minsk
Registered: 2009-04-14
Posts: 1,323
Website

Re: Обсуждаем способы задать адресацию

liosha wrote:

Адресация с помощью релейшенов - это имхо утопия.
Во всяком случае, пока.
Слишком уж ненадёжная это штука.

В чём именно проявляется их ненадёжность?


world processing is what we do.
[OSMF BY Team] [http://komzpa.net/] [jabber: komzpa@gmail.com] [mobile/SMS: +375257407159]

Offline

#27 2010-02-26 08:25:58

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Обсуждаем способы задать адресацию

В том, что рушатся от любого чиха.
И чем больше их будет, тем чаще будут рушиться.

Offline

#28 2010-02-26 08:27:43

ikz
Member
From: Тартария, Набережные Челны
Registered: 2009-09-18
Posts: 942

Re: Обсуждаем способы задать адресацию

Вопрос то в том, что cladr:code еще более ненадёжен и неустойчив. И решение вопросов адресации с помощью средств для этого не предназначенных еще большая утопия.

Offline

#29 2010-02-26 08:30:37

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Обсуждаем способы задать адресацию

Ну это ты зря, cladr:code гораздо надёжнее релейшенов.
Хотя проблем у него полно: неуниверсально и привязано к внешней базе

Offline

#30 2010-02-26 08:45:13

ikz
Member
From: Тартария, Набережные Челны
Registered: 2009-09-18
Posts: 942

Re: Обсуждаем способы задать адресацию

Хм.
При отрисовке зданий я часто копирую теги или дублирую все здание целиком. Представим, что скопировали теги со здания, привязанного по кладр-коду к соседней улице. Отвлеклись, а потом забыли поправить адресную информацию. Первая проблема - здание оказалось привязано к соседней улице и эта ситуация не валидируется! Только ручная проверка соответствия кладр-кода!
Вариант второй - в аналогичной ситуации (копирование тегов) исправили addr:street и addr:housenumber, но забыли исправить cladr:code. И это опять ничем не валидируется! Опять вручную проверять код.

В случае релейшенов такой фигни не будет. При копировании тегов или дублировании здание не попадет ни в один релейшен улицы и при простом клике на нем уже будет видно, включено ли оно в какой-либо адресный релейшен. А при выборе релейшена подсветятся здания включенные в него и будут прекрасно видны пропущенные и посторонние полигоны.

Offline

#31 2010-02-26 12:25:06

coolkaas
Member
From: RU, Penza
Registered: 2009-05-28
Posts: 2,391

Re: Обсуждаем способы задать адресацию

Моя мечта -- это отношение street с названием улицы и прочими кладрами (на отношении), сборка безымянных ways в нём с ролью street, и сборка всех домов с ролью address. А на доме только номер.
И главная получается улица, уровень А6. Я даже выше сейчас не смотрю (по белорусской схеме), нам тут бы к согласию прийти!
На самом деле такая схема нижнего уровня достаточно вандало-устойчива. Да и поправить какие вновь-прибывшие дома -- не большая проблема.
Довести логику до конечных исполнителей очень просто: есть ящик, спереди написано: "ул. Мира", выдвигаешь его, там лежат дома (точнее, бумажки со ссылкой на реальный дом), берёшь дом, там его номер. И да, is_in тут пригодится, если не считать обратной связью вверх само участие дома в отношении. (хотя мне не очень нравиться и is_in, как вручную проставляемый тег и дублирующий участие в отношении -- потенциальны коллизии вида: дом в отношении, is_in'а нет; и наоборот). И всё.
Если сообщество придёт к некоему соглашению, то навязывать эту схему всем.))
У меня хоть и мало домов нарисовано (зато свои, родные, гпсом все собранные), дак никакого желания особого объединять их во что-то нет -- не мотивируется как-то из-за как раз раздрая с "единственным и неповторимым" способом их объединения. А еще есть collection для улиц и для многих он лучший и почти все им пользуются. А у меня вот street -- ну куда это годится? Разнообразие это всё.. И на каждом отрезке название улицы.. и ОНО же! на доме еще до кучи. Что бы не забыть, если что))))
Так что, это хорошо, что старая проблема в очередной раз вскрылась. Давайте продолжать?))

Offline

#32 2010-02-26 12:35:05

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Обсуждаем способы задать адресацию

Лично мне белорусская схема не понравилась - слишком уж заумно и неестественно. a3, a6...
Если уж браться за адресацию, надо сначала вообще с уровнями определиться, а потом пытаться привязывать эти уровни друг к другу.

Offline

#33 2010-02-26 13:09:20

ikz
Member
From: Тартария, Набережные Челны
Registered: 2009-09-18
Posts: 942

Re: Обсуждаем способы задать адресацию

В почтовом адресе шесть уровней: страна, регион, район, НП, улица, дом+квартира. Индекс не рассматриваю, поскольку у одной улицы может быть несколько индексов и у нескольких улиц может быть один индекс. Индекс это, фактически, код почтового отделения.

На начальном этапе достаточно определиться с уровнем объединяющим улицы с домами. Следующие этапы проще.

Offline

#34 2010-02-26 13:10:16

shadowjack
Member
Registered: 2008-05-05
Posts: 439

Re: Обсуждаем способы задать адресацию

Я тоже за адресацию с помощью отношений. Предлагаю обсудить схему им. Котяры (вернее, им. Michael_D).

Last edited by shadowjack (2010-02-26 17:08:48)

Offline

#35 2010-02-26 13:21:27

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Обсуждаем способы задать адресацию

Ну, для начала, я не согласен, что уровней шесть - на мой взгляд их три  smile

Кроме того, объединить дома в релейшен улицы - это самое простое, что можно придумать.
Релейшены такие уже есть:
http://wiki.openstreetmap.org/wiki/Rela … sed/Street
http://wiki.openstreetmap.org/wiki/Rela … ptional.29
Так что тут особо и обсуждать нечего. А вот дальше-то что?  smile

Offline

#36 2010-02-26 13:25:27

dkiselev
Member
Registered: 2010-02-09
Posts: 3,364

Re: Обсуждаем способы задать адресацию

Я хоть за какую-то единую схему адресации.


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#37 2010-02-26 13:36:07

ikz
Member
From: Тартария, Набережные Челны
Registered: 2009-09-18
Posts: 942

Re: Обсуждаем способы задать адресацию

Релейшен не решает только одну проблему - двойную-тройную адресацию.
И хотя с челнинским вариантом адресации особых проблем нет (я могу создать два релейшена - для улицы и для комплекса), есть проблемы с угловыми домами, где дому надо указывать два разных номера для разных улиц.

liosha, а какие три уровня? IMHO, даже если исключить страну, останется еще 5...
associatedStreet может включать только один вей в роли street, что не есть хорошо.

Offline

#38 2010-02-26 13:40:32

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Обсуждаем способы задать адресацию

Основных уровня три:
1. Страна
2. Адрес населённого пункта внутри страны
3. Адрес владения/дома внутри населённого пункта.
можно добавить 4. Адрес внутри владения/дома, но это вроде уже не наш вопрос.

Все остальные "уровни" - это скорее группировки, их может и не быть, или у них может быть слишком много вариаций, чтобы их все учитывать в общей схеме.

Offline

#39 2010-02-26 14:04:11

ikz
Member
From: Тартария, Набережные Челны
Registered: 2009-09-18
Posts: 942

Re: Обсуждаем способы задать адресацию

релейшен address никем пока не забит, так что можно взять street за основу и расписать свои пожелания.

liosha, в принципе согласен. Можно обойтись и тремя уровнями. Хотя пять выглядело бы более естественно.
По пункту 4 я думал вписывать на точки подъездов тег rooms=xx-xxx. И если бы какой из конвертеров смог бы это использовать - указывал бы путь до подъезда. Но включать это в адресацию смысла нет никакого.

Мои пожелания к релейшену (дополнительно к тому, что есть в street):
- возможность указать, в каком теге хранится адрес дома;
- возможность указать, что тег name не должен использоваться для адресации.

Offline

#40 2010-02-26 14:13:40

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Обсуждаем способы задать адресацию

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

Offline

#41 2010-02-26 15:00:51

Aleksandr Dezhin
Member
From: Msk
Registered: 2008-05-25
Posts: 2,109
Website

Re: Обсуждаем способы задать адресацию

Мне кажется нет никакого смысла собирать прям все в релейшны а-ля РБ. Для площадных объектов вполне можно использовать попадание в этот площадной объект, нежели дублировать это попадание в бесполезных релейшнах. Ну а улицы, конечно надо собирать.


[ Проверка границ и НП | Дампы | Валидатор рек | Кое-что ещё ]
- Нет! Не надо пытаться. Делай. Или не делай. Не надо пытаться. (c) Йода

Offline

#42 2010-02-26 15:55:10

ikz
Member
From: Тартария, Набережные Челны
Registered: 2009-09-18
Posts: 942

Re: Обсуждаем способы задать адресацию

IMHO тремя уровнями иерархии не обойтись. Ведь надо, чтобы было все по человечески и легко проверяемо.
Возникают вопросы к "адрес НП внутри страны" - сколько НП будет в таком релейшене? Как его проверять? Как его поддерживать?
Аналогично и по "адрес владения/дома внутри НП" - сколько там домов внутри той же Москвы? Размер такого релейшена трудно представить...

Таки 5 уровней более приемлемо и контролируемо.
Дома собираются в улицы, улицы в НП, НП в районы/ГО, районы/ГО в регионы, регионы в страну. Объем одного релейшена на каждом уровне не сильно большой и вполне поддается проверке и модификации.
Разберу на своем доме (Челны - ГО, поэтому отнес к уровню 3):
(1) дом 2 по бульвару 60 лет Октября, (3) в г.Наб.Челны, (4) в РТ, (5) в России.
или
(1) дом 7/09 [в 7ом комплексе], (2) в Новом городе, (3) в г.Наб.Челны, (4) в РТ, (5) в России.
Такая схема позволит получать полный адрес объекта последовательным соединением полей name (кроме дома, где вместо name берется addr:housenumber/addr:streetnumber или еще какой number).

Offline

#43 2010-02-26 16:13:24

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Обсуждаем способы задать адресацию

Во-первых, три уровня - это _базовые_ уровни. Они есть всегда и без них не обойтись.
Иногда их достаточно трёх: Россия, г. Зеленоград, к100.
Иногда гораздо больше: в адрес _могут_ при необходимости включаться и регион, и муниципальный район, и сельсовет, и городской район, и улицы, и микрорайоны, и ещё фиг знает что. Но всегда половина адреса будет описывать НП внутри страны, а другая половина - дом внутри НП.

Во-вторых, не надо смешивать адресацию (НП) с административным делением (ГО). Это совершенно разные и слабо связанные вещи.
И не надо упираться в релейшены, на них свет клином не сошёлся. Первична задача, а не средства.  smile

Offline

#44 2010-02-26 17:15:42

ImmortAlex
Member
From: Novosibirsk, Russia
Registered: 2010-01-08
Posts: 194

Re: Обсуждаем способы задать адресацию

Ну вот вы сразу круто спорить взялись, с количеством уровней... Щас все испортите smile Давайте сперва про улицы с домами договоримся?
Взять тот же street, добавить (хотя бы по варианту ikz) возможность включить один дом в два отношения...

Offline

#45 2010-02-26 17:45:54

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,950

Re: Обсуждаем способы задать адресацию

ImmortAlex wrote:

возможность включить один дом в два отношения...

А номера как указывать?

Offline

#46 2010-02-26 18:05:14

physiocrat
Member
Registered: 2009-12-23
Posts: 49

Re: Обсуждаем способы задать адресацию

Я сначала хотел настроить бота на релейшены, но, во-первых, это сложнее, а во-вторых создает конфликт человек - робот.
Робот не совершенен, и поэтому позволять ему править за человеком рискованно. Настроить его на внесение/исправление техничесокй информации - вполне нормально.

ikz wrote:

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

Предполагается, что кладр-код периодически проверяется ботом на соответствие тэгу addr:street.

ikz wrote:

Сквозная нумерация домов по городу с объединением домов в комплекса. Например 2/09 (2ой комплекс), 56/14 (56ой комплекс).
С тем же самым "Московский проспект, 159" 95% людей разведут руками, но на 30/18 укажут, если уж не сам дом, то направление на него однозначно.

По правде говоря, не уловил, в чем принципиальная особенность. И в Москве таких домов предостаточно. Да хотя бы взять те же угловые здания.
Во всех этих случаях вариант адресации по кладр-коду реализуем. Можно н/р указывать

addr:street=Московский проспект
addr:housenumber=159
addr:street2=56-й комплекс
addr:housenumber2=14
addr:street3=Набережные Челны
addr:housenumber3=56/14
...

Это, конечно, пока только предложение.
2-й вариант предложил ViVish на форуме Покетгиса: обводить в таких случаях контуры зданий несколько раз и указывать для каждого контура свой адрес. ИМХО, довольно топорный вариант, но зато работает уже сейчас без переделки конвертеров.

Offline

#47 2010-02-26 18:13:42

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,950

Re: Обсуждаем способы задать адресацию

physiocrat wrote:

addr:street3
addr:housenumber3

Не хотеть такого. Это то же самое, что жестко захардкодить элементы массива в отдельные переменные. Думаю, многие программисты со мной согласятся. :3

Offline

#48 2010-02-26 18:24:30

ikz
Member
From: Тартария, Набережные Челны
Registered: 2009-09-18
Posts: 942

Re: Обсуждаем способы задать адресацию

liosha, ну я то взял за основу почтовый адрес, в котором идет (почти) именно такое разделение.

Еще один интересный момент. Кол-во уровней нужно только в том случае, если делать единственный, универсальный релейшен для любого уровня иерархии. Минус в том, что такой релейшен будет перегруженным, сложным для составления и валидации.

Есть предложение сделать несколько различных релейшенов для разных целей:
streetaddress для сбора домов в улицы; districtaddress для сбора в районы; settlementaddress для сбора в НП; regionaddress для региона. Момент в том, что disctrictaddress и settlementaddress можно включать друг в друга в любой последовательности, что дает любой уровень иерархии.

Фактически же, у нас есть уже несколько используемых релейшенов, которые легко можно приспособить под адресацию для уровней начиная с районов. Достаточно вспомнить, что вся Россия собрана в collection "Административное деление России", в котором есть ссылки на все регионы. Такие же collection с районами есть по многим регионам, осталось в районах собрать collection с НП, а в НП - с улицами. Промежуточных collection можно собрать сколько угодно. Так что достаточно решить во что и как собирать улицы с домами smile

ПыСы. А в collection можно добавить необязательный тег postal_name и при разворачивании цепочки у нас выстроится полный адрес.

Offline

#49 2010-02-26 18:55:07

Komяpa
Member
From: Minsk
Registered: 2009-04-14
Posts: 1,323
Website

Re: Обсуждаем способы задать адресацию

Hind wrote:
ImmortAlex wrote:

возможность включить один дом в два отношения...

А номера как указывать?

В случае нашей схемы - на контуре дома оставляется только информация для рендерера (типа address:housenumber=107/38)
На отдельные адреса делаются релейшены, в которых пишется адрес и в который включается контур.
Дальше каждый из этих релейшенов идёт своим путём, как отдельный объект.


world processing is what we do.
[OSMF BY Team] [http://komzpa.net/] [jabber: komzpa@gmail.com] [mobile/SMS: +375257407159]

Offline

#50 2010-02-26 19:08:01

coolkaas
Member
From: RU, Penza
Registered: 2009-05-28
Posts: 2,391

Re: Обсуждаем способы задать адресацию

(про нижнюю часть иерархии: улица-дом)
Да, единственная накладка -- это двойные адреса. На вскидку хочется тогда вытащить с дома номер *как-то* в само отношение street, а на доме оставить только buildig=yes. Но это слишком нереально))

"addr:street3, addr:housenumber3" -- тоже весьма пугает..

Остаётся не очень прочувствованная мной Котярная схема с отношениями И на адреса, в которые (как-то?) включается контур дома. Котяра, с какой ролью сам билдинг включается в отношение адреса?

Offline

Board footer

Powered by FluxBB