Національна класифікація "admin_level"

Треба поновлювати дискусію. На сьгогдні здається схема, запропонована Землемером підтримується більшістю. Якщо так, то можна поновити голосування.

а можна дати посилання чи цитату, щоб не промотувати назад кілька сторінок обговорення?

см здесь

Народ, насчёт admin_level наметился косячок:
http://www.navikey.ru/vanilla/discussion/comment/3953/#Comment_3953

Поэтому предлагаю немножко изменить классификацию камрада Землемера:
1 - N/A
2 - государственная граница (ISO 3166-1)
3 - N/A
4 - Автономная республика Крым (АРК), области, города с особым статусом Киев и Севастополь (ISO 3166-2)
(Не хотелось бы путать понятия “область” и “населённый пункт”)
5 - N/A
6 - города областного подчинения, районы АРК, районы области, районы в городах с особым статусом Киев и Севастополь
(опять путаница понятий “город” и “район области”)
7 - границы районов в городах областного значения (если есть), местных советов, не описанных на предыдущих уровнях (городские, поселковые и сельские советы)
(опять же, границы районов в городах и границы сельсоветов - это разные вещи)
8 - границы населенных пунктов, не описанных на предыдущих уровнях (единственный уровень, где допускается не полное покрытие территории более высокого уровня)
(этот уровень можно использовать для любых населённых пунктов. Или не использовать, но подразумевать :-), ограничившись полигонами place)
9 - Вот на этот уровень я предлагаю поместить границы административных районов в городах.
и 10 - N/A

А Київ і не входить в Київську область. Він уже є inner’ом області в OSM. Аналогічно на кадастровій карті.
Формально є її центром, але можливо центром скоро стане місто Ірпінь. Є такі пропозиції.
Аналогічно Харків не входить в Харківський район, хоча є його центром.
http://w1.c1.rada.gov.ua/pls/z7502/A004MV?rdat1=26.02.2013&rf7571=32067
Жоден з облцентрів не входить до жодного з районів області.
А suburb у нас - історичні назви місцевостей міст, а не райони міст.

Ну а как тогда быть с привязкой населённых пунктов (полигонов place) к районам и областям?

Ну, вот, к примеру, какое-то село (полигон place) в каком-то районе Харьковской области находится в составе сельсовета (admin_level=7), который входит в Такой-то район (admin_level=6) Харьковской области (admin_level=4).
Тут вроде всё логично: село привяжется к сельсовету Такому-то в Таком-то районе Харьковской области.

А возьмём Харьков. Его полигон place=city входит в полигон с тем же названием и границами и admin_level=6, при этом входит аж в несколько полигонов собственных административных районов с admin_level=7 (Ленинский, Дзержинский, Октябрьский и др. )
И как он привяжется? Будет город Харьков в Дзержинском районе Харькова?

Ми, до речі, ще минулу пропозицію не прийняли. А якщо в конвертері знову якісь проблеми, то спочатку варто спробувати підфіксити сам конвертер :slight_smile:

Якщо place дублює якийсь з admin_level-ів, то прийдеться його ігнорувати.

Ну, если игнорировать place, то к какому полигону и с каким admin_level привязывать улицы?

до того, якому place по імені відповідає :slight_smile: складно, але це наслідок відділення place від admin_level. Взагалі цікаво, чи в РФ не так само роблять

Ну, вот улица попадает в полигон с admin_level=7, который внутри admin_level=6. К чему её привязывать?

Мне кажется, что всё то, что можно обозначить place, было бы логично обозначить admin_level=8. А административные районы в городах лучше обозначать admin_level=9.

Вчера перечитывал ссылочку пр административно-территориальное устройство Украины. Много ругался. Много думал. Кое-чего переосмыслил. Кое в чём я был не прав.
Но схему Землемера, скорее всего, придётся переделать: http://forum.openstreetmap.org/viewtopic.php?pid=316596#p316596

Поясняю свои мысли:
Разбивка территории Украины на полигоны с разным admin_level нужна не только для обозначения границ областей и районов, но и для привязки населённых пунктов к соответствующим областям, районам, сельсоветам, республике Крым и т.д. При этом должно быть чётко ясно и понятно, какой полигон является областью, какой полигон является населённым пунктом, а какой полигон является административным районом внутри населённого пункта. Поэтому нельзя допускать ситуации когда населённый пункт водном случае будет на 6 уровне, в другом случае на 8 уровне, а в третьем случае на 4 уровне.

Тем не менее, разные населённые пункты имеют разный уровень подчинения. Киев и Севастополь не подчиняются никому (они на самом верху). Харьков принадлежит своей области, но не принадлежит Харьковскому району. Город Богодухов принадлежит Богодуховскому району, который в свою очередь, принадлежит Харьковской области.
Вот эта сложноподчинённость и завела меня в тупик. Но потом я понял: всё просто! Принадлежность населённого пункта определяется его вхождением внутрь полигонов соответствующих уровней. Если населённый пункт не принадлежит окружающему его полигону, то надо просто “вырезать” территорию населённого пункта из полигона района (указать роль inner в релейшене границ района). К примеру, город Изюм вырезаем из полигона Изюмского района.

Таким образом, административный уровень населённого пункта (а также районов, областей, сельсоветов) определяется не через admin_level его границ (у всех НП он равен 8), а через количество вложенных полигонов более высокого уровня, в которые он входит.
К примеру, Киев входит только в полигон границ Украины - уровень 1.
Киевская область тоже входит только в полигон границ Украины - тоже уровень 1.
Харьков входит в полигон границы Украины и полигон Харьковской области - уровень 2
Изюм входит в полигон границы Украины и полигон Харьковской области - уровень 2
Изюмский район входит в полигон Украины и в полигон Харьковской области - уровень 2
Богодухов входит в полигон Богодуховского района, полигон Харьковской области и полигон Украины - уровень 3.

Ну и ещё посмотрите на классификацию admin_level в других странах:
http://wiki.openstreetmap.org/wiki/Tag:boundary%3Dadministrative#10_admin_level_values_for_specific_countries

везде на 8 левеле висят населённые пункты. Хоть столицы, хоть деревеньки - у всех 8 уровень.
А на 9-ом уровне висят внутригородские админ. районы.

Берлін (relation: 62422) - admin_level=4
Москва (relation: 102269) - admin_level=4
Київ (relation: 421866) - admin_level=4

Карта в тему: http://www.itoworld.com/map/2

Ну а как мне конфиг для конвертера прописать? Как конвертору отличать область от населённого пункта (у обоих 4 уровень). Как отличить район в области от района в областном центре (6 уровень)?

Москва и Московская область — одного уровня субъекты. Их отличать не требуется.
Москва admin_level=4 это не нп, собственно говоря. НП все внутри, которые есть.
Киев admin_level=4 аналогично.

А що це вона кордони показує тільки коли на лінії тег стоїть, а відношення не враховує?
наприклад кордон Волині і Львівщини від Польщі йде по річці Буг. Я admin_level тег з лінії річки видалив і додав річку у відношення областей/районів. А також кордони районів немають тегів, усе у відношеннях прописано.

Точно… внизу пише:

Неудачные примеры.
Берлин в Германии. И у немцев другая система уровней.
Москва в России, а там не используют admin_level для привязки НП к областям и районам. Вся привязка у них через addr:region, addr:district и др. Только недавно Льоша добавил в свой конвертер возможность привязки НП по вхождению в полигон района или области.
Киев в Украине, где классификация admin_level ещё не принята сообществом на 100%.

Приклади Берліну і Москви вказують не те, що узагальнення “в других странах… Хоть столицы, хоть деревеньки - у всех 8 уровень.” невірне.
В вікі це все написано, тільки треба читати уважніше

Як правильно конвертувати треба запитувати не тут, а в гілці конвертора

Ми колись вже піднімали цю тему. Особисто, я тегував міські адмін-райони place=city_district.

Враховуючи, що admin_level не відображає однозначно сутності (район, міський район, міська рада, сільрада), було б доречно розширити список значень тегу place в умовах України. а admin_level нехай і далі наслідує ієрархію КОАТУУ.