Соглашение о наименовании улиц

Да хоть 3-я улица 3-го Строителя или 3-я 8-ми Мартовская улица, если можно определить части речи, есть правила по их расстановки - в чём проблема?

Во-первых, нельзя.
Во-вторых - я привёл примеры. С точки зрения грамматики правильно и так и так, а как на самом деле вы алгоритмами никак не решите.

А, ну да, если есть “переулок александровский (спуск, проезд, тупик)”, почему не быть такому…

luiswoo вы процетировали сообщение о том что можно ввести префикс для статуса, и написали что в нормальных бд так и делается. Собственно на это ваше сообщение я и отвечал.

Ну можно конечно разбирать название по частям речи, но овчина явно не стоит выделки. Воспринимайте в данном случае name как шаблон размещения статусной части. Вы наверное не станете спорить что вырезать кусок названия по совпадению подстрок проще чем разбирать названия по частям речи.

Ах да, забыл. Ололо дублирование данных! Скачек энтропии! Голактико в опасносте :slight_smile:

Нигде.

Кстати, алгоритма способного определить часть речи тоже нет.

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

Возможно, спутал с фигней, которая может фамилии склонять. Значит, ворд определяет части речи только в предложении и со словарем.

И, самое главное, даже это делает далеко не всегда правильно.

Вот такая конструкция – «Улица Лесная садоводство “Строитель”», сразу оговорюсь, слова «садоводство “Строитель”» входят в название улицы. Как правильнее заполнить name, надо ли поставить статусную часть после “Лесная” («Лесная улица садоводство “Строитель”)?, использовать сокращение («Лесная улица СНТ “Строитель”)?

Почему вы так решили?

Такое название на всех многочисленных адресных табличках, в т. ч. на домах, во всех виденных мною документах, так называют улицу её жители, такое название пишут в почтовом адресе, а если кто напишет просто “ул. Лесная”, то почтальон отнесёт письмо совсем в другой район н. п., где имеется Лесная улица.

Или лучше вынести это в addr:suburb=СНТ “Строитель”?

Это скорее всего уточнение в “местной” адресации, т.к. существует улица с аналогичным названием.

Есть и такой тег addr:place

Я полагаю, что если садоводство “Строитель” расположено обособлено, то на полигон садоводства и на точку внутри него нужно ставить name=СНТ “Строитель” + place=allotments, а улицы именовать по принципу highway=residential + name=Лесная улица, если садоводство расположено внутри населённого пункта (place=hamlet/village/town/city), то на улицы внутри садоводства нужно ставить highway=residential + name=Лесная улица + addr:suburb=СНТ “Строитель”, а на дома - building=yes + addr:housenumber=1 + addr:street=Лесная улица + addr:suburb=СНТ “Строитель”.

addr:place используется в тех случаях, когда дом нумеруется не по улице, то есть если мы будем иметь адрес “СНТ “Строитель”, дом 1”. Если дом нумеруется по улице, никакого addr:place быть не может.

Так и сделаю, вернее - буду продолжать так делать.
Немного не по теме, но по “горячим следам” спрошу, place=allotments на полигон обязательно? С ним ни один рендер не показывает название населённого пункта и карта в этом получается бесполезной.

Здесь есть сложность. В СНТ дома часто расположены на именованной улице, а номера порядковые, по СНТ. При этом на практике адрес могут назвать как по улице, так и по СНТ. Чем плохо указывать и addr:street и addr:place?

place=allotments указывает на то, что данный объект расположен вне пределов “обычного” населённого пункта (place=isolated_dwelling/hamlet/village/town/city), но при этом представляет собой самостоятельный объект, имеющий внутреннюю адресацию. Без простановки place=allotments адресация внутри этого объекта не будет работать корректно. Поэтому для работы адресации по таким объектам тег place=allotments обязателен.

Костыль: параллельно с полигоном name=Название+place=allotments рисовать полигон name=Название. Написал авторам Mapnik-а, чтобы исправили ошибку.

Для адресации не важно, рядом с какой улицей дом расположен, важно, какой он имеет адрес. Мне кажется, нередко можно встретить дома, расположенные на одной улице, а адресующиеся по другой. Естественно, в addr:street следует указывать улицу, по которой дом адресуется.

С адресацией по территориям то же самое. Неважно, на какой улице расположен дом, важно, как он адресуется. Если дом имеет адрес “садоводство Солнышко, дом 1”, следует указывать addr:place=садоводство Солнышко+addr:housenumber=1 или addr:place=садоводство Солнышко+addr:street=садоводство Солнышко+addr:housenumber=1, что и будет означать адрес “садоводство Солнышко, дом 1”. А если мы напишем addr:place=садоводство Солнышко+addr:street=Тенистая улица+addr:housenumber=1, то получим противоречивые данные, т. к. комбинация addr:place=садоводство Солнышко+addr:housenumber=1 говорит о том, что дом имеет адрес “садоводство Солнышко, дом 1”, а комбинация addr:street=Тенистая улица+addr:housenumber=1, что дом имеет адрес “садоводство Солнышко, дом 1”, при этом последнее не будет соответствовать действительности, т. к. дом нумеруется по садоводству, а не по улице. И addr:place, и addr:street означают одно и то же - “объект, по которому ведётся адресация”. Соответственно, на одном доме не могут стоять addr:place и addr:street с разными значениями. Тег addr:place используется только в тех случаях, когда дом адресуется не по улице.

А в пределах н. п.? place=suburb? Знаю, что есть тема, но там всё вообще запуталось, а тут Вы мне всё так понятно объясняете :).

(исправил описку)
ИМХО рендер должен в таком случае выдать два адреса. А пользующийся картой в поиске должен найти и “Тенистая 1”, и «СНТ “Солнышко” 1». Иначе нельзя, т. к. оба способа указания адреса используются.

Коттеджные посёлки и садоводства, расположенные в пределах населённого пункта - place=suburb, place=quarter или place=neighbourghood. По поводу того, в каких случаях какое из обозначений следует использовать, имеются определённые разногласия, но общая идеология такова: suburb - большАя часть населённого пункта, quarter - часть поменьше, neighbourhood - самая маленькая часть. В предложении по использованию place=quarter сказано, что если речь идёт о части деревни или небольшого города, то place=quarter может использоваться только в том случае, если существуют более мелкие части, обозначаемые place=neighbourhood. Если таких более мелких частей нет, используется обозначение place=quarter.

Я бы, в общем случае, обозначал полигоны коттеджных посёлков и садоводств, расположенных в пределах населённых пунктов так:
обычное небольшое садоводство (или коттеджный посёлок) - place=neighbourhood
садоводство (или КП), которое можно разбирать на более мелкие части, обозначаемые place=neighbourhood - это place=quarter
весьма крупное садоводство (или КП), внутри которого можно создать более мелкие части place=quarter и/или place=neighbourhood и которое расположено в крупном населённом пункте - place=suburb

Отмечу, что place=suburb рендерерами отображается, place=quarter и place=neighbourhood - нет. При этом, т. к. place=neighbourhood является принятым тегом, его неотображение является ошибкой - по поводу Mapnik-а уже писали.

Насколько я знаю, большинство рендереров и программ работаю с addr:street и не работают с addr:place (addr:place находится в начале пути к широкому признанию). Соответственно, ожидается, что в addr:street в случае заполнения этого поля будет указан правильный/официальный/корректный объект, по которому ведётся адресация. То есть по addr:street=садоводство Солнышко + addr:housenumber=1 или addr:place=садоводство Солнышко + addr:street=садоводство Солнышко + addr:housenumber=1 многие составят правильный адрес “садоводство Солнышко, дом 1” (мы ведь ведём речь именно об объектах, которые адресуются по территории), а вот по addr:place=садоводство Солнышко + addr:street=Тенистая улица + addr:housenumber=1 большинство рендереров и программ составят адрес “Тенистая улица, дом 1” и не составят адрес “садоводство Солнышко, дом 1”, что неправильно. В первую очередь должен восстанавливаться правильный/официальный/корректный адрес.

Поэтому мне кажется, что лучше было бы поступать так: если мы имеем дом, имеющий адрес “садоводство Солнышко, дом 1”, но который часто адресуют как “Тенистая улица, дом 1”, то в качестве основного адреса указываем “садоводство Солнышко, дом 1”, а в качестве альтернативного - “Тенистая улица, дом 1”:
addr:place=садоводство Солнышко + addr:housenumber=1 (либо addr:place=садоводство Солнышко + addr:street=садоводство Солнышко + addr:housenumber=1) +
addr:street2=Тенистая улица + addr:housenumber2=1. как указал AMDmi3, скорее должно быть addr2:street=Тенистая улица + addr2:housenumber=1 .

Только не addr:street2/addr:housenumber2, а addr2:street/addr2:housenumber.

А так, полностью поддерживаю Dinamik:

  • названия СНТ (как и любого другого НП) в названии улицы быть ни в коем случае не должно
  • street и place в одном адресе быть не может

Dinamik, AMDmi3
Нижайше сенькаю, если вы прокомментируете адресацию по микрорайонам в профильной теме ХМАО
Это очень существенный вопрос для региона.