Bonjour,

Étant toujours à la recherche de la bonne stratégie pour attacher des
identifiants métiers officiels aux infrastructures que je cartographie, les
relations se présentent aujourd'hui à moi dans plusieurs cas.

Un identifiant métier reste une donnée qui est plus stable que
l'identifiant OSM lui-même et peut permettre une identification d'objets
constante dans le temps mais aussi vis à vis de référentiels libérés par
les opérateurs.
L'idée est que ces identifiants ne concernent qu'un objet et un seul (pour
un opérateur donné, voire un type d'objet précisé par d'autres tags
parfois). C'est bien souvent pas le cas sur OSM et c'est à déplorer, on
s'en mordra les doigts un jour.

Fort de ce principe, on doit utiliser des relations pour supporter ces
identifiants lorsque l'infrastructure en question est représentée par
plusieurs primitives OSM (plusieurs bâtiments par exemple, c'est le cas
pour des centrales électriques multi-sites, barrages et autres).
Bien souvent, la prescription incitant à utiliser une relation dépasse le
simple cadre de l'identification mais c'est de toute façon important.

Cependant, parcourir une topologie mêlant objets physiques (noeuds,
chemins) et virtuels (relations) n'est pas aisée.

Prenons l'exemple d'un réseau routier dans lequel certaines départementales
posséderaient plusieurs branches (c'est une hypothèse). Je vais vouloir y
faire du routage, donc récupérer l'identifiant de ces routes pour indiquer
à l'utilisateur final quelles directions prendre (suivez la D12 pendant x
km).

Une fois l'itinéraire calculé, je vais avoir une succession de chemins.
Pour certains on aura un tag ref=* directement sur le chemin, d'autres
seront membres de relations supportant ref=*. Je dois pourtant le retrouver
dans tous les cas et trouver la relation dont un chemin est un membre n'est
pas vraiment facile avec le modèle OSM. Et surtout savoir quand chercher
une relation ou quand ne pas la rechercher est déjà difficile à déterminer
(la présence du tag ref=* sur le chemin ou non... mouai).

Est-ce que des développeurs ont déjà réfléchi à cette question ?

Mon exemple du réseau routier ne colle peut-être pas à la réalité (on
appose des lettres sur les identifiants de routes lorsqu'elles ont
plusieurs branches). J'ai néanmoins un réseau de ce type sous les yeux, qui
ne sera pas disponible sous OSM.

Merci par avance.


*François Lacombe*

francois dot lacombe At telecom-bretagne dot eu
http://www.infos-reseaux.com
_______________________________________________
dev-fr mailing list
dev-fr@openstreetmap.org
https://lists.openstreetmap.org/listinfo/dev-fr

Répondre à