mapgive a RadioMonteCarlo

Kay Rush ha parlato di Mapgive e Openstreetmap su RadioMonteCarlo. Mapgive è il progetto di sensibilizzazione nei confronti della preparazione alle emergenze a cura del Dipartimento di Stato USA, la cui traduzione e adattamento in italiano è stata curata da Cristian Consonni (con aiuto mio e della comunità italiana).

#code4italy SPARQL dati camera e scheda deputati

Sono convinto che i dati delle pubbliche amministrazione debbano essere accessibili in maniera chiara, il sito dati.camera.it rende disponibili 160M di dati, tramite un database interrogabile, una interfaccia SPARQL Virtuoso, essa è però difficilmente utilizzabile da non addetti ai lavori, questo è il motivo per cui ho scritto questa guida, semplice, per estrarre alcuni dati da tale database.

Come parte del mio contributo all’hackathon organizzata alla Camera dei Deputati il weekend del 17-18 Maggio 2014, ho estratto da dati.camera.it l’elenco degli attuali membri della Camera dei Deputati e ho fatto una mappa georiferita dei loro luoghi di nascita.

L’esercizio si propone di estrarre dati da SPARQL, leggerli in OpenRefine, fare geocoding delle città di nascita dei Deputati, effettuare una riconciliazione dei nomi usando con wikipedia tramite l’API di SpazioDati, poi pubblicare il tutto in una mappa umap su base OpenStreetMap.

Dettaglio: si parte da una chiamata SPARQL sul sito di dati.camera.it

SELECT DISTINCT 
  ?persona ?cognome ?nome ?dataNascita ?nato ?luogoNascita ?genere ?foto WHERE { ?persona ocd:rif_mandatoCamera ?mandato; a foaf:Person. ## deputato ?d a ocd:deputato; ocd:aderisce ?aderisce; ocd:rif_leg <http://dati.camera.it/ocd/legislatura.rdf/repubblica_17>; ocd:rif_mandatoCamera ?mandato. ##anagrafica ?d foaf:surname ?cognome; foaf:gender ?genere;foaf:firstName ?nome; foaf:depiction ?foto. 
    OPTIONAL{ ?persona <http://purl.org/vocab/bio/0.1/Birth> ?nascita. ?nascita <http://purl.org/vocab/bio/0.1/date> ?dataNascita; rdfs:label ?nato; ocd:rif_luogo ?luogoNascitaUri. ?luogoNascitaUri dc:title ?luogoNascita. 
    } 
}

eseguita su questo endpoint (otterrete un CSV – per visualizzare in HTML).

Creiamo un nuovo progetto OpenRefine, e alla sezione dati, facciamo cut&paste dell’URL sopra.

Come prima cosa, facciamo geocoding dei luoghi di nascita dei deputati: Posizioniamoci nella colonna “luogoNascita”, scegliamo di aggiungere una colonna alla tabella refine, ‘Add column…’ –> ‘Add column by fetching URLs ‘, e inserendo questo codice GREL:

'http://open.mapquestapi.com/nominatim/v1/search.php?' + 
'format=json&q=' + escape(value, 'url')

OpenRefine si collega al sistema di geocoding di openstreetmap e restituisce un JSON con le coordinate, inserendolo automaticamente nella colonna appena creata (a destra di quella selezionata).

Ora, estraiamo due colonne, una contentente la latitudine e l’altra contenente la longitudine. “Add column based on this column…”, ripetiamo due volte,

usando la prima volta:

value.parseJson()[0].lat

Questo la seconda:

value.parseJson()[0].lon

Otterremo il solo valore contenuto nella corretta struttura JSON e rappresentante latitudine e longitudine.

Posizioniamoci sulla colonna ‘dataNascita’ e facciamo click su  ‘Add column…’ –> ‘Add column based on this column… ‘, scegliamo un nome per la nuova colonna e inseriamo il seguente codice GREL, che formatterà in maniera opportuna la data di nascita, dal formato 19770704 al formato 04/07/1977:

value.slice(6, 8) + '/' + value.slice(4, 6) + '/' + value.slice(0, 4)

Ora separiamo il file in due, mettendo in un primo CSV solo deputati donna, e nell’altro i soli deputati uomo.

Utilizzando il tutorial di Matteo Brunati, usiamo le potenti funzionalità di estrazione semantica di SpazioDati per estrarre le pagine wikipedia relative ai singoli deputati. Dato un testo come input, il sistema trova le entità presenti (luoghi, persone, organizzazioni, etc.) e le collega alla corrispondente pagina Wikipedia. Potere dei linked data.

Infine caricando i dati ottenuti su umap, escportati in csv, su umap, si ottiene questo:

Visualizza a schermo intero

Otterremo una mappa con le due categorie uomo/donna selezionabili in maniera distinta, un picoclo motore di ricerca e link a pagina wikipedia.

In quali casi vengono attivate le clausole di condivisione allo stesso modo (share-alike)?

Originale in inglese di Simon Poole. Tradotto in Italiano da Simone Cortesi, Fabrizio Tambussa, Stefano Sabatini.

Lo scorso fine settimana ho avuto una breve discussione con un membro rispettato della comunità OSM su alcuni aspetti della licenza ODbL ed è finito tutto più o meno su una questione, “Quindi, in quali casi vengono attivate le clausole di condivisione allo stesso modo?” Dato che si trattava delle 2 di mattina la mia risposta non è stata particolarmente buona e così ho pensato che avrei dovuto ampliare un po’ in forma scritta. Soprattutto perché forse ho dato l’impressione che si tratta di una questione piuttosto complessa, quando in realtà è abbastanza semplice.

NOTA: questa rappresenta l’opinione personale di un non-legale e non è né una dichiarazione politica ufficiale dal LWG (Licence Working Group) né della OSMF (OpenStreetMap Foundation) . Ci sono un certo numero di zone grigie che non tratterò, su alcune di esse il LWG sta preparando chiarimenti per la discussione che sarà presto disponibile, in altre parole, mi sto muovendo su un terreno sicuro.

Inoltre è ben noto che io non sia particolarmente innamorato della ODbL, ma d’altra parte penso essa sia molto meglio di quanto molti la ritengano.

La ODbL ha 3 concetti che sono rilevanti per innescare le clausole “share-alike” condivisione allo stesso modo (qui di seguito la citazione letterale dal testo della ODbL):

  • “Database Derivato” – Indica un database basato sul Database, e comprende qualsiasi traduzione, adattamento, arrangiamento, modifica, o qualsiasi altra alterazione del Database o di una parte Sostanziale dei Contenuti. Questo include, ma non è limitato a, l’estrazione o il reimpiego della totalità o di una parte Sostanziale del Contenuto in un nuovo Database.
  • “Database Collettivo” – Indica questo database in forma non modificata come parte di un insieme di banche dati indipendenti in se stessi che insieme vengono assemblati in insieme collettivo. Un’opera che costituisce un database collettivo non sarà considerata un Database Derivato.
  • “Pubblicamente” – Indica nei confronti di persone diverse da Voi o altri sotto il Vostro controllo in una misura superiore al 50% o verso le quali avete potere di dirigere le attività (come nel caso di un contratto con un consulente indipendente).

Partendo dall’ultimo concetto, condividi allo stesso viene attivata quando si “Utilizza Pubblicamente” un database derivato, vedere (ODbL 1.0: 4.4(a) e 4.5(c)). Uso interno, utilizzo da parte di un contractor a nome vostro e casi simili tutti non innescano la clausola di condividi allo stesso modo e non sono di interesse. Per il resto di questa discussione si prega di supporre che tutto ciò che stiamo discutendo, lo stiamo discutendo nel contesto di utilizzo pubblico.

Ora state probabilmente già pensando “E le opere derivate?”. Le Opere Derivate sono rilevanti per il concetto di condividere allo stesso modo solo se si “Utilizza Pubblicamente” un’opera derivata (ODbL 1.0: 4.4(c)) qualsiasi database derivato che sia stato utilizzato nella produzione del lavoro finale viene considerato “Utilizzato Pubblicamente”. Dato che già lo diamo per scontato, non abbiamo bisogno di prendere in considerazione le “Opere Derivate” nella presente discusisone. Sembra quindi che abbiamo già notevolmente semplificato la questione.

Se leggete la ODbL, “Database Derivati​” è ciò a cui, in ultima analisi, la clausola di condividi allo stesso modo si aggancia: i dati OSM originali, estratti e modifiche di essi sono dataset che sono, non è una sorpresa, soggetti a licenziamento obbligatorio tramite ODbL. Cosa succede se si stanno utilizzando altri dati insieme a dataset derivati da OSM​​? Tornando alle definizioni, vediamo che tale uso crea un Database Collettivo.

Come il termine “condividi allo stesso modo” si applica a un Database Collettivo? Beh, secondo 4.5 (a): “A scanso di dubbi, non è necessario rilasciare Database Collettivi sotto la presente Licenza se si incorpora questo Database o un Database Derivato nella raccolta, ma questa Licenza si applica ancora a questo Database o un Database Derivato come parte del Database Collettivo”.

In altre parole, se semplicemente raggruppi uno o più dataset con dati provenienti da OSM, sei solamente tenuto a concedere in licenza la parte OSM del Database Collettivo con termini ODbL o con licenza compatibile.
Esempio: si supponga di avere un database proprietario globale dei cestini per rifiuti e si desideri utilizzare i dati insieme ai dati OSM. Nessun problema, è possibile utilizzare i dati con OSM e non c’è necessità di pubblicare il dataset proprietario sotto licenza ODbL.

Allarme zona grigia: mentre l’esempio è chiaro, ci sono alcuni tipi di “raggruppamenti” che hanno bisogno di un chiarimento.

Ora, dato che OSM contiene già un sacco di cestini per rifiuti, il risultato potrebbe contenere molti duplicati che si desidera rimuovere. Anche in questo caso nessun problema, si può semplicemente rimuovere tutti i cestini per rifiuti dal set di dati OSM. Ora i dati OSM risultanti sono chiaramente un Database Derivato che è soggetto ai vincoli “condividi allo stesso modo” della licenza ODbL (come era prima), ma non cambia lo stato di tutto il collettivo che può ancora avere licenze diverse tra le sue singole parti ed il tutto.

Allarme zona grigia: questo tipo di Database Derivato ( dati di OSM ridotti e estratti senza modifiche) innesca una serie di obblighi che sostanzialmente nessuno rispetta.

Questo è il punto che stavo discutendo alle 2 del mattino e quando è stata posta la domanda: “In quali casi vengono attivate le clausole di condivisione allo stesso modo (share-alike)?”.

Beh, la risposta è: “Quando si modificano i dati OSM”. L’esempio più semplice: si migliora la posizione di un POI modificando le coordinate o aggiungendo ulteriori informazioni al POI, quindi si deve rilasciare il dataset risultante nei termini ODbL. Non dimentichiamo che stiamo sempre supponendo che si stia pubblicamente usando i dati.

Un esempio più interessante: si supponga di avere un database proprietario contenente geometrie stradali con relative informazioni sul manto stradale e in seguito di avere il permesso di integrare informazioni sul tipo di manto, in OSM. Voi aggiungete tali informazioni relative al manto all’interno di OSM nella vostra copia dei dati OSM: sì, è necessario pubblicare i dati OSM migliorati con i termini ODbL.

La cosa importante da notare è che questo non modifica il database proprietario originale, non vi è alcun contagio di tale dataset, semplicemente non è possibile tenere per sé le modifiche ai dati OSM.

E che dire del contrario? Supponete di aver notato che OSM ha dei dati migliori di quelli nel database proprietario e voi sostituite l’informazione originale con questi? Quindi il dataset risultante è soggetto alla condizione “condividi allo stesso modo” ed è necessario renderlo disponibile con licenza ODbL.

Per riassumere: quando contribuire “share alike”? Quando si modificano i dati OSM o si
applicano modifiche da OSM a dati di terzi e si utilizzano pubblicamente i risultati.

Questo è tutto.

Vogliamo anche l’Italia nel registro INSPIRE


Hashtag: #italy4INSPIRE

Premessa

INSPIRE prevede che ogni Stato Membro fornisca almeno un endpoint nazionale per il discovery di metadati.
Ad oggi, la maggior parte degli Stati Membri (23 su 28) ha soddisfatto questo requisito registrando il proprio riferimento nazionale nel geoportale INSPIRE: http://inspire-geoportal.ec.europa.eu/INSPIRERegistry/
In particolare, come si può vedere, alcuni paesi hanno registrato più di un endpoint, come l’Austria, il Belgio e la Lettonia: è infatti possibile registrarne anche più di uno per paese
A differenza di ciò, l’Italia non ha ancora alcun endpoint registrato per il servizio di discovery.
Per questa registrazione è necessaria una semplice comunicazione (email) del National Contact Point INSPIRE (o di qualcuno delegato dal NCP) indirizzata a EC/EEA INSPIRE Team (env-inspire@ec.europa.eu) ed per conoscenza JRC (michael.lutz@jrc.ec.europa.eu).

Domanda

Perché il servizio CSW realizzato da RNDT non è ancora stato registrato come endpoint italiano?

Dal punto di vista normativo, sia il recepimento della Direttiva INSPIRE (Dlgs. 32/2010) che il Codice dell’Amministrazione Digitale riportano che RNDT è il riferimento nazionale in questo contesto: “Il repertorio nazionale dei dati territoriali, [...] costituisce il catalogo nazionale dei metadati relativi ai set di dati territoriali” (Dlgs. 32/2010, art.5) [1].
Dal punto di vista tecnico-operativo i test effettuati nel luglio 2013 e gennaio 2014 dal Joint Research Centre della Commissione Europea (su richiesta dell’Agenzia per l’Italia Digitale) hanno dimostrato che il servizio CSW del RNDT e la quasi totalità dei metadati raccolti sono perfettamente conformi a quanto previsto dai Regolamenti 1205/2008 (metadati) e 976/2009 (servizi di rete) della Commissione Europea, nonché alle relative Technical Guidelines (1.2 del 2010 per i metadati, e 3.1 del 2011 per i servizi di discovery).
In particolare il test effettuato a gennaio 2014 ha riportato 4412 metadati “passed” e 412 “passed with warnings” su un totale di 5540 metadati sottoposti ad harvesting (nel RNDT i metadati disponibili sono 6143).
Il livello di conformità rispetto a INSPIRE è quasi totale per i metadati di dataset e serie (4415 su 4462).
Questo è un risultato importante ed è da notare che risulta essere migliore rispetto ai risultati ottenuti da altri Stati Membri.
Il report completo è disponibile a questo indirizzo: http://inspire-geoportal.ec.europa.eu/resources/sandbox/INSPIRE-dc160d85-7f54-11e3-9486-d8d3855bd8fc_20140117-095358/services/1/PullResults/

Sottolineiamo che è importante che la registrazione del servizio sia fatta al più presto perché:

  1. la disponibilità dei metadati italiani nel catalogo europeo serve a dare visibilità alle informazioni territoriali esistenti in Italia, il tutto proiettato a
    1. supportare le politiche ambientali nazionali e comunitarie
    2. favorire la conoscenza e la promozione del nostro territorio;
  2. l’iniziale disponibilità di metadati potrà innescare un processo virtuoso spingendo gli enti pubblici di ogni livello a conferire i metadati all’RNDT per far conoscere le attività dell’amministrazione su scala internazionale;
  3. per incentivare la realizzazione di servizi innovativi da parte di professionisti, consulenti e PMI locali da offrire agli enti locali sulla base della disponibilità di dati;
  4. per istanziare il ruolo del “nodo” Italia all’interno della rete;
  5. per dare riconoscimento e visibilità alle persone che, su scala diversa, hanno attivamente operato per la realizzazione dell’infrastruttura e dei servizi.

Conclusioni

Alla luce di queste considerazioni, esortiamo il NCP INSPIRE italiano a comunicare al più presto al JRC l’indirizzo del servizio CSW di RNDT affinché questo venga registrato come primo endpoint italiano in INSPIRE.


Firmatari (in ordine alfabetico)

  • Giovanni Allegri
  • Roberto Angeletti, ExportToCanoma blog
  • Andrea Antonello
  • Fulvio Ananasso, Stati generali dell’innovazione
  • Associazione italiana per l’informazione geografica libera – GFOSS.it
  • Associazione Stati Generali dell’Innovazione
  • Ugo Bonelli, Stati generali dell’innovazione
  • Andrea Borruso
  • Stefano Campus
  • Giovanni Ciardi
  • Piergiorgio Cipriano
  • Bruno Conte, Stati generali dell’innovazione, Social4Social
  • Simone Cortesi
  • Laura Criscuolo
  • Antonio D’Argenio, Nadir
  • Margherita Di Leo
  • Alessio Di Lorenzo
  • Gianfranco Di Pietro, Geofunction
  • Antonio Falciano
  • Sergio Farruggia, Stati Generali dell’Innovazione, AMFM GIS Italia
  • Daniela Ferrari
  • Maurizio Foderà, Kartoblog
  • Marco Frattoddi, Stati generali dell’innovazione
  • Antonio Fregoli, MNDAssociation
  • Pietro Blu Giandonato
  • Cesare Gerbino
  • Simone Giannecchini
  • Jacopo Grazzini
  • Nicola Guarino, ISTC-CNR
  • Giuseppe Iacono, Stati generali dell’innovazione
  • Carlo Infante, Stati generali dell’innovazione, Urban Experience
  • Andrea Latino, Stati generali dell’innovazione
  • Simone Lella
  • Walter Lorenzetti, gis3w
  • Jody Marca
  • Flavia Marzano, Stati Generali dell’Innovazione e Rete WISTER
  • Giacomo Martirano, Epsilon Italia, coordinatore progetto smeSpire
  • Stefania Morrone, Epsilon Italia
  • Lorenzo Orlando, Stati generali dell’innovazione
  • Alessandro Oggioni
  • Mariella Pappalepore, Planetek Italia
  • Stefano Parodi, GeoWebLog
  • Lorenzo Perone
  • Emma Pietrafesa, Stati generali dell’innovazione (Rete WISTER)
  • Renzo Provedel, Stati generali dell’innovazione, SOSLOG
  • Angelo Quaglia
  • Morena Ragone, Stati generali dell’innovazione
  • Paolo Russo, Stati generali dell’innovazione
  • Alessandro Sarretta
  • Monica Sebillo, AMFM GIS Italia
  • Gian Bartolomeo Siletto
  • Claudia Spinnato, Consorzio TICONZERO
  • Lorenzino Vaccari, Provincia Autonoma Trento
  • Franco Vico, AMFM GIS Italia
  • Fabio Vinci, Epsilon Italia
  • Massimo Zotti

Se volete essere aggiunti in questa lista, inserite il vostro nome e/o la vostra affiliazione come commento.



[1] Inoltre, il Decreto 10 novembre 2011 relativo alle regole tecniche del RNDT, emanato dal Ministro per la Pubblica Amministrazione e l’Innovazione e dal Ministero per l’Ambiente e la Tutela del Territorio e del Mare, dispone che il RNDT, parte integrante dell’infrastruttura nazionale, eroghi i servizi di ricerca (art. 2) e prevede la pubblicazione dei metadati nel RNDT, assicurando il rispetto degli adempimenti di cui al Regolamento (CE) n. 1205/2008 e al D. Lgs. n. 32/2010 (DM art. 4)

Trevor Paglen and how I see opendata

I recommend this talk by Trevor Paglen presented at 30c3. Watch it, it is very important.

If someone every now and then has doubts about “why we fight for opendata”, why we have to keep fighting and why it does not matter how many people download a dataset, but what matters is how many free tools exist to process them, and put them in relation to which further information can be extracted from them.

And, eventually, what you can assert, using factual evidence, extracted from the data.

The answer to why we must remain vigilant: “Eternal vigilance is the price of liberty”

http://events.ccc.de/congress/2013/Fahrplan/events/5604.html

One of the most interesting talks I’ve seen in a LONG time.

It gives meaning to what we are doing with OpenData, not only with the fact of freeing them, but also the entire ecosystem of software products that we are putting in place to extract, analyze and visualize them.

che-futuro

Che Futuro! Così noi hacker stiamo aiutando i soccorritori delle filippine

Ho scritto per Che Futuro! un articolo dal titolo Così noi hacker stiamo aiutando i soccorritori delle filippine:

Undici milioni di persone colpite. Settecento mila sfollati. Cinquemila morti.
Dai numeri che stanno circolando nelle ultime ore, sembra chiaro come il Tifone Haiyan, che ha lasciato una scia di distruzione nelle Filippine l’8 novembre, sia stato il più pesante evento naturale mai registrato dall’uomo.

Questi i numeri della tragedia. Enormi.
Ma la tecnologia può aiutare anche in questi casi a limitare le perdite e a facilitare i soccorsi. Lo fa con l’aiuto di persone che si trovano letteralmente dall’altra parte del mondo attraverso un progetto di crowdsourcing con un bacino di un milione e cinquecento mila utenti: OpenStreetMap.

Continua a leggere su Che Futuro!…