Mieux intégrer OSM dans uMap?

uMap existe en particulier pour permettre à chacun de créer des cartes subjectives, contenant des données n’ayant pas leur place dans OSM (où nichent et meurent les hérissons, pollution mondiale en temps réel, les types de pastoralisme dans le monde, les rassemblements pour les 5 ans des gilets jaunes…).

Mais c’est aussi un formidable moyen pour attirer des gens vers OSM l’air de rien (on en parlait récemment au NEC avec @vinber, qui mettait en avant la confusion pour certains nouveaux utilisateurs entre uMap et OSM).

Depuis quelque temps, on se pose la question de comment améliorer ces ponts entre uMap (je fais ma carte dans mon coin) et OSM (je contribue pour tout le monde).

Quelques idées, déjà, pour améliorer l’utilisation des données OSM dans uMap:

  • intégrer le wizard overpass dans uMap (pour créer facilement un calque avec les bars de ma commune, plutôt que de les entrer de nouveau à la main)
  • pourquoi pas, pouvoir cliquer sur la carte pour importer une feature dans umap (je clique sur un bâtiment pour importer sa forme et tous les tags)
  • avoir un modèle de popup qui affiche de manière standardisée et avenante les données du schéma OSM

Mais pourquoi pas aussi dans un deuxième temps, soyons fous, renvoyer vers OSM, par exemple en permettant de contribuer en retour des changements sur un objet OSM importé dans uMap…

Mais commençons par ce qui semble le plus simple et le plus utile: avoir une popup de type « OSM » qui saurait comment afficher des données importées depuis OSM, par exemple en affichant:

  • le type de feature (boulangerie, piscine, etc.)
  • son nom (« La Mie câline »)
  • son adresse
  • ses horaires
  • un lien vers le site, un numéro de tél, etc.
  • un lien vers Panoramax ?

Ça semble relativement simple, sauf pour un point: comment, de façon générique et multilingue, décrire dans la popup l’objet que l’on va afficher à partir d’un tag OSM (shop=bakery par exemple) ?

  • est-ce qu’on écrit « Boulangerie » ? Dans ce cas, d’où vient la traduction shop=bakery => Boulangerie, Panificio
  • est-ce qu’on affiche une icône de pain ? Et dans ce cas, d’où vient l’icône ? Sachant que chaque instance de uMap a son propre set d’icônes, qui ne contient pas forcément une boulangerie… et pas forcément sous ce terme !

Est-ce que ça serait l’occasion d’avoir une API, agnostique de uMap, qui permettrait de servir des icônes en fonction des tags OSM ? Est-ce que ça existe déjà ?

Un exemple de ce qu’on a en tête.

Avec un objet OSM ayant shop=bakery, on pourrait taper sur cette URL pour avoir une icône adaptée: https://icon-api.osm.fr/osmic/shop=bakery.svg

Ou, si on veut connaître toutes les icônes et avoir leurs libellés traduits, on taperait sur quelque chose comme: https://iconapi.osm.fr/osmic/fr.json, qui renverrait un JSON du genre:

[
    {
        url: "https://icon-api.osm.fr/shop=bakery.svg",
        name: "Boulangerie",
    },
    {
        url: "https://icon-api.osm.fr/shop=butcher.svg",
        name: "Boucherie",
    },
    …
]

L’idée n’est évidemment pas de refaire un set d’icônes mais de rendre disponible via une mini-API (probablement statique) ceux qui existent déjà. Par exemple osmic et/ou maki.

Ça vous évoque quoi ? :slight_smile:

@davidbgk et Yohan

2 Likes

en vrac pas que sur les icônes :

  • cela évoque des choses que nous avions fait autour de mapcontrib et d’interrogations sur la traduction, les icônes, mais aussi des choses avec diverses api dont des choses en lien avec iD. pour rappel mapcontrib vient de l’idée de faire des thématiques de contributions à OSM avec la « même » facilité qu’avec umap pour faire des cartes perso,
  • je trouve que le wizard overpass fait pour gogocarto est vraiment chouette. Le processus d’édition OSM a été creusé un peu également,
  • avez vous discuté avec @_PanierAvide qui a déja eu à creuser plusieurs cas similaires, je pense aussi à @overflorian pour les diverses plateformes careste ouvert, projet du mois, …
  • intéressé par en rediscuter aussi en direct

je continue du vrac et je me dis :

  • ne faut-il pas davantage capitaliser sur ce qu’il se fait en terme de récupération de données osm et de contributions OSM, la plupart ayant été fait avec des bouts de ficelles ou complètement bénévoles
  • creuser donc les bonnes pratiques sur ces aspects récupération et contribution
  • j’imagine que cela n’entre pas tout cela dans le champs du boulot pour umap, peut-être creuser donc aussi le fait d’aller chercher de l’argent pour cela et ne pas le faire seulement dans les interstices temporels

Salut,

Comme d’habitude j’aime bien ces idées pour créer sur la base d’osm des services concurrents aux GAFAM.

Ça semble relativement simple

J’ai dû rater une étape car moi ça me parait pas simple ! :sweat_smile: Notamment comment tu choisis le type d’éléments qui sont cliquables ? Tu as parlé des shop mais quoi d’autre ? Les usages de umap sont très nombreux, un utilisateur pourrait avoir envie de cliquer sur tous les objets.

comment, de façon générique et multilingue, décrire dans la popup l’objet que l’on va afficher à partir d’un tag OSM

Je me demande si OsmApp n’a pas déjà fait ce boulot, au moins pour le français, et aussi pour les icônes.

On pourrait commencer avec un tout petit sous-ensemble qui serait enrichi progressivement par la communauté au gré des besoins/usages ?

On avait réfléchi à quelque chose comme ça quand on a commencé à bosser sur BANCO. On voulait avoir pour chaque type de commerce :

  • les tags OSM qui permettent de dire que c’est ce type de commerce (par exemple shop=butcher)
  • le nom en français (boucherie) et une courte description (Un magasin vendant de la viande ou des produits à base de viande)
  • les tags OSM pertinents à afficher dans une popup (par exemple delivery sur un restau ou diet:halal sur une boucherie)
    • avec la manière de les formatter pour l’affichage utilisateur (par exemple un lien pour le site web / regrouper les chiffres 2 par 2 dans une numéro de tel / transformer yes/no en qqch de pertinent / etc)
  • les tags OSM à éditer et quel type de formulaire d’édition pour chaque (un preset)
  • le lien vers la doc, si possible en français
  • quelques autres trucs

Notre idée de base était d’utiliser les data items pour ça : il y a déjà quelques unes de ces infos renseignables par ce biais, dont l’icône. Voire par exemple shop=butcher - OpenStreetMap Wiki
Mais dans la pratique, on a vite abandonné devant le manque de maturité des data items :frowning: :sob:

Par contre, pour le besoin que tu décris, je pense que tu peux développer qqch d’assez efficace en parsant les presets d’iD : ils sont dans un format pratique avec une structure prédictible, en utilisant principalement des icônes maki et temaki.
Par exemple l’icône de la boucherie aura une entrée « shop/butcher ». À défaut, tu peux te rabattre sur l’icône proposée pour l’entrée « shop ».

Ces presets sont de plus en plus utilisés dans des projets tiers (en plus d’ID) donc c’est déjà assez complet, il y a moyen que ça suffise à couvrir ton besoin.

2 Likes

Tu sais si c’est un développement custom ou c’est le même qu’overpass-turbo (disponible ici: GitHub - tyrasd/overpass-wizard: 💫 Human friendly way to generate Overpass API queries) ?

comme cela je ne sais pas mais je peux demander à @Seballot est-il vraiment ici :slight_smile:

voici une capture d’écran sinon

Toujours partant pour une petite démo si tu veux !

OK merci, à première vue, ce n’est pas le wizzard d’overpass turbo! Oui, une démo ne serait pas du luxe :stuck_out_tongue:

Bonjour a tous,

Je parle pas le francais, donc je vais écrire en anglais.

I totally understand the usecase, which is why I started MapComplete a while back: https://mapcomplete.org

It has many layers which have specific questions depending on the type of object.

Si tu avais traduit ton texte avec DeepL (une fois) cela aurait évité que ceux qui ne comprennent pas ou qui le comprennent mal (comme moi) soyons obligés de le traduire x fois

If you had translated your text with DeepL (only once) it would have avoided that those who do not understand or who misunderstand it (like me) are obliged to translate it x times.

Voici la traduction de ton texte avec DeepL :
Je comprends tout à fait le cas d’utilisation, c’est pourquoi j’ai commencé MapComplete il y a quelques temps : https://mapcomplete.org

Il y a plusieurs calques qui ont des questions spécifiques en fonction du type d’objet.