Un amico risponde.
Nelle scorse settimane ho indirizzato ai miei lettori questo articolo: http://nelfuturo.com/ontologie-mappate.
L'idea di mappare le ontologie deriva dagli esperimenti fatti sui metadati del catalogo basi dati AgID, come spiegato in quest'altro articolo:
http://nelfuturo.com/estrazione-e-classificazione-della-conoscenza-dai-metadati#
Un lettore, un mio caro e vecchio amico in realtà, ed ex collega, ha risposto al mio articolo proponendomi una soluzione.
Tale soluzione costituisce la beta release, la release zero, da perfezionare e migliorare, tuttavia e' un buon punto di partenza.
L'amico risponde:
...ho scritto (in linguaggio R) un primo programmino che:
- legge amministrazioni.txt (http://www.indicepa.it/public-services/opendata-read-service.php?dstype=FS&filename=amministrazioni.txt)
- associa ad ogni ipa le sue entities (leggendo i file XXX-Entity.txt , dove XXX: codice ipa: https://www.dropbox.com/s/8s9qkd8g30zrbyh/entity.zip?dl=0)
- per tutte e sole le ipa che hanno almeno una entity:
- le geolocalizza tramite il loro indirizzo (ho usato le api Mapquest)
- produce il file ipaEntitiesGeo.csv (https://www.dropbox.com/s/6i0gp8jw8qnvpvq/ipaEntitiesGeo.csv?dl=0), contenente i dati di amministrazioni.txt arricchiti di latitudine/longitudine e entità
- produce il file ont.js che costituisce l'oggetto geojson con tutte le ipa
Unzippa in una cartella il file allegato ONT.zip (https://www.dropbox.com/s/ys6u3opwi3beofl/ONT.zip?dl=0) e poi esegui ont.html che vi è contenuto: vengono visualizzate in mappa tutte le ipa, il colore del pin point è determinato dal grado di precisione della geolocalizzazione:
- verde = a livello di numero civico
- giallo = a livello di strada
- arancione = nelle vicinanze
- rosso = a livello di città
- nero = a livello di provincia
Tra l'altro in ipaEntitiesGeo.csv ci sono anche due campi (geocodeQualityCode, geocodeQuality che indicano il grado di precisione della geolocalizzazione.
Cliccando su un pinpoint vengono visualizzati il suo indirizzo e le sue entità.
Ora si tratterebbe di sofisticare ont.html per avere la possibilità di filtrare/ricercare tra tutte le ipa quelle di interesse (ma io sono un principiante di javascript....).
Un esempio a caso di mappa interattiva che utilizza la stessa libreria (leaflet) usata da me: http://labs.easyblog.it/maps/leaflet-geojson-list/examples/simple.html
Ciao, alla prossima!
Marco
Grazie Marco per il tuo ottimo lavoro! I prossimi step verranno un po' alla volta, ma la strada è aperta, ed io ti sono molto grato.
Tra l'altro le entity usate sono organizzate in gerarchie, come vediamo qui: https://www.dropbox.com/s/eodk7k36m6ehn7y/F2indent.txt?dl=0
E sono tra loro correlate. Potremmo poi usare altri set di entità, gerarchie e relazioni.
Ma un passo alla volta.
Per ora un grazie infinito!
Riccardo.
Mentre pubblichiamo il buon Marco invia questa nuova release
http://osmele.elilan.com/_ont/ont2.html
commentando: con i cluster è già più carina!