@Federico per tabella intendo quella prensente qui: https://wiki.openstreetmap.org/wiki/Import/Catalogue
Per i dataset, linkerò ciascun dataset sarà processato. "E' scoraggiato l'uso del tag source attribuito all'oggetto, mentre si preferisce aggiungere un source ai changeset caricati." 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"? @Andrea Hai ragione, l'utente è quello del wiki. In ogni caso: La mia utenza è: https://www.openstreetmap.org/user/luca%20riccardi ma l'utente dedicato che farà l'up è: https://www.openstreetmap.org/user/giuseppecultrera - aggiornerò in seguito la referenza indicata nella wiki. - 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) Parentesi: A proposito dell'id negativo, il valore può essere ad esempio l'id della risorsa nel mio dataset (negativo) -il link su csv2osm non sembra fare ciò che eseguo io, quello che faccio è più simile a osm Conflator ( https://wiki.openstreetmap.org/wiki/OSM_Conflator), però possono essere ottimi spunti per costruire la parte mancante sulla serializzazione dei dati in OSM XML, grazie. Per la conflation, magari spiego meglio un po' cosa fa il programma step by step, così risponde ad eventuali altre domande. 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. 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). 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. Lo script lavora su due lati: La prima parte è quella di trasformare un dataset in un array di oggetti contenente solo le colonne chiave di interesse. Essenzialmente si avvale di un file di configurazione di questo genere: [ { "label": "id", // CHIAVE DELL'ARRAY ASSOCIATIVO DI OUTPUT "value": ["id", "identifier", "identificatore", "Identificativo risorsa digitale"], // LABEL DELLA COLONNA CHE CONTERRà I VALORI "index": null, // ALTERNATIVA A VALUE, INDICA DIRETTAMENTE L'INDICE DI COLONNA CHE VERRà MAPPATO IN LABEL "optional": false // INDICA SE è UNA COLONNA CHIAVE OBBLIGATORIA O MENO, LO SCRIPT SI INTERROMPE NEL CASO LA COLONNA NON VIENE INDIVIDUATA },...] ad esempio, un nodo estratto: { 'id': '187', 'name': 'Masseria Aprile', 'tipologia': 'Masseria', 'lat': '40.746586', 'lon': '17.337191', '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.', 'website': ' 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 ' } 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). Questo array di oggetti viene processato dalla seconda parte che si occupa della creazione del file OSM XML da importare. Essenzialmente viene dapprima controllato se il nodo non è presente su OSM tramite overpassturbo (overpy lib di python) La query è la seguente (node(around:200.0,40.746586,17.337191);relation(around:200.0,40.746586,17.337191););out body; 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. Se il nodo è presente, si passa al successivo, nel caso non fosse presente è un possibile candidato. Il passo successivo è individuare il tag che matcha meglio il valore di tipologia: Masseria. Per fare ciò mi avvalgo di un dizionario ( un JSON) popolato manualmente in questo modo. { "it_term": "Masseria", "en_term": "", "osm_tag": [ "place=hamlet" ] } quindi all'oggetto, viene aggiunto una ulteriore chiave contenente i tag osm individuati. e nel caso non fosse presente nel dizionario? 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). I possibili tag hanno anche un riferimento alla wiki di osm, che ne spiega il significato. Ancora: e nel caso il servizio di match automatico non trovasse nulla o non vi fosse traduzione? 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). il tutto viene rieseguito per ogni nodo nel csv ripulito... quindi serializzato in un OSM XML ( parte mancante). Spero di aver assolto alle vostre domande. Luca Riccardi <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Mail priva di virus. www.avast.com <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> Il giorno 26 gennaio 2018 12:59, Federico Cortese <cortese...@gmail.com> ha scritto: > 2018-01-26 12:45 GMT+01:00 Andrea Musuruane <musur...@gmail.com>: > > > > L'unica parte che manca è la conflation. Sarebbe interessante sapere > come la > > fa il tuo tool. In genere fare la conflation in modo automatico non è > vista > > molto bene perché spesso genera errori. > > > > Concordo pienamente. Proprio per questo motivo nelle mie e-mail > precedenti consigliavo un import manuale mediante task manager, in > modo da poter verificare puntualmente i dati. > > Ciao, > Federico > > _______________________________________________ > Talk-it mailing list > Talk-it@openstreetmap.org > https://lists.openstreetmap.org/listinfo/talk-it >
_______________________________________________ Talk-it mailing list Talk-it@openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-it