Геокод — это код , который представляет географический объект ( местоположение или объект ). Это уникальный идентификатор объекта, позволяющий отличить его от других в конечном наборе географических объектов. В общем, геокод — это удобочитаемый и короткий идентификатор.
Типичные геокоды и объекты, ими представленные:
AF
для Афганистана или BR
Бразилии ) и его условные обозначения подразделения, такие как коды подразделения AF (например, для провинции Гор ) или коды подразделения BR (например, для штата Амазонас ). .AF-GHO
BR-AM
6vjyngd
в центре Бразилии ) или код OLC (например, ячейка ~0,004 км 258PJ642P+4
в той же точке).70040
представляет собой центральную зону распространения почты в Бразилии).В стандарте ISO 19112:2019 (раздел 3.1.2) вместо геокода принят термин «географический идентификатор», чтобы охватить длинные метки: пространственная привязка в форме метки или кода, идентифицирующего местоположение . Например, для ISO название страны «Китайская Народная Республика» является ярлыком.
Геокоды в основном используются (в основном как атомарные типы данных ) для маркировки , обеспечения целостности данных , геотегирования и пространственной индексации .
В теоретической информатике система геокодирования представляет собой хеш-функцию, сохраняющую локальность .
Есть некоторые общие аспекты многих геокодов (или систем геокодирования), которые можно использовать в качестве критериев классификации:
Набор всех геокодов, используемых в качестве уникальных идентификаторов ячеек полного покрытия географической поверхности (или любой четко определенной области, например страны или океанов), представляет собой систему геокодирования (также называемую схемой геокодирования ). Синтаксис и семантика геокодов также являются компонентами определения системы:
/[A-Z]{2,2}/
, ).Многие синтаксические и семантические характеристики также обобщаются классификацией.
Любой геокод можно преобразовать из формального (и расширенного) выражения географического объекта или наоборот, геокод, преобразованный в объект. Первый называется процессом кодирования , второй — декодированием . Действующими лицами и задействованными процессами, согласно определению OGC , [3] являются:
В приложениях пространственного индексирования геокод также может быть преобразован в удобочитаемое (например, шестнадцатеричное ) и внутреннее (например, двоичное 64-битное целое число без знака ) представление.
Геокоды, такие как коды стран , коды городов и т. д., берутся из таблицы официальных названий и соответствующих официальных кодов и геометрии (обычно многоугольников административных территорий). «Официальный» в контексте контроля и консенсуса, обычно таблица, контролируемая организацией по стандартизации или государственным органом. Итак, наиболее общий случай — это таблица стандартных имен и соответствующих им стандартных кодов (и ее официальной геометрии).
DE
), где каждое административное подразделение первого уровня обозначено второй частью кода ISO 3166-2.Строго говоря, «имя», связанное с геокодом, является топонимом , а таблица (например, топоним в стандартном коде) является ресурсом для разрешения топонима : это процесс связи , обычно выполняемый программным агентом, между топонимом и « однозначный пространственный след одного и того же места». [4] В качестве системы геокодирования может использоваться любая стандартизированная система разрешения топонимов, имеющая коды или закодированные сокращения . Агент «резольвер» в этом контексте также является геокодером .
Иногда имена переводятся в числовые коды, чтобы они были компактными или машиночитаемыми. Поскольку числа в данном случае являются идентификаторами имен, мы можем рассматривать «числовые имена» — так что этот набор кодов будет своего рода «системой стандартных имен».
В контексте геокодирования разделение пространства — это процесс разделения географического пространства на два или более непересекающихся подмножества , в результате чего образуется мозаика подразделений. Каждое подразделение может быть снова разделено рекурсивно , в результате чего образуется иерархическая мозаика.
Когда названия подразделений выражаются в виде кодов, а синтаксис кода можно разложить на отношения родитель-потомок с помощью четко определенной синтаксической схемы, набор геокодов формирует иерархическую систему. Фрагмент геокода (связанный с названием подразделения) может представлять собой аббревиатуру, числовой или буквенно-цифровой код.
Популярным примером является система геокодирования ISO 3166-2 , представляющая названия стран и названия соответствующих административных единиц, разделенные дефисом. Например, это Германия, простой геокод, и ее подразделения (показаны) предназначены для Баден-Вюртемберга, БаварииDE
, ... , DE-BW
Северного Рейна - DE-BY
Вестфалии и т . д. Область действия — это только первый уровень иерархии. Для большего количества уровней существуют другие соглашения, такие как код HASC. [5] [6] Коды HASC являются буквенными, а их фрагменты имеют постоянную длину (2 буквы). Примеры:DE-NW
DE.NW
- Северный Рейн-Вестфалия . Двухуровневый иерархический геокод.DE.NW.CE
- Крайс Косфельд . Трехуровневый иерархический геокод.Два геокода иерархической системы геокодирования с одинаковым префиксом представляют разные части одного и того же местоположения. Например DE.NW.CE
, и DE.NW.BN
представляет собой географически внутренние части страны DE.NW
, общий префикс.
Изменяя критерии подразделения, мы можем получить другие иерархические системы. Например, для гидрологических критериев существует система геокодирования, код гидрологической единицы США (HUC), который представляет собой числовое представление названий бассейнов в иерархической синтаксической схеме (показан первый уровень). Например, HUC 17
является идентификатором « Тихоокеанского бассейна северо-западной Колумбии »; HUC 1706
« Бассейна Нижней Змеи », пространственное подмножество HUC 17
и надмножество 17060102
(«Река Имнаха»).
Вдохновленная классическими буквенно-цифровыми сетками , дискретная глобальная сетка ( DGG ) представляет собой регулярную мозаику , покрывающую всю поверхность Земли (земной шар). Регулярность мозаики определяется использованием ячеек одинаковой формы во всей сетке или «около одной и той же формы и около одной и той же области» в интересующем регионе, например в стране.
Все ячейки сетки имеют идентификатор (идентификатор ячейки DGG), а центр ячейки можно использовать в качестве ссылки для преобразования идентификатора ячейки в географическую точку. Когда компактное, удобочитаемое выражение идентификатора ячейки стандартизируется, оно становится геокодом.
Геокоды разных систем геокодирования могут представлять одно и то же положение на земном шаре, с одинаковой формой и точностью, но различаются длиной строки , цифровым алфавитом, разделителями и т. д. Неглобальные сетки также различаются по области применения и, как правило, геометрически оптимизированы. (избегать дублирования, пробелов или потери единообразия) для местного использования.
Каждая ячейка сетки может быть преобразована в новую локальную сетку в ходе повторяющегося процесса . В проиллюстрированном примере ячейка TQ 2980
является подячейкой TQ 29
, то есть подъячейкой TQ
. Система географических регулярных привязок к сетке является основой иерархической системы геокодирования .
Два геокода в иерархической сетке геокодирования могут использовать правило префикса: геокоды с одинаковым префиксом представляют разные части одного и того же более широкого местоположения . Снова используя иллюстрацию сбоку: TQ 28
и TQ 61
представляет географически внутренние части , TQ
общий префикс.
Иерархический геокод можно разделить на ключи. Geohash — 6vd23gq
это ключ q
ячейки 6vd23g
, то есть ячейка 6vd23
(key g
) и т. д., поцифровых ключей. OLC — 58PJ642P
это ключ 48
ячейки 58PJ64
, то есть ячейки из 58Q8
(key 48
) и так далее, двузначных ключей. В случае OLC после +
разделителя имеется вторая схема ключей: 58PJ642P+48
— это ключ 2
ячейки 58PJ642P+4
. Он использует две ключевые схемы. Некоторые системы геокодирования (например, геометрия S2) также используют начальный префикс с неиерархической ключевой схемой.
В общем, в качестве технического и некомпактного дополнительного представления системы геокодирования (основанные на иерархических сетках) также предлагают возможность выражения идентификатора ячейки с помощью детальной схемы с помощью более длинного пути ключей. Например, Geohash 6vd2
, который представляет собой код base32 , можно расширить до base4 0312312002
, который также представляет собой схему с поразрядными ключами. Геометрически каждая ячейка Geohash представляет собой прямоугольник, который рекуррентно делит пространство на 32 новых прямоугольника, поэтому разделение base4 на 4 является пределом расширения кодирования. [7]
Однородность формы и площади ячеек в сетке может быть важна для других целей, например, для пространственной статистики . Существуют стандартные способы построения сетки, охватывающей весь земной шар с ячейками равной площади, правильной формы и других свойств: Discrete Global Grid System (DGGS) — это серия дискретных глобальных сеток, удовлетворяющих всем стандартизированным требованиям, определенным в 2017 году OGC . [8] Когда удобочитаемые коды, полученные из идентификаторов ячеек DGGS, также стандартизированы, их можно классифицировать как систему геокодирования на основе DGGS .
Существуют также смешанные системы, использующие синтаксическое разделение, где, например, первая часть (префикс кода) представляет собой код имени, а другая часть (суффикс кода) представляет собой код сетки. Пример:
FR-4J.Q2
, где FR
— код имени [9] , а 4J.Q2
— код сети. Семантически Франция является контекстом для получения ее локальной сетки.Для мнемонической связной семантики в приложениях мелкозернистого геокодирования наиболее подходящими являются смешанные решения.
Любая система геокодирования, основанная на регулярной сетке, в целом также является более коротким способом выражения широтной/долготной координаты. Но геокод, содержащий более 6 символов, трудно запомнить. С другой стороны, геокод, основанный на стандартном имени (или сокращении, или полном имени), легче запомнить.
Это говорит о том, что «смешанный код» может решить проблему, уменьшив количество символов, когда имя может использоваться в качестве «контекста» для геокодирования на основе сетки. Например, в книге, где автор говорит: «Все геокоды здесь контекстуализированы по городу главы». В главе о Париже, где все места имеют геохеш с префиксом u09
, этот код можно удалить —. Например, Geohash u09tut
можно свести к tut
, или с помощью явного кода для контекста «FR-Paris tut
». Это возможно только в том случае, если разрешение контекста (например, перевод из «FR-Paris» в префикс u09
) хорошо известно.
Фактически существует методология для иерархических геокодов на основе сетки с неизменяемым размером, где префикс кода описывает более широкую область, которая может быть связана с именем. Таким образом, можно сократить, заменив префикс на соответствующий контекст. Самый обычный контекст – официальное название. Примеры:
Примеры столбца смешанной ссылки значительно проще, чем запоминание столбца кода DGG . Методы различаются, например, OLC можно сократить, удалив первые четыре цифры и добавив подходящую достаточно близкую местность. [10]
Если смешанная ссылка также короткая (9 символов во втором примере) и для ее выражения существует синтаксическое соглашение (предположим CP‑PR~bgxed
), это соглашение создает новую систему геокодирования с именем и сеткой. Это не относится к первому примеру, поскольку, строго говоря, «Кабо-Верде, Прая» не является кодом.
Чтобы быть одновременно системой имен и сеток и смешанным соглашением о ссылках, система должна быть обратимой. Чистые системы имен и сеток, такие как Mapcode , без возможности преобразования их в глобальный код, не являются смешанной ссылкой, поскольку не существует алгоритма для преобразования смешанного геокода в геокод на основе сетки.
Используемые геокоды общего назначения:
Геокоды могут использоваться вместо официальных названий улиц и/или номеров домов , особенно если властям не присвоен адрес данному месту. Их также можно использовать в качестве «альтернативного адреса», если его можно преобразовать в Geo URI . Даже если геокод не является официальным обозначением местоположения, его можно использовать в качестве «местного стандарта», позволяющего домам получать поставки, получать доступ к службам экстренной помощи, регистрироваться для голосования и т. д.
Используемые геокоды в качестве почтовых индексов . Геокод, признанный Всемирным почтовым союзом и принятый страной в качестве «официального почтового индекса» , также является действительным почтовым индексом. Не все почтовые индексы являются географическими, и для некоторых систем почтовых индексов существуют коды, которые не являются геокодами (например, в системе Великобритании ). Образцы, не полный список:
Геокоды, используемые для телефонии или радиовещания:
Используемые геокоды и с определенной областью действия:
Другие геокоды:
Некоторые стандарты и серверы имен включают: ISO 3166, FIPS, INSEE, Geonames, IATA и ICAO .
Также был предложен ряд коммерческих решений: