14. Dal DBGP al NC
Classi National Core
=
Area bagnata di corso d'acqua
AB_CDA
Specchio d'acqua
SP_ACQ
Invaso artificiale
Affioramento naturale dell'acqua
Cascata
Drenaggi superficiali
Linea di costa marina cartografica
Area di mare
Linea di alta marea
Linea di bassa marea
Area intercotidale
Ghiacciaio-nevaio perenne
Elemento idrico
Condotta
Nodo idrico
Corso d'acqua naturale
Canale
Reticolo idrografico naturale
INVASO
AF_ACQ
CASCATA
DRE_SUP
CS_MAR
AR_MAR
CS_AM
CS_BM
AR_INT
GHI_NV
EL_IDR
CONDOT
ND_IDR
ASTA_F
CANALE
RT_IDN
Reticolo idrografico
RT_IDR
Classi DBGP
Area bagnata di corso d'acqua
Lago
Palude
Stagno
Invaso artificiale
Affioramento naturale dell'acqua
Cascata
Drenaggi superficiali
AB_CDA
IDRLAGO
IDRPALU
IDRSTAG
INVASO
RIUSOR
CASCATA
DRE_SUP
Ghiacciaio-nevaio perenne
Tratti dei corsi d'acqua
Condotta
Nodo idrico
Corso d'acqua naturale
Canale
Corso d'acqua naturale
Tratti dei corsi d'acqua
Condotta
GHI_NV
IDRFIU_TT
IDRCONDOTTA
ND_IDR
ASTA_F
CANALE
ASTA_F
IDRFIU_TT
IDRCONDOTTA
16. National Core
DBGP
Lago
Palude
IDRPALU
Stagno
Specchio d'acqua SP_ACQ
IDRLAGO
IDRSTAG
Lo specchio d’acqua a livello nazionale è
dato dall’unione delle istanze delle classi
Lago, Palude e Stagno
Questo rende necessaria una selezione
degli attributi e la creazione di identificativi
univoci per la classe a livello nazionale
17. National Core
Elemento idrico
EL_IDR
DBGP
Tratti dei corsi d'acqua
IDRFIU_TT
La geometria della classe a livello nazionale
deve essere derivata “fondendo” il dato
provinciale in base al valore del attributo di
codice dell’identità.
18. National Core
Reticolo idrografico RT_IDR
DBGP
Tratti dei corsi d'acqua IDRFIU_TT
Condotta
IDRCONDOTTA
La geometria della classe a livello nazionale
deve essere derivata aggregando le
geometrie
provenienti
dal
livello
provinciale.
La selezione delle geometrie da aggregare
deve essere fatta attraverso un algoritmo
che testa la proprietà di connessione delle
geometrie componenti.
21. -- Definition --- Definition -A natural or man-made flowing watercourse or stream.
A natural or man-made
-- Description --- Description
SOURCE [EuroRegionalMap].
SOURCE [EuroRegionalMap].
22.
23.
24.
25.
26.
27.
28. Conclusioni / 1
• In Italia abbiamo bisogno che qualcuno
inizi a occuparsi di ‘mappare’ le specifiche
nazionali sui db topografici rispetto a
INSPIRE … visto che questo non è ancora
stato fatto
• Il metodo che abbiamo illustrato qui può
essere migliorato ed esteso a tutti i temi
29. Conclusioni / 2
• L’approccio seguito è stato:
– Mapping concettuale tra National Core e
INSPIRE con le matching table
– Generazione modello implementativo SHP
tramite GeoUML Catalogue
– Mapping fisico tramite HALE
• L’output di questo lavoro, su tutto il
National Core, dovrebbe essere unico per
tutti e riusabile da chiunque
30. Grazie
Daniela Ferrari, Provincia Autonoma di Trento
Giuliana Ucelli, Informatica Trentina
in collaborazione con Sinergis
Piergiorgio Cipriano e Jody Marca
Editor's Notes
Così come per le lingue, la ‘traduzione’ da un modello dati ad un altro è come un puzzle: esiste più di una strada per mappare un concetto da uno schema all’altro, ci sono più soluzioni, sia dal punto di vista metodologico che degli strumenti che si possono usare.
Questo è un esempio di traduzione problematica: anche il translator di Google a volte ha qualche ‘problema’ e tradurre un semplice concetto (bon appétit) dal francese all’italiano può dare risultati inaspettati …
Prima di entrare nel merito dell’esercizio svolto per questo hackathon, vediamo quali sono stati i documenti e gli strumenti di riferimento che abbiamo scelto
Per prima cosa, la specifica di contenuto del Database Geografico Provinciale (DBGP), che sarà presto pubblicata sul Portale Geocartografico della PAT.
L’idrografia è stato il primissimo tema ad essere modellato nel DBGP, ed è anche il primo ad essere stato implementato dal punto di vista fisico e poi popolato.
Poi, ovviamente, le specifiche nazionali sui database topografici, recepite dal decreto del 2011 e pubblicate, oltre che sul sito dell’Agenzia per l’Italia Digitale, anche sul sito del Ministero dell’Ambiente.
Le specifiche nazionali, oltre ad essere disponibili in forma testuale, sono consultabili anche scaricando il tool GeoUML Catalogue sviluppato da CISIS e Politecnico di Milano all’indirizzo indicato in questa slide
E parlando di INSPIRE, ovviamente abbiamo considerato i testi, a partire da quello del Regolamento 1089 del 2010, che prescrive ‘cosa’ deve essere implementato per i temi dell’Annex I …
… e che ha subito alcune variazioni con l’approvazione del recente Regolamento 1253 dello scorso ottobre.
Ricordiamo che i Regolamenti sono atti prescrittivi, obbligatori e automaticamente validi come norma in tutti gli Stati Membri: significa che quanto contenuto in questi Regolamenti è norma vigente anche a livello nazionale.
In questi regolamenti (1089 e 1253) ritroviamo, tema per tema, il ‘cosa’ deve essere implementato, classe per classe, attributo per attributo.
Questi regolamenti, poi, rimandano a linee guida tecniche …
… che per l’Idrografia sono costituite dal testo indicato in slide.
Nota: questo testo non è ancora stato aggiornato, ed è quindi fermo a quanto previsto nel 2010 (tra il Regolamento 1089 ed il Regolamento 1253 ci sono alcune differenze in termini di classi)
Alla fine abbiamo provato ad usare HALE, per vedere come può essere mappata la struttura dati National Core rispetto a quella INSPIRE, usando come modelli implementativi:
il modello implementativo SHP per il National Core, come schema sorgente
gli application schema GML per INSPIRE, come schema target
Per il tema dell’Idrografia il nostro DB Geografico Provinciale non è del tutto speculare con le specifiche nazionali.
Ovviamente in termini di contenuto il modello dati ha tenuto conto di tutto quanto previsto a livello nazionale, ma la struttura è … ‘a nostro uso e consumo’, nel senso che è molto legata a come, organizzativamente e tecnologicamente, sono gestiti i dati di Idrografia qui in Provincia.
In particolare, è il Servizio Bacini Montani a occuparsi di gestire gli aggiornamenti di questo tema, su un database geografico ‘locale’ (geodb di Stazione), allineato a sua volta con il db centrale.
Come vediamo le classi del modello provinciale (a destra) possono essere facilmente ricondotte a quelle del National Core (a sinistra).
Ci sono differenze anche a livello di dataType: lo stesso attributo (per esempio ‘captato’ o ‘sorgente termale’ della classe Affioramento naturale d’acqua) per noi è un enumerato, mentre per le specifiche nazionali è un booleano.
Il mapping tra le nostre specifiche (locali) e quelle nazionali ci servirà nel prossimo futuro per ‘servire’ i dati del nostro DB Geografico strutturati secondo le specifiche nazionali, nel caso per esempio di interscambio con altre Regioni.
Come anticipato all’inzio, oltre a questo mapping da locale a nazionale, abbiamo approfittato di questa occasione per provare a mappare le specifiche nazionali rispetto a INSPIRE.
Questo è un compito che avrebbe dovuto fare il CISIS, oppure il Ministero dell’Ambiente o qualche altro organo centrale, ma che finora non ha ancora fatto nessuno.
E’ giusto quindi che qualcuno inizi, e grazie a questo hackathon noi della PAT abbiamo provato con il tema ‘Idrografia’.
Per "Idrografia", il National Core raccoglie i temi inerenti la descrizione dei corpi idrici, della costa e delle acque marine.
I contenuti di questo strato sono divisi in temi che a loro volta contengono le seguenti classi:
Acque interne e di transizione:
Area bagnata di corso d’acqua
Specchio d’acqua
Invaso
Affioramento naturale d’acqua
Cascata
Drenaggio superficiale
Acque marine:
Linea di costa marina cartografica
Area di mare
Linea di alta marea
Linea di bassa marea
Area intercoticale
Ghiacciai e nevai perenni:
Ghiacciaio-nevaio perenne
Reticolo idrografico:
Elemento idrico
Condotta
Nodo idrico
Corso d’acqua naturale (asta fluviale)
Canale
Reticolo idrografico naturale
Reticolo idrografico
Corso d’acqua
Esiste una stretta relazione (topologica) tra le classi del tema Acque interne e di transizione e quelle del tema Reticolo idrografico.
Mentre per le specifiche nazionali, come detto, la consultazione può essere fatta tramite il GeoUML Catalogue, per le specifiche INSPIRE la ‘descrizione completa’ del modello è quella delle Technical Guidelines, dove è possibile scorrere i vari diagrammi di classe UML, come quello di esempio raffigurato.
Usando i documenti indicati prima (Regolamenti e Technical Guidelines INSPIRE, e specifiche nazionali) abbiamo compilato 3 matching tables …
… che come sappiamo sono uno strumento ‘human readable’ per definire il mapping a livello di classi, relazioni e attributi, tra un modello sorgente ed uno target (Inspire).
Aprire Excel con uno dei tre esempi di mapping table
Un altro passaggio che abbiamo provato a fare è stato quello di iniziare a definire un mapping non solo ‘concettuale’ (cioè solo human readable) ma anche più fisico.
Per fare questo con il GeoUML Catalogue abbiamo generato il modello implementativo SHP.
GeoUML offre infatti la possibilità di generare, per lo stesso modello concettuale, uno o più modelli implementativi:
SHP
SQL per Oracle
SQL per PostGIS
Il modello implementativo SHP consiste semplicemente in file shp, dbf, shx e prj generati automaticamente per tutte le classi del modello sorgente (in questo caso il modello è quello delle specifiche nazionali).
In questa slide è raffigurata la cartella dove GeoUML Catalogue ha creato i vari file shp, dbf, shx e prj di tutte le classi di Idrografia del National Core.
Questi SHP sono, di fatto, il nostro modello sorgente, mentre gli application schema GML sono il nostro modello target.
In HALE è possibile definire il mapping (fisico) tra l’uno e l’altro, cioè creare le corrispondenze tra classi e attributi dei due modelli.
Per esempio, in questa figura vediamo che la classe ‘Nodo idrico’ del National Core (a sinistra) corrisponde alla classe ‘HydroNode’ di INSPIRE.
Questo mapping deve essere ovviamente fatto a livello di singolo attributo, e nel caso di attributi che prevedano valori enumerati (codici) è necessario definire la corrispondenza a livello di singolo valore.