addr:housenumber hamlet et relation

Bonjour,

Je commence doucement à toucher au relations pour l’ajout des numéros de maison, avec les relations associatedstreet.
Mais comment fait-on pour les maisons ayant des numéros et qui font partie d’un lieu-dit ? Dans ce cas, il n’y a pas de rue.

J’ai tenté de créer un relation associatedstreet avec le noeud du hamlet ayant pour role street, mais le validateur de josm n’est pas très content.
Qu’elle est la meilleure solution ? Une relation associatedhamlet ? autre chose ?

Deux solutions,

Créer la relation associatedhamlet. Dans le principe, rien ne l’empêche.
Mais il est préférable de le documenter ensuite, dans le wiki par exemple [1], et ouvrir un ticket pour proposer l’ajustement du validator JOSM

Ne pas utiliser le schéma avec une relation et s’en tenir à “addr:hamlet = …” pour chaque noeud adresse, qui lui est documenté dans le wiki [2]

Sinon, la page de discussion du wiki suivante [3] parle du même cas de figure que toi.
Il y a une réponse de MarcusWolschon (à l’origine du schéma) qui donne une précision sur le sens que lui voit dans le rôle associated street.
Elle est orientée “calcul d’itinéraire”(ce qui correspond bien à un de ses dadas) :

“Actually you would just use no street-name at all (the nearest street=way with “highway”-tag is used and in rural areas there are not many streets) or an associatedStreet-relation (does not need a street-name). So…is there a problem?”

Il n’y a pas de rue nommée, mais il doit y avoir de la voirie qui dessert l’adresse.
Et c’est ce segment de voirie qui peut prendre le rôle associated street, même s’il ne porte pas de nom

C’est pas idiot. En poussant la logique plus loin, il n’y aurait plus qu’à rattacher seulement les segments de voirie concernés au noeud du hameau dans la fameuse relation associatedhamlet que tu évoques, pour aboutir à une adresse complète.
Mais ce genre de relations en cascade est parfois (pour ne pas dire souvent) mal digéré par certains outils.

En résumé, en conclusion, si tu es joueur, tu peux partir sur un schéma incluant des relations.
Ou rester sur l’indication de addr:hamlet pour chaque noeud adresse [2]

[1] à la suite de cette section par exemple :
http://wiki.openstreetmap.org/wiki/Proposed_features/House_numbers/Karlsruhe_Schema#Associating_a_series_of_house-numbers_with_a_street

[2] http://wiki.openstreetmap.org/wiki/Key:addr

[2] http://wiki.openstreetmap.org/wiki/Talk:Proposed_features/House_numbers/Karlsruhe_Schema#Hamlets.2FLocalities_without_street_names

Et dans ce cas, les diverses logiciels peuvent tout de même retrouver toute la hiérarchie N° de maison → Lieu-dit → commune, pour reconstituer l’adresse complète ?

“divers logiciels” se résume à Nominatim, le principal logiciel libre de géolocalisation basé sur le schéma de données OSM (http://wiki.openstreetmap.org/wiki/FR:Nominatim). La liste des tags pris en compte se trouve ici (http://wiki.openstreetmap.org/wiki/Nominatim/Development_overview) (peut-être que cette doc est obsolète. Dans l’idéal, il faudrait vérifier dans le code mais je reconnais que ça n’est pas facile).

Il y a surtout Nominatim, mais il y a aussi les cartes pour appareils mobiles (Garmin, Android) qui proposent parfois des fonctions de recherche d’adresses.

Certains outils de contrôle qualité des adresses (OSM Inspector) font déjà délibérément l’impasse sur l’approche par relation. Je crains que ce soit la même chose pour les logiciels … au moins dans un premier temps.

Pour ton cas, la solution la plus sûre (à l’heure actuelle) reste d’ajouter une balise addr:hamlet pour chaque noeud adresse.

Bon, j’ai fait plusieurs essais, relation, addr:hamlet, et dans aucun cas nominatim n’est capable de me retrouver un numéro de maison. Ça passe uniquement avec le nom du lieu-dit seul.

Il y a d’ailleurs un point que je ne comprends pas vraiment :

Si je fais une recherche sur le lieu-dit “le piteau”, la “chaine” saute la commune pour faire hamlet->nantes.
En revanche, si je fais une recherche sur une rue appartenant à ce lieu-dit, ça fonctionne :
Impasse du clos

Il y a une raison à cela, ou bien c’est un bug de nominatim ?

Pour l’absence de la commune parente, j’ai trouvé : Les tags “place=village” et “place=hamlet” sont au même niveau hiérarchique dans Nominatim.

C’est bof bof…