[OSM-dev-fr] Osmose - patch - code INSEE dans les relations admin_level=7
Black Myst
Black.myst at free.fr
Mer 13 Juil 23:45:51 BST 2011
Bonjour,
Je continue mon travail de documentation d'Osmose sur le Wiki, et
voila t'y pas que je tombe sur un bug !
Concernant l'analyse des codes INSEE (section Administratif), presque
tous les signalements en région Parisienne sont des faux positifs:
http://osmose.openstreetmap.fr/map/cgi-bin/index.py?zoom=10&lat=48.85677&lon=2.4922&layers=B000000FFFFFFFFFFFFT&item=6040
En fait, les relations d'admin_level=7 contiennent un code INSEE sur 3
chiffres qu'il ne trouve pas dans la base des communes.
En attendant de voir si on peut trouver une source pour ces nouveaux
codes, voila un patch pour exclure les admin_level=7 de l'analyse.
Dans le fichier:
http://osmose.openstreetmap.fr/src/plugins/Administratif_NameINSEE.py
Remplacer la dernière fonction par:
def relation(self, relation, tags):
if tags.get(u"boundary") <> u"administrative":
# Ce n'est pas une relation administrative
return
if tags.get(u"admin_level") <> u"8":
# Seul le niveau 8 contient des INSEE qui nous interresse
# Le niveau 7 contient d'autre code INSEE (sur 3 chiffres)
return
if u"name" not in tags:
# Euh, le message va etre un peu bizarre pour une relation !
return [(800, 0, {})]
if u"ref:INSEE" not in tags:
return
# Cette ligne semble deprecated !
self._code_r.append(tags[u"ref:INSEE"])
return self._insee(tags)
Voila,
Black Myst
PS: Je n'ai pas d'environnement pour faire des tests, c'est donc sans
aucune validation que je te le livre.
Plus d'informations sur la liste de diffusion dev-fr