Клуб API Карт

AdministrativeArea в геокодере

Пост в архиве.

Вопрос следущий: почему для некоторых мест AdministrativeArea выставляется как "Сибирский Федеральный округ", а для многих прочих - в AdministrativeArea приходит название региона?

13 комментариев
Sergey Konstantinov
27 января 2016, 23:59
Например? ФО должен приходить для всех регионов РФ.

в моем случае приходит только для типа other, иногда hydro, для других отсутствует

Sergey Konstantinov
27 января 2016, 23:59
Приведите примеры запросов, пожалуйста.

а можно примеры ответов? http://joxi.ru/whW0UxjKTJCwNbe03Bk

Sergey Konstantinov
27 января 2016, 23:59
Примеры запросов были бы гораздо полезнее :)

[56.11326104210883, 93.33517650793459] - сфо приходит, "Красноярский край" в SubAdministrativeAreaName, тип ответа other


[56.115430963293534, 93.33294491003419] - сфо не приходит,

"Красноярский край" в AdministrativeAreaName, тип ответа house


запрашиваю просто

 

ymaps.geocode(coords, {
    results: 1 }).then(...)


а вот ответ с типом other 

http://joxi.ru/Mxa0U_3JTJDsPhf7ewg

Sergey Konstantinov
27 января 2016, 23:59
Выяснили следующее: если объект входит в административно-территориальное образование уровнем между регионом и городом (например, Сосновоборск административно входит в городской округ Сосновоборск), то в AdministrativeArea будет указан регион, в SubAdministrativeArea - округ. Если же город напрямую подчиняется региону, то в AdministrativeArea будет находиться ФО, в AdministrativeArea - регион. Указать все три единицы в иерархии xAL запрещено, т.к. формат не поддерживает вкладывание SubAdministrativeArea друг в друга.

Т.е. регион, который выбрал пользователь, через геокодер не определить однозначно? :-)

Sergey Konstantinov
27 января 2016, 23:59
Что такое "регион, который выбрал пользователь"?

неправильно сформулировал :-)

под регионом подразумеваю субъект рф, к которому принадлежат те или иные координаты

Sergey Konstantinov
27 января 2016, 23:59
Попадание *координат* в субъект РФ легко определить
http://geocode-maps.yandex.ru/1.x/?geocode=37.619899,55.753676
В ответе обратного геокодера есть все вложенные сущности

Звучит как-то очень не правильно. Нельзя путать и ломать связность (чужих) БД.