Sylvain,
j'ai comparé le téléchargement de la mega-relation n°1857038à partir du menu
Fichier / Télécharger un objet de JOSM.
1. Api officielle http://api.openstreetmap.org/api
2. Api fr http://api.openstreetmap.fr/api
À
chaque fois je démarrais une nouvelle instance de JOSM, sélectionnait
l'Api de téléchargement et sauvegardait ensuite le résultat (fichier
osm). Le logiciel Notepad++ permet de comparer les résultats simplement
en faisant une recherche sur des expressions clés dans les documents.
De
tels tests montrent bien que d'autres facteurs que les règles établies
pour l'extraction interviennent. L'intensité du traffic sur le serveur
peut sans aucun doute
influencer les résultats. Lors d'un de mes tests, la requête a pris 17
minutes sur l'Api officielle et 6 minutes sur l'Api Fr.
Dans tous
les fichiers, je retrouve 3 379 occurences de l'expression "<member
type='way'", information décrite dans les diverses relations. Je
constate ensuite des résultats variables pour le nombre de chemins
extraits. Et aucun des essais n'a permis d'extraire tous les chemins à
partir de cette fonction. Quoique la grande majorité était extraite sur
l'Api Fr.
Api officielle
-----------------------------------------------------
Essai 1
- 181 141 observations
- 2 510 occurences de "<way"
Essai 2
- 169 677 observations
- 2 382 occurences de "<way"
Api Fr
-----------------------------------------------------
Essai 1
- 234 245 observations
- 3 360 occurences de "<way"
Essai 2
- 234 244 observations
- 3 360 occurences de "<way"
Pierre
________________________________
Le mardi 27 mars 2012 22:41:15, Pierre Béland a écrit :
> J'ai comparé le téléchargement dans JOSM à partir de l'Api officielle et le
> site .fr. J'y ai aussi constaté des différences en téléchargeant la
> mega-relation n°1857038.
Tu pourrais
m'indiquer lesquels ?
> Mais plusieurs facteurs peuvent intervenir. Et
> même si nous cochons l'option Télécharger les membres de la relation en
> téléchargeant une méga-relaation, cela ne veut pas dire que tous les
> membres des sous-relations seront également téléchargés.
D'après la documentation de l'api, c'est même normalement pas le cas.
Les membres d'une relation enfant ne devraient pas être renvoyés, c'est la
documentation de l'appel /full :
http://wiki.openstreetmap.org/wiki/API_0.6 :
For a relation, it will return the following:
* The relation itself
* All nodes, ways, and relations that are members of the relation
* Plus all nodes used by ways from the previous step
* The same recursive logic is not applied to relations. This means: If
relation r1 contains way w1 and relation r2, and w1 contains nodes n1 and n2,
and r2 contains node n3, then a "full" request for r1 will give you r1, r2,
w1, n1, and n2. Not n3.
Pour l'instant l'api fr est compatible avec ça (je peux le comprendre, car sur
des maxi grosses relations ça pourrait vraiment faire beaucoup)
> La comparaison des deux fichiers OSM ainsi obtenus a montré un comportement
> différent lors du chargement à partir des deux API. Tandis que sur le
> site français, tous les chemins étaient téléchargés, sur le site
> openstreetmap.org plusieurs chemins membres de sous-relations n'étaient
> pas téléchargés.
Pourtant rien ne devrait être oublié , ni sur l'une ou l'autre API
Peut-être as-tu eu un problème à un moment du téléchargement ?
(il faut dire que cette relation est vraiment énorme et les tests sont dur à
faire)
Mais si on
regarde ce que fait JOSM (dans la console) on voit qu'il commence
par :
GET http://api.openstreetmap.fr/api/0.6/relations?relations=1857038
et ensuite il fait des :
GET http://api.openstreetmap.fr/api/0.6/relation/1982670/full
GET http://api.openstreetmap.fr/api/0.6/relation/1905320/full
pour chaqu'une des relations membres, ce qui devrait, sauf s'il y a un nouveau
niveau de relation, récupérer tous les ways.
Si l'option "télécharger les membres" n'est pas cochée, alors l'appel ne
contient pas le /full et les noeuds des ways ne sont pas récupérés, mais la
liste des ways l'est (ce qui me semble d'ailleurs en contradiction avec le
titre de
l'option qui est donc soit mal traduite, soit mal décrite)
--
sly (sylvain letuffe)
Le mardi 27 mars 2012 23:22:16, sly (sylvain letuffe) a écrit :
> > Mais plusieurs facteurs peuvent intervenir. Et
> > même si nous cochons l'option Télécharger les membres de la relation en
> > téléchargeant une méga-relaation, cela ne veut pas dire que tous les
> > membres des sous-relations seront également téléchargés.
>
> D'après la documentation de l'api, c'est même normalement pas le cas.
> Les membres d'une relation enfant ne devraient pas être renvoyés, c'est la
> documentation de l'appel /full
Je crois que je me suis trompé là, je parlais d'un autre menu (bouton droit
sur une relation -> télécharger les membres) qui n'a pas le même effet que
fichier -> télécharger un objet -> n° de relation + télécharger les membres
Alors
que justement on pourrait s'attendre au même résultat
--
sly (sylvain letuffe)
_______________________________________________
Talk-fr mailing list
Talk-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-fr