<div dir="ltr">@Federico<div><br></div><div>per tabella intendo quella prensente qui: <a href="https://wiki.openstreetmap.org/wiki/Import/Catalogue">https://wiki.openstreetmap.org/wiki/Import/Catalogue</a></div><div><br></div><div>Per i dataset, linkerò ciascun dataset sarà processato.</div><div><br></div><div>"<span style="font-size:12.8px">E' scoraggiato l'uso del tag source attribuito all'oggetto, mentre si</span></div><span style="font-size:12.8px">preferisce aggiungere un source ai changeset caricati."</span><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">Non mi è ben chiaro. Puoi farmi un esempio? Stai dicendo di non mettere "source=innovapuglia" come tag a ciascun nodo che caricherò ma di usare un "chageset=innovapuglia"?<br></span><div><br></div><div>@Andrea</div><div>Hai ragione, l'utente è quello del wiki. In ogni caso:</div><div><br></div><div>La mia utenza è: <a href="https://www.openstreetmap.org/user/luca%20riccardi">https://www.openstreetmap.org/user/luca%20riccardi</a></div><div>ma l'utente dedicato che farà l'up è: <a href="https://www.openstreetmap.org/user/giuseppecultrera">https://www.openstreetmap.org/user/giuseppecultrera</a> - aggiornerò in seguito la referenza indicata nella wiki.</div><div><br></div><div>- Il link su OSM XML l'ho visto più volte, ma mi sembrava più per l'edit dei dati che per un import da zero ( io andrò ad aggiungere solo i dati che non sono presenti da OSM) quindi non mi era chiaro se l'import e l'edit avessero formati differenti (a parte l'id negativo)</div><div><br></div><div>Parentesi: A proposito dell'id negativo, il valore può essere ad esempio l'id della risorsa nel mio dataset (negativo)</div><div><br></div><div>-il link su csv2osm non sembra fare ciò che eseguo io, quello che faccio è più simile a osm Conflator (<a href="https://wiki.openstreetmap.org/wiki/OSM_Conflator">https://wiki.openstreetmap.org/wiki/OSM_Conflator</a>), però possono essere ottimi spunti per costruire la parte mancante sulla serializzazione dei dati in OSM XML, grazie.</div><div><br></div><div>Per la <span style="color:rgb(80,0,80);font-size:12.8px">conflation, magari spiego meglio un po' cosa fa il programma step by step, così risponde ad eventuali altre domande.</span></div></div><div><span style="color:rgb(80,0,80);font-size:12.8px"><br></span></div><div><font color="#500050"><span style="font-size:12.8px">I dataset presenti su dati.puglia contengono diverse info. Per ciascuna riga (potenziale nodo) individuerò delle colonne chiave (latitudine, longitudine, nome, id della risorsa nel dataset, referenza col portale di origine, descrizione e categoria) che formeranno il nodo di OSM.</span></font></div><div><span style="color:rgb(80,0,80);font-size:12.8px">Esempi di categoria opere d'arte, masserie, torri, etc... Ovviamente sono in forma testuale e bisogna individuare il tag corrispettivo in OSM (viene affrontata dopo questa parte).</span></div><div><span style="color:rgb(80,0,80);font-size:12.8px"><br></span></div><div><span style="color:rgb(80,0,80);font-size:12.8px">Il primo step è quello di pulizia del dataset a 360°( da dati incompleti ed incorretti, riformattazione di dati come latitudine e longitudine). Questo produce un CSV ripulito.</span></div><div><span style="color:rgb(80,0,80);font-size:12.8px"><br></span></div><div><span style="color:rgb(80,0,80);font-size:12.8px">Lo script lavora su due lati:</span></div><div><span style="color:rgb(80,0,80);font-size:12.8px"><br></span></div><div><span style="color:rgb(80,0,80);font-size:12.8px">La prima parte è quella di trasformare un dataset in un array di oggetti contenente solo le colonne chiave di interesse.</span></div><div><span style="color:rgb(80,0,80);font-size:12.8px">Essenzialmente si avvale di un file di configurazione di questo genere:</span></div><div><span style="color:rgb(80,0,80);font-size:12.8px"><br></span></div><div><div><font color="#500050"><span style="font-size:12.8px">[</span></font></div><div><font color="#500050"><span style="font-size:12.8px"> {</span></font></div><div><span style="font-size:12.8px;color:rgb(80,0,80)"> "label": "id", // CHIAVE DELL'ARRAY ASSOCIATIVO DI OUTPUT</span></div><div><font color="#500050"><span style="font-size:12.8px"> "value": ["id", "identifier", "identificatore", "Identificativo risorsa digitale"], // LABEL DELLA COLONNA CHE CONTERRà I VALORI</span></font></div><div><font color="#500050"><span style="font-size:12.8px"> "index": null, // ALTERNATIVA A VALUE, INDICA DIRETTAMENTE L'INDICE DI COLONNA CHE VERRà MAPPATO IN LABEL</span></font></div><div><font color="#500050"><span style="font-size:12.8px"> "optional": false // INDICA SE è UNA COLONNA CHIAVE OBBLIGATORIA O MENO, LO SCRIPT SI INTERROMPE NEL CASO LA COLONNA NON VIENE INDIVIDUATA</span></font></div><div><font color="#500050"><span style="font-size:12.8px"> },...]</span></font></div></div><div><font color="#500050"><span style="font-size:12.8px"><br></span></font></div><div><font color="#500050"><span style="font-size:12.8px">ad esempio, un nodo estratto:</span></font></div><div><font color="#500050"><span style="font-size:12.8px"><br></span></font></div><div><font color="#500050"><span style="font-size:12.8px">{</span></font></div><div><font color="#500050"><span style="font-size:12.8px">'id': '187', </span></font></div><div><font color="#500050"><span style="font-size:12.8px">'name': 'Masseria Aprile',</span></font></div><div><font color="#500050"><span style="font-size:12.8px">'tipologia': 'Masseria', </span></font></div><div><font color="#500050"><span style="font-size:12.8px">'lat': '40.746586',</span></font></div><div><font color="#500050"><span style="font-size:12.8px">'lon': '17.337191',</span></font></div><div><font color="#500050"><span style="font-size:12.8px"> 'descr': 'L\'istantanea in oggetto, fa parte di una più ampia raccolta di fotografie realizzate per il progetto di censimento di 248 masserie pugliesi avviato da Giancarlo Chielli, professore del corso in Beni Culturali e Ambientali presso l\'Accademia di Belle Arti di Bari. Il lavoro svolto ha dato vita al volume "Le masserie di Puglia come Bene Culturale" in cui sono presenti alcuni scatti di masserie pugliesi tra cui questa presa in esame. La fotografia, scattata in bianco e nero all\'interno della masseria Aprile, si caratterizza di diversi elementi compositivi che arricchiscono la scena. A dominare la scena il complesso di trulli della masseria che, originariamente, avevano diverse destinazioni d\'uso. L\'immagine, in fase di post-produzione ha subito un intervento di "maschera di contrasto" che ha esaltato i contrasti tra i bianchi e i neri. Tale espediente ha, infatti, reso il cielo più cupo e greve tanto da contrapporsi fortemente al bianco candido dei trulli. La masseria Aprile, tipico complesso rurale pugliese costruita nel 1700, sorge nel cuore della Valle d\'Itria ai piedi di Locorotondo, comune pugliese riconosciuto tra i borghi più belli d\'Italia. L\'intero complesso edilizio, immerso nella campagna e circondato da uliveto e vigneto, si caratterizza da una struttura centrale in pietra ad uso abitativo, una annessa cappella di famiglia e una serie di trulli del XVII secolo destinati in origine al ricovero degli animali, al deposito della legna, alla conservazione del formaggio, del vino, del foraggio. La tenuta è stata ristrutturata nel 1992 dagli eredi proprietari seguendo i tradizionali criteri di conservazione dei maestri trullari della zona. Oggi oltre ad essere residenza degli stessi eredi ha perso la funzione d\'uso originaria ed è stata trasformata in un rinomato bed and breakfast.',</span></font></div><div><font color="#500050"><span style="font-size:12.8px"> 'website': '<a href="http://www.pugliadigitallibrary.it/item.jsp?id=187&locale=it_IT-|-http://www.pugliadigitallibrary.it/item.jsp?id=186&locale=it_IT-|-http://www.pugliadigitallibrary.it/item.jsp?id=25&locale=it_IT-|-http://www.pugliadigitallibrary.it/item.jsp?id=188&locale=it_IT">http://www.pugliadigitallibrary.it/item.jsp?id=187&locale=it_IT-|-http://www.pugliadigitallibrary.it/item.jsp?id=186&locale=it_IT-|-http://www.pugliadigitallibrary.it/item.jsp?id=25&locale=it_IT-|-http://www.pugliadigitallibrary.it/item.jsp?id=188&locale=it_IT</a>'</span></font></div><div><font color="#500050"><span style="font-size:12.8px">}</span><br></font></div><div><font color="#500050"><span style="font-size:12.8px"><br></span></font></div><div><font color="#500050"><span style="font-size:12.8px">il tag website contiene i riferimenti della risorsa sulla piattaforma originale (possono essere più di uno, link separati dal separatore -|-, per ogni link verrà creato un tag website).</span></font></div><div><font color="#500050"><span style="font-size:12.8px"><br></span></font></div><div><font color="#500050"><span style="font-size:12.8px">Questo array di oggetti viene processato dalla seconda parte che si occupa della creazione del file OSM XML da importare.</span></font></div><div>Essenzialmente viene dapprima controllato se il nodo non è presente su OSM tramite overpassturbo (overpy lib di python)</div><div><br></div><div>La query è la seguente<br></div><div><br></div><div>(node(around:200.0,40.746586,17.337191);relation(around:200.0,40.746586,17.337191););out body;<br></div><div><br></div><div><br></div><div>processo la risposta andando a individuare se tra i nodi e le relazioni vi è un nodo col tag name che sia molto simile a quello che voglio inserire io. Fin'ora ha funzionato bene.</div><div><br></div><div>Se il nodo è presente, si passa al successivo, nel caso non fosse presente è un possibile candidato.</div><div><br></div><div>Il passo successivo è individuare il tag che matcha meglio il valore di tipologia: Masseria.</div><div><br></div><div>Per fare ciò mi avvalgo di un dizionario ( un JSON) popolato manualmente in questo modo.</div><div><br></div><div><div> {</div><div> "it_term": "Masseria",</div><div> "en_term": "",</div><div> "osm_tag": [</div><div> "place=hamlet"</div><div> ]</div><div> }</div></div><div><br></div><div>quindi all'oggetto, viene aggiunto una ulteriore chiave contenente i tag osm individuati.</div><div><br></div><div> e nel caso non fosse presente nel dizionario?</div><div><br></div><div>il valore Masseria viene tradotto in inglese (usando wordreference), quindi avvalendomi delle api di tagfinder (servizio basato su taginfo) individuo i tag potenziali da associare ( sarà l'utente a scegliere quale) ed eventualmente associare il tag alla tipologia per le prossime occorrenze( in parole spicce: viene salvato nel dizionario).</div><div>I possibili tag hanno anche un riferimento alla wiki di osm, che ne spiega il significato.</div><div><br></div><div>Ancora: e nel caso il servizio di match automatico non trovasse nulla o non vi fosse traduzione?</div><div><br></div><div>Il nodo viene aggiunto in una coda secondaria che viene serializzata in JSON al termine dell'esecuzione del programma, e può essere direttamente riprocessata in seguito( nuova esecuzione dello script), andando semplicemente ad aggiungere manualmente la tipologia nel dizionario ( che in questo caso viene individuata).</div><div><br></div><div>il tutto viene rieseguito per ogni nodo nel csv ripulito... quindi serializzato in un OSM XML ( parte mancante).</div><div><br></div><div>Spero di aver assolto alle vostre domande.</div><div><br></div><div>Luca Riccardi</div><div><br></div><div><br></div></div><div id="DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><br> <table style="border-top:1px solid #d3d4de">
<tr>
<td style="width:55px;padding-top:18px"><a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail" target="_blank"><img src="https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif" alt="" width="46" height="29" style="width: 46px; height: 29px;"></a></td>
<td style="width:470px;padding-top:17px;color:#41424e;font-size:13px;font-family:Arial,Helvetica,sans-serif;line-height:18px">Mail priva di virus. <a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail" target="_blank" style="color:#4453ea">www.avast.com</a> </td>
</tr>
</table>
<a href="#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" width="1" height="1"></a></div><div class="gmail_extra"><br><div class="gmail_quote">Il giorno 26 gennaio 2018 12:59, Federico Cortese <span dir="ltr"><<a href="mailto:cortesefed@gmail.com" target="_blank">cortesefed@gmail.com</a>></span> ha scritto:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">2018-01-26 12:45 GMT+01:00 Andrea Musuruane <<a href="mailto:musuruan@gmail.com">musuruan@gmail.com</a>>:<br>
><br>
> L'unica parte che manca è la conflation. Sarebbe interessante sapere come la<br>
> fa il tuo tool. In genere fare la conflation in modo automatico non è vista<br>
> molto bene perché spesso genera errori.<br>
><br>
<br>
</span>Concordo pienamente. Proprio per questo motivo nelle mie e-mail<br>
precedenti consigliavo un import manuale mediante task manager, in<br>
modo da poter verificare puntualmente i dati.<br>
<div class="HOEnZb"><div class="h5"><br>
Ciao,<br>
Federico<br>
<br>
______________________________<wbr>_________________<br>
Talk-it mailing list<br>
<a href="mailto:Talk-it@openstreetmap.org">Talk-it@openstreetmap.org</a><br>
<a href="https://lists.openstreetmap.org/listinfo/talk-it" rel="noreferrer" target="_blank">https://lists.openstreetmap.<wbr>org/listinfo/talk-it</a><br>
</div></div></blockquote></div><br></div>