OpenStreetMap Forum

The Free Wiki World Map

You are not logged in.

Announcement

A fix has been applied to the login system for the forums - if you have trouble logging in please contact support@openstreetmap.org with both your forum username and your OpenStreetMap username so we can make sure your accounts are properly linked.

#26 2012-11-07 09:38:43

BushmanK
Member
Registered: 2011-05-03
Posts: 5,106

Re: Эти нужные слова — посёлок и деревня

Sergey Astakhov wrote:
BushmanK wrote:

объединить две строки, хранящиеся в разных полях - нет ничего проще

Сам я тоже против наличия статуса в name для населённых пунктов, но простое объединение споткнётся о ту же проблему что и с улицами   - "Морской посёлок" vs "посёлок Морской" ? wink
IMHO, поэтому лучше записывать в отдельном поле полный вариант (типа full_name).

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

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

В-третьих, раздельное хранение имени собственного и статусной части не противоречит сохранению порядка следования, если стоит задача хранить и его: никто не мешает использовать конструкцию вида official_status:prefix=деревня и official_status:suffix=посёлок, либо что-то вроде official_prefix, official_suffix.

Так что технически не существует препятствий для хранения статусной части отдельно и с сохранением информации о порядке относительно имени собственного. А уж учитывать эту информацию, и если да, то в какой степени - дело конвертера.

Upd.: лично меня немного коробит это самое "official" - официально статусная часть может быть только закреплена, а существует она и без всякой официальщины - это, фактически, части имени, так что, возможно, это должно быть строковым свойством name_suffix и name_prefix.

Last edited by BushmanK (2012-11-07 09:41:28)


"Не умею" не значит "невозможно", "не видел" не значит "не бывает". "Нет проблемы", вероятнее всего, значит, что "нет мозгов".

Offline

#27 2012-11-07 09:47:43

j-wills
Member
From: Russia, Moscow
Registered: 2010-06-01
Posts: 859
Website

Re: Эти нужные слова — посёлок и деревня

dimonster wrote:

Кому понятна, а кому и не очень. Будет потом в навигаторе и "Морской", и "посёлок Морской", и "Морской посёлок", и "пос. Морской". И к каждому привязана часть домов в этом посёлке.

Дык надо привести к единому!

И я сомневаюсь, что в одном районе посёлок Морской и Морской посёлок могут быть двумя разными нас. пунктами

Offline

#28 2012-11-07 10:29:13

chnav
Member
From: Moscow, Russia
Registered: 2010-03-18
Posts: 2,674

Re: Эти нужные слова — посёлок и деревня

BushmanK wrote:

официально статусная часть может быть только закреплена, а существует она и без всякой официальщины - это, фактически, части имени, так что, возможно, это должно быть строковым свойством name_suffix и name_prefix

+100 !!!!!!! К многоязычным name это также подойдет.

Offline

#29 2012-11-07 10:35:42

Antisida
Member
From: Нижний Новгород
Registered: 2011-01-15
Posts: 898

Re: Эти нужные слова — посёлок и деревня

chnav wrote:
BushmanK wrote:

официально статусная часть может быть только закреплена, а существует она и без всякой официальщины - это, фактически, части имени, так что, возможно, это должно быть строковым свойством name_suffix и name_prefix

+100 !!!!!!! К многоязычным name это также подойдет.

"поселок городского типа" - в чистом виде официальный статус и вне "официальщины" сложно его представить

Offline

#30 2012-11-07 10:39:10

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,658

Re: Эти нужные слова — посёлок и деревня

Я проанализировав вопрос в теме упомянутой ранее пришёл к выводу что должно быть только full_name. Это позволяет разобрать такие странные названия которые тем не менее существуют -  посёлок отделения "2-я Пятилетка" совхоза "Красное Знамя".

Offline

#31 2012-11-07 10:41:23

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,658

Re: Эти нужные слова — посёлок и деревня

Или вот ( http://www.regionz.ru/index.php?ds=290912 ):

В состав территорий поселений Аннинского муниципального района входят следующие населенные пункты:
Пугачевского сельского поселения - поселок Центральной усадьбы совхоза "Пугачевский", поселок октябрьского отделения совхоза "Пугачевский", поселок первомайского отделения совхоза "Пугачевский";

Offline

#32 2012-11-07 10:52:09

BushmanK
Member
Registered: 2011-05-03
Posts: 5,106

Re: Эти нужные слова — посёлок и деревня

chnav wrote:
BushmanK wrote:

официально статусная часть может быть только закреплена, а существует она и без всякой официальщины - это, фактически, части имени, так что, возможно, это должно быть строковым свойством name_suffix и name_prefix

+100 !!!!!!! К многоязычным name это также подойдет.

Раз уж нашлись единомышленники...
Такой вариант видится мне разумным по нескольким причинам.

Есть очень много объектов, чье наименование состоит из имени собственного и некой статусной части (поселок, село, затон, овраг, балка, луг, роща ... ). Тащить все это в имя, по уже приводившимся выше причинам - неразумно и вредно. Отбрасывать, в надежде, что потом появится классификация, которая позволила бы это хранить - неоправданная потеря информации. Хотя бы по той причине, что статусная часть далеко не всегда является каким-то официальным признаком, по которому есть или может быть создана система тэгов, и в таком случае, статусная часть просто пропадает.

Скорее, имеет смысл закладывать в схему обозначений возможность сохранить статусную часть в виде строкового свойства, которое не вписывается в какую-либо классификацию (исключая случай, когда классификация для нее все же существует). Такой способ позволит: а) не терять часть названия уже сейчас, б) хранить ее отдельно от имени собственного, не создавая проблем с фильтрацией и обработкой, в) в случае, если это кому-то понадобится в будущем, проанализировать эту часть и присвоить на ее основании и основании других свойств объекта какой-либо новый тэг, если будет создана классификация.

Повторюсь: естественно, пользоваться строковыми свойствами префикса и суффикса названия имеет смысл только тогда, когда более никак нельзя отразить эту часть названия в тэгах.


"Не умею" не значит "невозможно", "не видел" не значит "не бывает". "Нет проблемы", вероятнее всего, значит, что "нет мозгов".

Offline

#33 2012-11-07 11:08:09

Vovanium
Member
Registered: 2009-07-23
Posts: 1,094

Re: Эти нужные слова — посёлок и деревня

Antisida wrote:

Преимущества данной схемы? Недостаток всё тот же: это требует доделки всего  софта.

pumbur wrote:

недавно обсуждалось же, ну.


> ни за что не соглашаться на аргументы типа «это захламляет карту», «это придётся обрезать в конверторе» — задачи решаемые и не такие сложные
> не вводить дополнительных тегов типа name:status для *переноса* статуса туда (допускается дублирование), т. к. это не будет поддержано в 90% случаев

а почему в одном случае «это не будет поддержано в 90% случаев», а в другом — «задачи решаемые и не такие сложные» ?)

Не будет поддержано в 90% в обоих случаях и задачи не такие сложные. Другое дело, что в первом случае это будет воспринимается как некрасивость, которую тот кто желает, сможет исправить. А в другом случае это ошибка, так как не будут различаться одноимённые НП вовсе.

BushmanK wrote:

ни за что не соглашаться на аргументы типа «это захламляет карту», «это придётся обрезать в конверторе» — задачи решаемые и не такие сложные...
не вводить дополнительных тегов типа name:status для *переноса* статуса туда (допускается дублирование), т. к. это не будет поддержано в 90% случаев...

Технологически это верно с точностью до наоборот: объединить две строки, хранящиеся в разных полях - нет ничего проще, а вот распознать и выбросить статусную часть внутри строки названия - тот еще геморрой, именно потому, что все на практике не ограничивается только "деревней" и "поселком".

Этот аргумент будет иметь место, если будет ясно *зачем* что-то отрезать. Как, я думал, из первого сообщения должно быть ясно, статусная часть должна использоваться совместно, как при отображении, так и при поиске. Зачем может потребоваться часть без статуса — как раз совсем не ясно. Разве что для сортировки, но для этого есть sorting_name, и одним убиранием статусной части там не обойтись (нужно ещё, например, номера из начала убирать).

То есть, от всех желающих не ставить статусную часть в name хотелось бы:
— узнать практическую пользу от такого действия, дабы эти аргументы перевесили простое решение;
— почему те же самые аргументы не прокатили с улицами.
Если это нужно лишь для узкого круга технических и научно-исследовательских задач, то именно для этого я предложил дублирование, чтобы это не затрагивало всех остальных, ну или использовать другие используемые теги, типа cladr:suffix.


Мне KekcuHa обещал подарить навигатор. Как жаль, у меня уже есть.

Offline

#34 2012-11-07 11:20:25

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

Re: Эти нужные слова — посёлок и деревня

Выпилить статус если он известен из названия проще чем приклеивать.

for(String status_part:status.split()){
     name = name.replace(status_part, "").trim();
}

Используется 2 тега name и status без status:prefix status:postfix status:somewhereelse, они точно также интернационализируются не меняя схемы получения краткого наименования. Не надо париться с префиксной постфиксной записью и прочей ебаторией. При этом нет проблем определить стаус и фильтрануть по нему или еще какнибудь обработать. Это прокатит для статусной части в начале, конце, середине и вообще незнамо где. И вроде это уже предлагалось не раз.


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

Offline

#35 2012-11-07 11:23:48

Ilis
Member
From: Екатеринбург
Registered: 2009-05-24
Posts: 5,970

Re: Эти нужные слова — посёлок и деревня

j-wills wrote:

Язык русский хорош и тем, какой в что слова последовательности не поставишь предложении в - равно всё сказанного smile суть понятна

Offline

#36 2012-11-07 11:26:28

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

Re: Эти нужные слова — посёлок и деревня

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


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

Offline

#37 2012-11-07 11:27:18

Sergey Astakhov
Member
From: St.Petersburg, Russia
Registered: 2009-11-13
Posts: 5,419

Re: Эти нужные слова — посёлок и деревня

dkiselev wrote:

Выпилить статус если он известен из названия проще чем приклеивать.

for(String status_part:status.split()){
     name = name.replace(status_part, "").trim();
}

А теперь тоже самое в виде патча к стилю мапника для osm.org

Offline

#38 2012-11-07 11:29:59

chnav
Member
From: Moscow, Russia
Registered: 2010-03-18
Posts: 2,674

Re: Эти нужные слова — посёлок и деревня

dkiselev
Осталось заставить мапник убирать статусную часть. Ах, да, мы же не рисуем под рендер... сначала вставить статусные части куда ни попадя, а реальные пользователи пусть трахаются сами. Главное - кошерность базы. Тогда проект надо было назвать OpenStreetDB.

(upd)
упс, опередили

Last edited by chnav (2012-11-07 11:31:40)

Offline

#39 2012-11-07 11:30:02

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

Re: Эти нужные слова — посёлок и деревня

Sergey Astakhov, а зачем? Я еще понимаю что улицы часто бьются на сегменты и длинные названия хреново влазят, но уж блин колхозы можно на мапнике подписывать томами из Льва Николаевича.


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

Offline

#40 2012-11-07 11:31:36

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

Re: Эти нужные слова — посёлок и деревня

В чем простите меня трахотня, если подпись на мапнике будет содержать деревня, поселок, рабочий поселок, поселок городского типа? Трахотня что у нас поиск через жопу работает, нашли блин трахотню.


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

Offline

#41 2012-11-07 11:35:34

Vitalts
Member
From: Estonia
Registered: 2010-12-30
Posts: 1,440

Re: Эти нужные слова — посёлок и деревня

Выпилить статус если он известен из названия проще чем приклеивать.

    for(String status_part:status.split()){
         name = name.replace(status_part, "").trim();
    }

Не все так просто, как кажеться

город Ивангород -> Иван

Offline

#42 2012-11-07 11:36:07

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

Re: Эти нужные слова — посёлок и деревня

И делается это на патчами к стилю мапника, а в виде плагина к осмосису, если уж так уперлось статусную часть с мапника сокращать. Ну или уж признаться всем наконец что name у нас для мапника и для подписей. А имя, которое имя собственное уникальное и все такое, фигачить в full_name, и на него же натравливать обрезалки/прибавлялки статусных частей.


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

Offline

#43 2012-11-07 11:39:15

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

Re: Эти нужные слова — посёлок и деревня

Vitalts wrote:

Выпилить статус если он известен из названия проще чем приклеивать.

    for(String status_part:status.split()){
         name = name.replace(status_part, "").trim();
    }

Не все так просто, как кажеться

город Ивангород -> Иван

Ок попрактикуемся в написании регулярок, добавим требование отсутсвия символов составлющих слова до и после вырезаемой статусной части.


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

Offline

#44 2012-11-07 11:39:49

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

Re: Эти нужные слова — посёлок и деревня

dkiselev wrote:

И делается это на патчами к стилю мапника, а в виде плагина к осмосису, если уж так уперлось статусную часть с мапника сокращать

В тулчейне мапника осмозис не используется.

dkiselev wrote:

Ну или уж признаться всем наконец что name у нас для мапника и для подписей

Это как бы уже не первый год очевидно.
name - это основное отображаемое название

Offline

#45 2012-11-07 11:42:57

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

Re: Эти нужные слова — посёлок и деревня

Либо если не нравятся регулярки

for(String status_part:status.split()){
         name = (" " + name + " ").replace(" " + status_part + " ", "").trim();
    }

За багрепорт спасибо smile


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

Offline

#46 2012-11-07 11:54:49

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

Re: Эти нужные слова — посёлок и деревня

liosha wrote:
dkiselev wrote:

Ну или уж признаться всем наконец что name у нас для мапника и для подписей

Это как бы уже не первый год очевидно.
name - это основное отображаемое название

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


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

Offline

#47 2012-11-07 11:54:58

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 7,011

Re: Эти нужные слова — посёлок и деревня

dkiselev wrote:

Выпилить статус если он известен из названия проще чем приклеивать.

Тольки с падежом-то как потом?
"Посёлок"  03.gif "подсобного хозяйства санатория им. Артёма"

Last edited by wowik (2012-11-07 11:56:53)

Online

#48 2012-11-07 11:56:15

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 7,011

Re: Эти нужные слова — посёлок и деревня

name, fullname, visualname/label, ... чем больше придумаем, тем скорее разойдутся.

Last edited by wowik (2012-11-07 11:59:05)

Online

#49 2012-11-07 12:04:48

esaulenka
Member
From: Москва
Registered: 2010-08-21
Posts: 1,134
Website

Re: Эти нужные слова — посёлок и деревня

wowik wrote:

name, fullname, visualname/label, ... чем больше придумаем, тем скорее разойдутся.

Да-да-да.

И эта... Когда в name будете вносить всю информацию, какую можно высосать из паль... придумать, не забывайте про тех, кто рассматривает карту на экранчике в 2".

Были ж уже вполне разумные рекомендации: там где без статусной части - никуда, ставим (тот же "посёлок подсобного хозяйства ..." или два НП - село и деревня с одним именем на расстоянии километра), в остальных случаях - опускаем.

Offline

#50 2012-11-07 12:05:40

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

Re: Эти нужные слова — посёлок и деревня

А что не так с падежом?

full_name: поселок желтый смайл без зуба в зеленой шапке с красной звездой подсобного хозяйства санатория им. Артёма
status: поселок подсобного хозяйства санатория им. Артёма

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


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

Offline

Board footer

Powered by FluxBB