[Gfoss] Tolomeo: un framework per realizzare portali webgis da wms e wfs

Salve,

perdonate il momento di promozione, ma ritengo utile testimoniare la esistenza di questo framework da noi usato e che in determinati scenari sia da tenere in considerazione.

Come Regione Toscana stiamo usando il framework “Tolomeo” realizzato dal Comune di Prato per la pubblicazione dei nostri portali webgis.

Questo framework è rilasciato dal comune di Prato con licenza GPL e quindi è usabile senza problemi.

Il dirigente del nostro servizio SITA (Sistema Informativo Territoriale ed Ambientale) ha creduto fin dall’inizio in questo framework (sinceramente io non gli davo un centesimo), e ci ha investito sopra considerevolmente.

Inoltre, il Comune di Prato si è reso disponibile fin da subito a recepire le nostre richieste di migliorie e evoluzioni, apportando notevoli cambiamenti e migliorie oltre l’immaginabile.

Ad oggi Tolomeo e’ un framework che mette a disposizione delle funzionalit’a veramente di ottimo livello e tutto sommato la sua configurazione non è cosi’ complessa come si puo’ pensare.

Il suo punto di forza è che esso consente di mettere in piedi un portale senza doversi attrezzare con una base dati sottostante su cui appoggiare dati geografici (neanche shapefile o db spatialite).

Infatti esso riesce a prendere i dati da un qualsiasi server WMS sparso su internet .
Da esso recupera le mappe e le sovrappone a quelle provenienti da altri server wms tra quelli configurti ed accesi.
Oltre a questo fa’ interrogazioni recuperando risposte in html e/o in gml (ove disponibile).
Per le ricerche si appoggia a servizi WFS.
Ovviamente occorre disporre di tali servizi. wms/wfs,

Per questo noi come RT mettiamo a disposizione tutti i nostri servizi WMS in accesso anonimo. E abbiamo predisposto anche un servizio wfs con vari strati su cui poter effettuare ricerche.

Chiunque volesse, puo’ scaricarsi questo framework dal comune di prato e configurarsi sul proprio server un portale puntanto i propri o gli altri servizi wms.
Mettere in piedi ricerche wfs basandosi su altrui servizi wfs o sui propri servizi.

http://tolomeogis.comune.prato.it/

Ovviamente il comune di Prato sta continuando a evolvere il sistema, supportato da noi e in proprio.

Alcune delle funzionalita’ gia’ disponibili:

Una funzionalita’ interessante, ad esempio è quella che permette a real-time di cambiare lo stile, scegliendoli tra quelli resi disponibili sul server wms per ogni strato.
Ad esempio, nel caso dei confini comunali, in RT nel nostro wms mettiamo disposizione svariati stili, con etichetta, senza etichetta, con solo contorno, etc…

Non è supportato la vestizione da remoto, ma per una questione di sucirezza e di opportunita’.

Una altra funzionalità interessante è la stampa fino alla scala A2 con 300dpi.

Interessante perche’ ricalcando il metodo gia’ sperimentato con QGIS si riesce a fare queste stampe pescando i dati da dei wms remoti senza che essi debbano gestire mappe di grande formato.

Stiamo studiando soluzioni per arrivare all’ A1. Teoricamente gia’ possibile, ma stiamo valutando l’impatto complessivo.

Altrettanto interessante è la possibilità per l’utente che consulta di poter spostare i layers dell’albero in alto / basso, per cambiare l’ordine di stratiticazione e quindi fare emergere dati altrimenti coperti. Lo spostamento (tramite drag-n-drop) ha delle limitazioni, ma sono dovute a dei meccanismi di ottimizzazione discussi piu’ avanti, comunque gia’ come è ora permette molta flessibilita’ all’utente.

E poi vi è la possibilita’ di poter definire in fase di configurazione una time-machine , sempre pescando i dati da wms remoti,

Sempre in fase di configurazione, la possibilità di impostare una trasparenza lato client per le mappe che provengono da un determinato wms, per consentire a chi imosta un portale di gestire le sovrapposizioni tra mappe di differenti sistemi wms.

Possibilità di definire strati nascosti sempre accesi, possibilit’a di definire scale di usabilita’ per detemrinati strati, il tutto sempre da configurazione che agisce poi su dati remoti.

La possibilit’a di invocare webapplication esterne al click sul layer, e presto anche al click sulla mappa.

Insomma a mio parere questo framework si sta avviando a divenire un ottimo strumento per chi vuole pubblicare portali gis basati su wms/wfs.

E quindi si va nella direzione della massima interoperabilita’ come prescritto da Inspire e nel rispetto degli standard OGC wms/wfs.

Infatti tutte queste funzionalit’a sono state implementate avendo sempre l’obiettivo di interagire con sistemi wms standards, e cercando di non fare ricorso a vendor-options specifiche di un determinato server wms rispetto ad altri.

Last but not least:

questo framework, in sede di esecuzione, opera una interessante ottimizzazione.
Infatti quando si accorge che svariate invocazioni vanno verso il medesimo server wms, le concentra in una unica chiamata multilayers.

Questa cosa è molto intelligente, perche’ ottimizza i tempi di risposta.

Mentre, molti sistemi che operano su wms per semplificare la gestione , tendono a scomporre in tante chiamate di singoli layers.

Ancora piu’ intelligente se si pensa che quando l’utente che consulta sposta gli strati in su/giu nell’albero, lui ricalcola l’aggregazione dei layer pe rle invocazioni.

Unica nota negativa:

questo framework è un po’ indigesto all’inizio quando si va a configurare i files in cui descrivere i server wms su cui operare, i server wfs su cui fare le ricerche,

e configurare i vari strati.

Questa ruvidità deriva dal fatto che Tolomeo nel tempo ha subito una mutazione genetica impressionante.
All’inizio era tutta una altra cosa, accedendo i dati su un db postgres, niente accesso a qms e tanto meno a wfs.

E se si voleva aggiungere uno strato si doveva scriversi una classe java.

Il comune di Prato seguendo le nostre indicazioni ha accettato di cimentarsi in questa impresa e ora il Tolomeo è divenuto un sistema totalemtne configurabile, senza alcuna necessità di conoscere Java, e tutte queste funzionalit’a sono preattivate e configurabili da files in xml.

Infine lo stack tecnologico:

Tolomeo è un war in java.

Si usa su tomcat.

Chi è interessato a verifica le sue funzionalita’, da questa pagina puo’ accedere a molti dei portali che abbiamo messo in piedi con Tolomeo.

http://www.regione.toscana.it/-/i-comuni-della-toscana

E familiarizzare con questo framework che effettivamente sta diventando un bell’aggeggino.

Ovviamente tolomeo non si ferma qui, ha anche altre caratteristiche, che noi in RT non riusciamo a sfruttre al monento attuale,
come le ricerche tramite CSW, e altre cosuccie.

E sono in cantiere altre evoluzioni.

Perdonate questo momento di quasi promozione, ma pensavo che fosse giusto spendere una lancia verso qesto framework che sicuramente è un esempio di un prodotto nato internamente alla Pubblica Amministrazione .

Saluti,


Andrea Peri
. . . . . . . . .
qwerty àèìòù