Une alternative à Google Maps ?
Un peu d’histoire
En 2004, Steve Coast, un informaticien anglais, écœuré par la politique tarifaire de l’agence nationale cartographique britannique, l’Ordnance Survey, qui vend ses données à prix d’or, décide de créer une base de données géographiques, libre et contributive, à l’heure où les premiers smartphones se dotent de GPS de précision acceptable (~ 5 m). Open Street Map est né. Le projet suscite une adhésion immédiate et rencontre un succès inattendu. Les développeurs y voient une sorte d’alternative au « racket » des agences cartographiques nationales, et le niveau technique requis pour contribuer est quasi-nul, ce qui permet à n’importe qui d’alimenter la base, pourvu qu’il soit équipé d’un GPS ou d’un smartphone moderne. Petit à petit, le projet déborde du Royaume-Uni et les premiers volontaires commencent à constituer la carte de l’Europe, puis du monde entier. Ces derniers utilisent plusieurs méthodes : enregistrement de traces terrain, bien sûr, mais aussi « traçage » sur des fonds cartographiques, ou des images aériennes, existantes. En France, par exemple, l’association Open Street Map France négocie avec la DGI, propriétaire du cadastre, le droit de reprendre les planches cadastrales numérisées pour les intégrer à la base. En bientôt quinze ans d’existence, Open Street Map est devenue un acteur majeur de la géographie numérique. Elle n’a pourtant pas acquis la force de frappe de sa cousine Wikipedia. OSM n’emploie pas de salariés, et son budget annuel n’excède pas les 200 000 euros, là où Wikipédia engloutit plus de 30 millions de dollars. Cependant, face aux agences nationales, le projet se targue d’une réactivité et d’une exhaustivité – du moins dans les zones urbaines – que nul ne lui conteste. À tel point que certains futurs référentiels géographiques français, comme la Base d’adresses nationale, ou BAN, seront élaborés en partenariat avec lui.
Licence multi-facette
La première question à se poser avant d’utiliser des données OSM est leur licence : ODbL 1.0. Une licence assez peu connue dans un monde plutôt habitué aux GPL, MIT ou BSD. Retenez que la licence ODbL est assez semblable à la GPL. Vous pouvez utiliser les données OSM en citant la source (par exemple pour créer un plan d’accès), sans contrepartie. Cependant, si vous enrichissez la base (vous y ajoutez la position de magasins), et que vous publiez un produit dérivé (un plan d’accès à ces magasins), alors vous devez reverser le contenu supplémentaire (la position des magasins) dans le pot commun. Naturellement, ces dispositions ne s’appliquent pas si vous gardez vos données en usage interne. Pas de souci, donc, si vous souhaitez vous servir d’OSM comme fond de plan pour visualiser des ressources stratégiques en interne. Mais comment accéder aux données OSM ? Les serveurs qui détiennent la base maître ne sont pas directement interrogeables : ils ne sont conçus que pour enregistrer et traiter les transactions. Il faut donc se tourner vers des serveurs tiers pour obtenir des données. Les plus utilisés – en Europe – sont ceux de l’API dite Overpass, qui est directement disponible sur le site http://openstreetmap. org. Il suffit de sélectionner une zone d’intérêt à l’écran, de choisir l’option Export puis Overpass API. Attention cependant !, Les données OSM ne ressemblent pas du tout à des données géographiques comme les géomaticiens les manipulent habituellement : pas de point, ligne ou polygone avec des tables attributaires, mais un fichier XML (XML, pas GML, donc non compatible avec les formats de l’OGC). Steve Coast n’était pas un géomaticien, mais un informaticien. Il a donc défini un modèle de données générique, avec des nœuds (points), des relations et des labels. Pour intégrer les exports OSM dans un SIG, qui permettra d’en tirer des cartes, il faut utiliser des extensions, extensions qui sont maintenant intégrées à tous les SIG courants, particulièrement à QGis, le SIG Open Source le plus utilisé. On peut aussi utiliser l’ETL FME édité par Safe Software pour réaliser la même opération.API dynamiques
Publier des cartes statiques dérivées de données OSM est une chose. La plupart des développeurs souhaitent cependant intégrer directement des widgets géographiques dynamiques à l’intérieur des pages web, par exemple à l’aide d’API JavaScript. Plusieurs solutions existent : • collecter ses propres données et utiliser une surcouche HTML/JavaScript open source comme Leaflet ou OpenLayers. Cette solution a pour avantage d’être 100 % gratuite, mais nécessite un minimum de compétences en informatique / géomatique ainsi que du suivi, ne serait-ce que pour maintenir la copie de la base de données synchrone avec la base maître ; • uMap (http://umap.openstreetmap.fr) est une API développée par le projet Open Street, Map lui-même permet de créer des cartes dynamiques extrêmement facilement, en choisissant les couches d’intérêt, voire en ajoutant les siennes propres, ainsi que leur représentation. Le service est totalement gratuit, mais ne tourne que sur une douzaine de machines, donc les temps d’accès aux cartes peuvent varier suivant la charge des serveurs. Idéal si vous souhaitez créer des cartes personnalisées sur un site à faible trafic ; • utiliser des API développées par des sociétés spécialisées, comme Mapbox. Cette dernière, située aux États-Unis, a créé une série d’API client léger (JavaScript) ou client lourd (Python, Swift…) impressionnantes par leurs performances (fondées sur des tuiles vectorielles). L’utilisation de ces API est soumise à la possession d’une clef, disponible selon un modèle gratuit/payant semblable à celui de Google Maps. Le seuil de gratuité est fixé à 50 000 vues par mois (50 000 utilisateurs uniques pour la version mobile des API), puis le coût est de 0,5 dollar par paquet indivisible de mille vues – soit 500 $ pour un million de vues mensuelles, là où Google Maps n’en offre que le dizième pour le même prix. MapBox fournit un ensemble de services qui vont bien au-delà des simples API cartographiques : le « géocodage », c’est-à-dire la transformation d’une adresse de type « postale » (20, rue du Bac Paris) en coordonnées géographiques affichables ; le calcul d’itinéraire (guidage d’un point à un autre) et enfin l’affichage de données statistiques géolocalisées. MapBox satisfera la plupart des besoins d’un site web commercial.