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

Когда делается Street (в простом случае, без двойных номеров), на зданиях останется только addr:housenumber, без addr:streetname? Или addr:streetname заменяется на is_in?

однозначно дайте посмотреть на эталонную улицу где сделано так как надо.

можешь пример привезти? что-то я подзавис…

имхо, бот НЕ ДОЛЖЕН удалять или заменять на что-то addr:street
эта схема адресации утверждена в вики используется в ОСМ не только в России

не исключено, что какие-нибудь турки/греки/болгары конвертируют карту РФ для себя и подобные замены порушат им всю адресацию

Оставлять дом без названия улицы пока будем считать слишком жестким вариантом :slight_smile: пока оставляй. Получается на доме: и номер дома, и название улицы, и членство в отношении street с ролью house.

Это где столько улиц?

Какая разница, одинаковые уровни, или нет? Какой прок от того, что какой-нибудь горный аул и Санкт-Петербург будут одним уровнем?

Keyword: стопицот.

Ок, 1. как должны обозначаться роли для: хутора, сельсовета, ЗАТО, аула и ещё кучи национальных названий?
2. Как предлагается в этой куче ролей разбираться парсеру адресов?
Верифицируемость? Допустим, я (строю из себя простого начинающего маппера) взял, включил свой родной дом (с address=house) в релейшн города, естественно, прощёлкав улицу, с ролью house, ведь по инструкции они должны совпадать. Как проверка выяснит отсутствие звена?

А почему они должны быть разными уровнями? Или горный аул является частью Петербурга?

А какой нужен прок? Это схема адресации же. А с ее точки зрения они на одном уровне - “населенный пункт”.

Vovanium, приведи почтовые адреса, посидим, разложим и увидим. Но на первый взгляд ничего изобретать не надо. И даже для случая с сельсоветом никто не мешает вписать сельсовет в строку name - name=“Ирекле(Ильбяковское с мо)”.
Парсер просто знает, что адресация идет от мелкого к крупному и цепочка street-town-village-… или наличие одиночного адреса house с группе с suburb и locality должно вызывать вопросы.

wildMan, для этого и нужны виртуальные группы, чтобы не требовалось включать 100500 членов. Сгруппировать по 500 улиц и включить в city всего 201 адресную группу.

liosha, а во что мне собирать комплекса?

Это как? Какие виртуальные группы?

Alexandr Zeinalov, Hind, возьмёте Провинциала третьим?

Все мне в этой схеме нравиться, кроме “number=xxx - в каком теге находятся номера домов. По умолчанию addr:housenumber”, потому что умолчание всяду придется заменить на уникальный для каждой улицы тег.

И еще хотелось бы еще тэг для краткого названия типа и полного (полное - улица, краткое ул.) а в поле name писать только имя без префиксов.

Решил пояснить почему имя тэга придется делать уникальным:

Вот смотрите идет проспект 1 в нем номера домов именуются тэгом addr:housenumber
Перпендикулярно ему идет улица 1 положим что номера домов по ней также лежат в addr:housenumber
Теперь мы дошли до углового дома на углу проспект 1 - улица 1 которому надо задать 2 адреса
Указываем улице 1 тег для номеров домов addr:housenumber2
Дальше натыкаемся на улицу 2 которая идет под углом и пересекает проспект 1 и улицу 1
Для домов на углах этих улиц вводим addr:housenumber2

Пока схема требует уникальные number=xxx для всех пересекающихся улиц.
Теперь представим как это будет реализовываться:
Т.к. в городе как правило нет четкого деления на “вертикальные” и “горизонтальные” для всех улиц то тэги для number=xxx народ будет придумывать на ходу и наконец мы доберемся до случая когда у нас пересекутся 2 улицы с не стандартным number=xxx и придется переделать нумерацию по всем домам по одной из этих улиц.

Рано или поздно пользователям надоест выдумывать теги для number=xxx и их начнут делать уникальными для каждой улицы.

UPD: Пока писал это сообщение еще раз подумал над этой схемой - в принципе она может жить и число тэгов номеров домов будет осмысленным но если кто то будет следить за этим в рамках города и переодически ему придется переписывать номера целой кучи домов.

Получается, единственная схема, не требующая “лишних” отношений для домов с несколькими номерами - это включение номера дома в имя роли в отношении улицы, типа addr:housenumber=“10/2 к1 с2”
Хотя это само по себе костыль.

Не надо пихать имя тэга в значение другого тэга! И что делать с двумя номерами - уже давно придумали.

Перечитай вопрос: я не говорю, что они болжны быть разными уровнями, я спрашиваю, в чём смысл нумерации этих уровней? От них как-то зависит формирование адреса?
Просто номера здесь — вещь в себе, которая ниоткуда не берётся и ни на что не влияет. Поэтому смысла держать их в базе я не вижу.

Постараюсь еще раз описать все предложенные варианты

I. Самая очевидная схема:
addr:housenumber, addr:street
addr:housenumber2, addr:street2
addr:housenumber3, addr:street3
Дом включается в 3 отношения вместе с кусками соответствующих улиц.
Номер дома по каждой улице присваивается сопоставлением тэгов name отношения type=street и addr:streetХ.
Плюсы: самая простая схема для редактирования.
Минусы:

  1. непродвинутый конвертер по всем улицам проставит одинаковый номер дома

II. Белорусская схема выглядит посимпатичнее.
Для дома заполняется только тэг addr:housenumber.
Дом включается в 1 отношение type=street вместе с кусками улицы, для остальных адресов создаются отдельные отношения type=address, в которые включаются
-дом
-отношение type=street улицы
-указывается тэг addr:housenumber
Минусы:

  1. сложность редактирования микрорайонов с корпусами - для каждого дома надо создавать отдельные отношения, вместо того чтобы выделить все дома и одним махом запихнуть в общее отношение
  2. повышенное количество отношений
  3. конвертерам необходимо разбирать отношения type=address после отношений type=street.

III. Схема ikz-а
Если есть две независимых одновременных адресации для домов указываются
addr:housenumber
addr:streetnumber
Дом включается в отношения вместе с кусками соответствующих улиц, районов
В отношениях добавляется тэг addr:house=addr:housenumber, addr:house=addr:streetnumber, …, указывающий, какой тэг номера дома использовать с данной улицей, районом.
Для случаев, когда у дома три и более адресов, для 3-го, 4-го … адресов создаются отдельные отношения type=address, в которые включаются
-дом
-отношение type=street улицы
-указывается тэг addr:housenumber/addr:streetnumber
Минусы:

  1. непродвинутый конвертер по всем улицам проставит одинаковый номер дома
  2. неочевидность тэга addr:house
    Плюсы:
  3. меньшее количество отношений по сравнению с белорусской схемой

IV. Схема ViVish-а
Для каждого дополнительного адреса создается новый контур дома поверх существующего.
Каждый контур включается в отношение type=street соответствующей улицы
Минусы:

  1. сложность редактирования микрорайонов с корпусами - каждый дом надо обрисовать по несколько раз, сложность выбора правильного контура из нескольких для соответствующего отношения
  2. повышенное количество контуров приведет к тормозам навигаторов
    Плюс: единственная универсальная схема адресации

UPD:
V. Схема dimuzz-а
Для домов указывается только addr:housenumber для рендера.
Дом включается в 3 отношения type=street вместе с кусками соответствующих улиц.
Роль дома в этих отношениях равна номеру дома (или включает его).
Плюсы:

  1. самая простая схема для конвертера
  2. минимальный объем данных
    Минусы:
  3. сложность редактирования микрорайонов с корпусами - каждый дом надо добавлять в отношение поочередно со своей уникальной ролью
  4. непродвинутый конвертер по всем улицам проставит одинаковый номер дома
  5. невозможно задать дому какие-либо тэги кроме addr:housenumber независимо для каждой улицы

Голосуем!

UPD: схему ikz-а переправил на оригинал.
UPD: схему ikz-а исправил еще раз и еще раз.

Все 4 плохие. По крайней мере, если у дома несколько адресов, для каждого следует создать отношение типа address. Если номер из одного адреса поставить на контур, то получается, что он как бы принадлежит и всем остальным адресам, т. к. он оказывается в цепочке отношений.

Все 4 плохие. По крайней мере, если у дома несколько адресов, для каждого следует создать отношение типа address. Если номер из одного адреса поставить на контур, то получается, что он как бы принадлежит и всем остальным адресам, т. к. он оказывается в цепочке отношений.

p. s. И уберите, наконец, из адреса слово HOUSE! Номера не только дома имеют.