Jour #1 – La requête élémentaire

La requête élémentaire est constituée de deux instructions :

1/ La première instruction sélectionne dans la base de données OSM (ou plutôt dans une copie) un lot de données. Voici sa syntaxe :

node, way ou rel : le type d'élément recherché

entre [ ] : un ou plusieurs filtres sur les tags

entre ( ) : d'autres types de filtres

Toute instruction se termine par un point-virgule.

Les autres types de filtres sont souvent des filtres géographiques, comme {{bbox}} qui décrit la zone visible sur la carte sur Overpass Turbo. Nous en verrons d'autres.

La seconde instruction consiste à retourner ce lot de données comme résultat de la requête Overpass. Il s'agit de l'action 'out' dont nous verrons quelques variantes.

Par exemple, la requête suivante retourne les arrêts de bus avec un abri. L'instruction de sélection combine deux filtres sur les tags (les 2 conditions doivent être remplies) et un filtre géographique, qui conserve les données se trouvant dans la zone visible sur la carte.

node
[highway=bus_stop]
[shelter=yes]
({{bbox}});
out;

Un filtre sur les tags peut ne contenir que la clef : sont retournés tous les éléments pour lequel ce tag est défini, quelle que soit sa valeur :

node
[highway=bus_stop]
[shelter]
({{bbox}});
out;

Si on ajoute un point d'exclamation avant la clef, seuls les éléments pour lesquels ce tag n'est pas défini sont retournés :

node
[highway=bus_stop]
[!shelter]
({{bbox}});
out;

Exercices

Modifier la requête pour trouver les arrêts de bus accessibles aux personnes à mobilité réduite (PMRs).

Modifier la requête pour trouver les arrêts de bus sans information sur leur accessibilité aux PMRs.

Écrire une requête qui retourne les parkings à vélo de type arceaux (documentation : https://wiki.openstreetmap.org/wiki/FR:Tag:amenity=bicycle_parking)

© CC-by-sa Carto’Cité