<html><body><div style="color:#000; background-color:#fff; font-family:Courier New, courier, monaco, monospace, sans-serif;font-size:10pt"><font face="Arial" size="2"><b><span style="font-weight:bold;">> De :</span></b> Jean-Claude Repetto <jrepetto@free.fr><b><span style="font-weight: bold;"></span></b></font><br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>Bonsoir,<br><br>Salut Jean Claude,<br><br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>Ton outil est très intéressant.<br><br>Merci !<br><br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>Si j'ai bien compris, il analyse les fichiers "minute diff" (qui sont<br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>disponibles à partir du 12/9/2012), et :<br><br>En gros c est ca mais a quelques details pres.<br>
Il y a deux parties : l executable qui est charge de recuperer et gerer les minutes diffs<br>
les modules de sorties ( dont l outil de suivi des objets ) qui
effectuent des traitements sur les minutes diffs fournies par l exe<br>
<div><br>
</div>
<div class="yui_3_7_2_16_1352141155761_235" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">L executable peut etre configure de differentes facons pour lire les minutes diff:</div>
<div class="yui_3_7_2_16_1352141155761_244" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">_ Soit il part de la derniere minute diff dispo sur www.openstreetmap.org ( start_policy avec valeur current)</div>
<div class="yui_3_7_2_16_1352141155761_247" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">_ Soit il part de la derniere minute diff qu il a analyse ( start_policy avec valeur stored )</div>
<div class="yui_3_7_2_16_1352141155761_277" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">_
Soit il part d une minute diff specifiee par l utilisateur (
start_policy avec valeur user_defined , numero de minute diff defini par
start_sequence_number )</div>
<div class="yui_3_7_2_16_1352141155761_238 yui_3_7_2_16_1352141155761_295" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;"><br></div><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>Pourquoi les "minute diff" ne sont-elles pas disponibles avant le 12/9 ?<br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>
Est-ce lié au changement de licence ?<br>
<br>Les minutes diff sont recuperees par defaut sur <a href="http://planet.openstreetmap.org/replication/minute/">http://planet.openstreetmap.org/replication/minute/</a> qui contient les minutes diffs a partir du 12/09 ( date du changement de licence ).
<div class="yui_3_7_2_16_1352141155761_238 yui_3_7_2_16_1352141155761_300" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">Avec l option de configuration replication_domain tu peux indiquer une autre URL de ton choix:</div>
<div class="yui_3_7_2_16_1352141155761_238 yui_3_7_2_16_1352141155761_320" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">_ par exemple <a href="http://planet.openstreetmap.org/replication/minute/">http://planet.openstreetmap.org/replication/minute/</a> pour utiliser les minutes diff francaises.</div>
<div class="yui_3_7_2_16_1352141155761_238" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">_ Si tu veux utiliser les minutes diff de la periode de redaction il faut utiliser <a href="http://planet.openstreetmap.org/redaction-period/minute-replicate/">http://planet.openstreetmap.org/redaction-period/minute-replicate/</a></div>
<div class="yui_3_7_2_16_1352141155761_171 yui_3_7_2_16_1352141155761_328" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">_ Pour la periode avant redaction il faut utiliser <a href="http://planet.openstreetmap.org/cc-by-sa/minute-replicate/">http://planet.openstreetmap.org/cc-by-sa/minute-replicate/</a></div>
<div class="yui_3_7_2_16_1352141155761_171 yui_3_7_2_16_1352141155761_328" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">Pour
l instant l outil n est pas capable de passer automatiquement de l un a
l autre sur les minutes diffs de transition mais je pense le rajouter.<br>
</div>
<div class="yui_3_7_2_16_1352141155761_171" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;"><br>
</div><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>
- repère dans ces fichiers tous les objets créés ou modifiés par un<br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>utilisateur<br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>- les stocke dans une base de données<br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>- recherche dans les mêmes fichiers les modifications concernant les<br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>objets stockés dans la base de données, et les écrit dans un fichier log<br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>au format HTML.<br><div class="yui_3_7_2_16_1352141155761_184" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;"><br></div><div
class="yui_3_7_2_16_1352141155761_184" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">L outil de suivi surveille tous les objets dont l ID se trouve dans sa base donnee.</div>
<div class="yui_3_7_2_16_1352141155761_194" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">Il insere effectivement dans sa base de donnee tous les IDs des obets crees et modifies par l utilisateur donne en parametre</div>
<div class="yui_3_7_2_16_1352141155761_194" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">Lorsqu
il detecte une action sur ces objets il recupere la version precedente (
dans le cache local si elle existe sinon sur le site d OSM ) et genere
un diff HTML simplifie detaillant seulement la modification effectuees ( l interet se voit surtout sur les gros objets : ways avec beaucoup de nodes, grosses relations )<br>
</div>
<div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;"><br></div><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>C'est déjà très utile pour surveiller les objets qu'on a ajoutés<br><font face="Arial" size="2"><b><span style="font-weight:bold;">> </span></b></font>récemment, mais pas les plus anciens.<br><br>Pour les objets plus anciens la solution est de rajouter leur ID dans la base de donnee.<div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">Je suis en train de preparer une option pour rajouter les IDs a partir d un fichier OSM ( genere par une requete Overpass API par exemple ) sinon pour l instant c est
possible directement par une commande SQL ( il ne faut pas le faire si l outil d analyse de diff est en train de s executer !! ):</div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">sqlite3 user_object.sqlite3</div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">INSERT INTO node_ids (Id) VALUES (123);<br></div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">INSERT INTO way_ids (Id) VALUES (123);</div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size:
13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">INSERT INTO relation_ids (Id) VALUES (123);</div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;"><br></div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">Globalement l outil est capable de suivre les modifs de n importe quel objet. Il ne faut que quelques minutes pour faire un module qui ne tiendrait pas compte de l utilisateur et se focaliserait uniquement sur les objets</div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier
New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;"><br></div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">Si mes explications ne sont pas claires dis le moi je reformulerai</div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;"><br></div><div class="yui_3_7_2_16_1352141155761_57" style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color: transparent; font-style: normal;">Julien<br></div><div style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: Courier New,courier,monaco,monospace,sans-serif; background-color:
transparent; font-style: normal;"><br> <blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; margin-top: 5px; padding-left: 5px;"><div style="font-family: Courier New, courier, monaco, monospace, sans-serif; font-size: 10pt;"> </div> </blockquote></div> </div></body></html>