Makina Blog

Le blog Makina-corpus

Index géographique : avant le géocodage, le gazetteer


Le géocodage nécessite au préalable d’indexer et de structurer les données. C’est le rôle des gazetteers qui peuvent s’appuyer sur une approche « données » ou sur une approche « logicielle ».

table.Ooda7o { border-collapse: collapse; } table.Ooda7o, table.Ooda7o td, table.Ooda7o th { border: 1px solid black; } table.Ooda7o td, table.Ooda7o th { padding: 2px; }

Cet article est le premier d’une trilogie qui contient également :

Mais qu'est-ce qu'un gazetter ? Un gazetteer est un index de lieux géographiques.

L’index structuré de lieux permet de lier entre elles des entités pour pouvoir ensuite les désambiguïser. Il y a plusieurs réponses possibles à la recherche du terme « Paris », comme la capitale de la France, mais aussi l’arrêt de bus au pied de tour Eiffel de Las Vegas… Ici l’importance relative des deux entités peut nous aider à ordonner les possibilités, mais pas de les désambiguïser. Par contre si l’on recherche « Paris, France » et que l’on sait que « Paris » est une sous-entité de la « France » le doute sur l’objet de la recherche est levé.

https://nominatim.openstreetmap.org/details.php?place_id=17751544

Faire la recherche, ordonner les résultats, les filtrer fait partie du rôle du géocodeur. et pour cela, il doit s’appuyer sur des données.

Une de ces données est la connaissance et la structuration des lieux : le gazetteer. Il a pour rôle d’indexer les lieux et de structurer des données. Il connaît les noms, les noms alternatifs, les entités parentes, les localisations et parfois les emprises. Il peut contenir des données annexes comme la population.

Le rôle du géocodeur est de retrouver les coordonnées géographiques (latitude et longitude) depuis une adresse, un nom de lieu ou de point d’intérêt. Il peut traiter des données approximatives, mal orthographiées ou encore des adresses inexistantes.

Les rues, les adresses, les points d’intérêts ne font pas partie du gazetteer. Ce sont simplement des données connues du géocodeur. Afin de retrouver ces données, il faut les indexer. Il faut donc savoir où elles sont et quelles sont leurs relations avec les lieux. Pour cela, il faut les relier à des lieux qui sont référencés dans le gazetteer.

Avant l’ère numérique, ces gazetteers étaient des dictionnaires listant les lieux et des informations associées, ou bien des index liés à des atlas. Ils étaient constitués soit en parcourant le terrain soit en compilant d’autres sources de données.

Il semble que ce soit les services de recensement américains qui furent les premiers à chercher à numériser le territoire des État-Unis, non pas sous forme géographique mais sous forme de hiérarchie des lieux pour pouvoir les retrouver.

Les précurseurs

Getty Thesaurus of Geographic Names

Le plus ancien gazetteer numérique encore entretenu est le « Getty Thesaurus of Geographic Names ». Il a été créé en 1987 par le centre de recherche Getty en compilant d’autres index déjà disponibles ainsi que des ouvrages papier. Il est maintenu collaborativement et est aujourd’hui diffusé sous licence libre ODC-By 1.0 et contient 900 000 entrées. Les données sont catégorisées et structurées sous forme de hiérarchies multiples. Il peut être exploité comme une base sémantique. Il contient également des données historiques comme d’anciennes civilisations et d’autres planètes. Suivant les bonnes pratiques universitaires, chaque donnée est associée à une source.

Calais, sur Getty

Une partie de la fiche de Calais

GeoName

L’autre grand projet phare de gazetteer libre est GeoName. Ce projet initié en 2005 est aujourd’hui le projet référence. C’est également un projet collaboratif. Il rassemble 12 millions de lieux et est diffusé sous licence CC-BY. Il a été construit par compilation de 350 sources OpenData et par corrections manuelles. Il peut également être exploité comme une base sémantique.

Calais, GeoName

Visualisation et édition de la fiche de Calais dans GeoName

GeoPlanet, Yahoo!

GeoPlanet a été un projet de gazetteer commercial passé par différentes mains de 1998 à 2012. Il a terminé chez Yahoo. Lorsque le projet a été stoppé, les données ont été diffusées librement en CC-BY. Les données sont hiérarchisées mais sans coordonnées géographiques. Ce gazetteer recense 6 millions de lieux.

WOE_ID ISO Name Language PlaceType Parent_ID
12658187 FR Calais FRE LocalAdmin 12597181
12666607 FR Mers-les-Bains FRE LocalAdmin 12597178
12667660 FR Noyelles-sur-Mer FRE LocalAdmin 12597178
20075059 FR La Ciotat FRE LocalAdmin 12597199
12659111 FR Cavalaire-sur-Mer FRE LocalAdmin 12597187
22757781 FR St.-Paul FRE LocalAdmin 12591800
22756765 FR La Trinité FRE LocalAdmin 12591800
12661634 FR Fos-sur-Mer FRE LocalAdmin 12597199
12664290 FR La Seyne-sur-Mer FRE LocalAdmin 12597187
12649285 FR Monacia-d'Aullène FRE LocalAdmin 12597134

Extrait de lignes de GeoPlanet

Les débuts de l’effet de masse

Flickr Shapefiles

En 2011 Flickr diffuse le « Flickr Shapefiles » dans le domaine public. Ce gazetteer est intéressant, car il n’est pas la compilation de données déjà existantes telles que de l’OpenData. Il est construit depuis un grand volume de photos qui sont alors à la disposition de Flickr. Les photos sont à la fois géoréférencées et taguées par les utilisateurs comme étant prises à un certain endroit. « Flickr Shapefiles » est l’extraction des polygones englobant les positions de ces photos taguées comme étant prise au même endroit.

Le résultat est à la fois imprécis et représentatif d’un ressenti du territoire. Cette notion de ressenti du territoire est intéressante lors du géocodage et de la recherche d’une entité.

Ce gazetteer regroupe 300 000 lieux à différents niveaux administratifs, et, contrairement aux précédents, il a l’avantage de définir des polygones.

continents, pays et comtés

Les continents, pays et comtés (départements)

Quattroshapes, Foursquare

En 2013 Foursquare a publié en CC-BY un gazetteer nommé Quattroshapes. Il compile une cinquantaine de sources de données OpenData et inclut GeoNames, GeoPlanet et Flickr Shapefiles. Mais il utilise aussi les données sur les lieux collectés par Foursquare. Foursquare était une application de type média social où l’on pouvait signaler que l’on était dans un lieu. Pour la petite histoire, oui, oui, Foursquare existe toujours, mais sous d’autres formes.

Le nom de Quattroshapes vient de l’algorithme Alphashape qui est utilisé pour dessiner un polygone concave autour d’un ensemble de points. Il y a eu également un Betashapes inspiré de Flickr Shapefiles qui était une expérimentation pour produire des polygones depuis le gazetteer non géoréférencé GeoPlanet et à l'aide de données d’OpenStreetMap.

Who's On First, Mapzen

La tentative la plus récente de construire un gazetteer est Who's On First. Lancé en 2015 par Mapzen, qui a depuis fermé, le projet continue à vivre. Il est construit par la compilation de 340 jeux de donnes OpenData et par l’intégration des gazetteers précédents : Getty Thesaurus of Geographic Names, GeoPlanet, GeoNames et Quattroshapes. Les données sont maintenues collaborativement sur GitHub. Il semble que SnapChat soit aujourd’hui le principal contributeur. Il est sous licence CC-Zero. Ce gazetteer contient des données polygonales hiérarchisées et sourcées.

De la construction et de la maintenance de gazetteers

La construction est essentiellement faite par compilation de sources déjà existantes. Cela implique de fusionner et de dé-dupliquer ce qui se trouve dans plusieurs sources. Vient ensuite la phase de maintenance qui se fait par ajout de nouvelles sources de données ou par la mise à jour de données déjà présentes. Cette mise à jour est parfois en bonne partie manuelle, ce qui ne la rend pas aisée.

Du blanchiment de licence

La compilation fusionne des données aux conditions d’utilisation hétéroclites. Le problème des licences de ces données est « contourné » par la référence à la source pour chaque entité. Le gazetteer formant une nouvelle base de données, dispose de sa propre licence. Elle ne porte en fait que sur la base de données comme un tout. Mais pas sur chacune des données qui sont contenues qui restent sous leurs propres licences. Voir le droit sui generis des bases de données.

Les données sont donc sous des licences diverses dont on peut même perdre la trace suite aux différentes fusions et héritages entre générations de gazetteers.

Du gazetteer « données » au gazetteer « logiciel »

Une autre approche pour construire un gazetteer est de créer un logiciel de compilation des données capable de mettre à jour les données du gazetteer quand les données sources changent. Les corrections sont alors faites dans les jeux de données source et non plus dans la version compilée. Cette approche réduit les problèmes de maintenance des données dans le gazetteer, qui divergeraient des données d’origine.

Nominatim

Nominatim est à la fois un gazetteer et un géocodeur. Il est capable de structurer et hiérarchiser les données contenues dans OpenStreetMap. C’est un projet communautaire de l’écosystème d’OpenStreetMap. Des exports de la base de données de Nominatim sont disponibles, ils contiennent notamment le gazetteer dans un format interne.

OSM Names, MapTiler

OSM Names est un projet qui construit un gazetteer similaire à GeoNames depuis le contenu d’OpenStreetMap. Les données sont hiérarchisées et définies par des bounding box à la place de simples points. Il se base pour cela sur Nominatim. Les données produites contiennent 24 millions de lieux et de rues et sont également directement disponibles au téléchargement. Il s'agit un projet libre poussé par MapTiler.

name alternative_names importance county state west south east north wikidata
Chéry-Chartreuve 0,5920219 Soissons France 3.579843 49.228636 3.636270 49.277446 Q849196
Lugano Luganas, Лугано 0,5920120 Circolo di Sonvico Switzerland 8.952028 46.005010 8.952028 46.005010 Q7024
Lucy-le-Bocage 0,5920120 Château-Thierry France 3.254881 49.039438 3.296159 49.072146 Q872192
Gergny 0,5920120 Vervins France 3.917673 49.907684 3.943101 49.960136 Q430223
Fossoy 0,5920120 Château-Thierry France 3.463007 49.014171 3.500788 49.070833 Q843101
Fontenelle-en-Brie 0,5920120 Château-Thierry France 3.466610 48.902999 3.529140 48.942190 Q850398
Berthenicourt 0,5920120 Saint-Quentin France 3.351779 49.765877 3.394157 49.791786 Q849788
Ramicourt 0,5920021 Saint-Quentin France 3.314899 49.945107 3.353115 49.977181 Q868224
Montbéliard 몽벨리아르, モンベリアル, มงเบลยาร, Monbeljaras, مونتبلیر, مونتبليار, Манбэльяр, 蒙贝利亚尔 0,5920021 Montbéliard France 6.741893 47.490634 6.824730 47.543053 Q154715

Extrait de lignes et de colonnes d'OSM Names, 23 colonnes en tout sont présentes dans les données d'origines

Cosmogony, Kisio Digital et Qwant

Cosmogony est un outil d’extraction et de hiérarchisation des données d’OpenStreetMap pour générer le gazetteer. Le projet ne propose par contre que le logiciel et non des données prêtes à l’emploi. C’est un projet développé par Kisio Digital et Qwant. Il permet de produire une hiérarchie de polygones.

Conclusion

Vue d’ensemble

Vue d’ensemble des liens entres les données et les gazetteers

On retrouve donc aujourd’hui deux voies pour construire et maintenir des gazetteers libres :

  • D’une part par la compilation de sources de données OpenData pouvant elles-mêmes être des gazetteers. Leur maintenance se révèle compliquée.

  • D’autre part des logiciels d’extraction de gazetteers depuis OpenStreetMap. Les mises à jour et la correction se font alors dans OpenStreetMap dont le gazetteer n’est plus qu’un sous-produit. Ces logiciels d’extraction sont plus difficiles à produire. Le résultat est également plus cohérent au niveau de la licence des données car provenant quasi exclusivement d’OpenStreetMap.

Vous avez des données géographiques à indexer ? Vous voulez voir ce que l’on a déjà pu faire sur le sujet, comme le projet GéoTopia pour le CNRS ? Parlons-en.

Formations associées

Formations SIG / Cartographie

Formation Leaflet

À distance (FOAD) Du 1er au 2 juillet 2024

Voir la formation

Actualités en lien

Image
SIG_tuiles_vecto
03/07/2020

Web mapping : comparaison des serveurs de tuiles vectorielles depuis Postgres / PostGIS

Un ensemble de serveurs de tuiles vectorielles basés sur la fonction ST_AsMVT() de PostGIS sont disponibles. Makina Corpus vous propose un tour d’horizon des spécificités des différentes solutions.

Voir l'article
10/10/2019

Géocodeur : la théorie

Le géocodage consiste à assigner des coordonnées latitude et longitude à une adresse en la comparant à des adresses de références. Il s'agit donc de normaliser l’adresse puis de faire une corrélation avec la base de référence. Nous introduisons ici les approches possibles pour ces deux étapes du traitement.

Voir l'article
10/10/2019

Les logiciels et API pour géocoder

On compare ici les principaux services en ligne et logiciels libres de géocodage du point de vue des fonctionnalités offertes, fonctionnements internes et bases d’adresses utilisées.

Voir l'article

Inscription à la newsletter

Nous vous avons convaincus