[dev-italia] formato diff
Daniele Forsi
dforsi a gmail.com
Lun 5 Ago 2019 11:02:45 UTC
Il giorno lun 5 ago 2019 alle ore 10:49 Luca Delucchi ha scritto:
> ho scoperto da poco che esistono diversi formati per i diff di osm
> [0]. Sembrerebbe che OsmChange [1] sia quello più supportato, anche se
> il formato JOSM nella pagina dedicate ne cità di più [2], per crearlo
> da scratch cosa considerereste più utile/facile?
per facilità io ho usato il formato di JOSM così potevo usare JOSM per
validare e fare l'upload, ma non creavo il file da zero;
se non sbaglio lo stesso formato puoi usarlo direttamente con le API
se vuoi fare l'upload senza usare JOSM
Il mio era un caso molto specifico:
* JOSM non aveva ancora la possibilità di scaricare le way conoscendo
l'id (quello che ora si fa dal menu File / Scarica oggetto)
* volevo modificare solo il valore di un tag, non la geometria
* il formato XML era abbastanza leggibile perché salvavo ogni way in
un file separato e non scaricavo le coordinate dei nodi e la riga
modificata era solo una quindi potevo controllare facilmente il diff
Io non interpretavo nemmeno l'XML perché per me era sufficiente
sostituire la parola errata:
$fixedname = preg_replace('/Localita\'/', 'Località', $fixedname);
e inserire action="modify" solo per le way che avevo veramente modificato:
$fixed = preg_replace('/" changeset="/', '" action="modify"
changeset="', $fixed);
poi salvavo il file e lo aprivo con JOSM passando il nome del file
sulla riga di comando
Se devi creare degli oggetti l'unica differenza è che devi usare degli
id negativi a tua scelta e anche per la creazione si usa
action="modify"
Ti mando privatamente lo script PHP che usai, sono passati tanti anni,
non so se funziona sempre.
--
Daniele Forsi
Maggiori informazioni sulla lista
dev-italia