Introduzione a webgis e Open Web Services (OWS)



Похожие документы
MapServer. Marco Negretti. Politecnico di Milano Polo Regionale di Como

GIS e dati - Breve Introduzione

Utilizzo dei geoservizi in QGIS

Geoservizi web OGC per il monitoraggio ambientale

Master SIT Settembre Corso Web & GIS Master in Sistemi Informativi Territoriali AA 2005/2006. Chiara Renso. ISTI- CNR c.renso@isti.cnr.

Introduzione a Quantum GIS (QGIS) - passaggio dal software ArcView 3.x a software GIS OpenSource

GIS e Geo WEB: piattaforme e architetture. Docente: Cristoforo Abbattista abbattista@planetek.it

La realizzazione di WebGis con strumenti "Open Source".

WebGIS. Le mappe in rete, una rete di mappe.

Realizzazione di un geoservizio conforme ad INSPIRE per i DB topografici 2k della Regione Lombardia

GEOPORTALE Arpa Piemonte Sistema Informativo Ambientale Geografico

Attività previste per lo sviluppo del progetto di ricerca:

Ministero dell Ambiente e della Tutela del Territorio e del Mare GUIDA ALL ACCESSO DEI WEB SERVICE MEDIANTE QUANTUM GIS

WebGis Comune di Novara

Il Portale del Servizio Geologico d Italia d come strumento di diffusione delle banche dati geologiche e geotematiche

GEOPORTALE Arpa Piemonte

GUIDA ALL ACCESSO DEI WEB SERVICE. MEDIANTE Autocad Map 3D

Workshop PTA azione 5 WebGis Soluzione WebGis Regione Lombardia

ArcGIS - ArcView ArcCatalog

Moka Web La nuova architettura Moka

Strumenti GIS Open Source

Il Geoportale dei Progetti Sismologici DPC-INGV

Dott. Leonardo Donnaloia Roma, 13 ottobre 2011

MagiCum S.r.l. Progetto Inno-School

Open Source e Free Software

Prodotti WebGIS commerciali

QGIS e Geoservizi. Paolo Zatelli. Dipartimento di Ingegneria Civile, Ambientale e Meccanica Università di Trento

Master in Sistemi Informativi Territoriali AA 2005/2006. Chiara Renso. ISTI- CNR Contenuti del Corso

Il Software Open Source per la Geomatica. Francesco Pirotti CIRGEO -Dipto TESAF

Comune di Conegliano GeoPortale Web Services WMS - WFS

Visualizzatore GIS delle emissioni in atmosfera

ArcGIS 10 strumenti di editing e ArcCatalog. Marco Negretti Politecnico di Milano marco.negretti@polimi.it

Utilizzo del SW aperto e libero nel Sistema Informativo Territoriale della Regione Sardegna

Direzione generale per la tutela del territorio e delle risorse idriche

Dal Sistema Informativo Territoriale all Infrastruttura di Dati Territoriali:

Sistemi informativi geografici liberi ed open source

GIORNATE TRIESTINE UTENTI GVSIG aprile gvsig e didattica GIS

WEBGIS 1.0. Guida per l utente

Arch. Claudio Schifani 1

WebGIS partecipativi e raccolta dati sul campo: analisi, proposte architetturali e prime sperimentazioni

MetaMAG METAMAG 1 IL PRODOTTO

Visualizzare livelli WMS e WFS

L esperienza GeoSDI Della Protezione Civile Nazionale

Basi di Dati Spaziali

Introduzione a Quantum GIS (QGIS) - passaggio dal software ArcView 3.x a software GIS OpenSource

Il Geoportale ed il Nuovo Repertorio Cartografico comunale. Comune di Pisa

Quantum GIS per la pianificazione urbanistica

Presentazione Data Base

Il software libero per le analisi geografiche

19. LA PROGRAMMAZIONE LATO SERVER

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

EUROPEAN COMPUTER DRIVING LICENCE. Use of the GIS Software. Syllabus

GUIDA OPERATIVA AI SERVIZI WEBGIS MEDIANTE ARCGIS

Introduzione a phpmyadmin

Setup e installazione

Siti interattivi e dinamici. in poche pagine

Installazione & Configurazione Php e MySQL su Mac Os X. Php

Sistemi informativi territoriali open source

GIS più diffusi. Paolo Zatelli. Dipartimento di Ingegneria Civile ed Ambientale Università di Trento. GIS più diffusi

Lezione 1. Introduzione e Modellazione Concettuale

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

Corso di PHP. Prerequisiti. 1 - Introduzione

IL FITOFOR: UNO STRUMENTO PER LA GESTIONE DELLE INFORMAZIONI FITOSANITARIE. Marino Vignoli, Elisa Moneti, M. Miozzo DREAM - Italia

Autodesk Map parte III query

Corso di Basi di Dati Spaziali. WebGIS e GeoServer. Tipologie di WebGIS. Vantaggi e Svantaggi. Geography Markup Language (GML) Standard

EXPLOit Content Management Data Base per documenti SGML/XML

Sommario. Introduzione Architettura Client-Server. Server Web Browser Web. Architettura a Due Livelli Architettura a Tre Livelli

Architetture Applicative

Paolo Dilda Dipartimento di Architettura e Pianificazione Laboratorio Analisi Dati e Cartografia

Il CMS Moka. Giovanni Ciardi Regione Emilia Romagna

DBMS e Linguaggi di programmazione nell'era di Internet

Guida alla connessione ai servizi WMS con Quantum GIS

ESERCITAZIONE Semplice creazione di un sito Internet

Una metodologia di progettazione di applicazioni web centrate sui dati

Reti di Calcolatori: una LAN

Utilizzo dei servizi WMS e WFS

Il Software Open Source per la Statistica Ufficiale

VII Meeting degli utenti italiani di Grass

L o. Walter Ambu japs: una soluzione agile (

Il SIT integrato della Comunità Montana Valtellina di Tirano.

Uno strumento di base per la pubblicazione di dati geografici su Web

Транскрипт:

Università degli Studi di Genova 18 maggio 2011 Introduzione a webgis e Open Web Services (OWS) Marco Negretti - marco.negretti@polimi.it Politecnico di Milano

Indice Introduzione generale webgis Open Web Services - Geoservizi web MapServer Open Source??? 2

Introduzione ai webgis e Open Web Services 3

schema browser browser browser browser/ browser/ applicazione applicazione browser/ applicazione webgis OWS web SERVER file (shape, dwg,...) dati "interni" DBMS... OWS dati "esterni" 4

funzionalità Visualizzazione/interrogazione dei dati webgis: navigazione tramite interfaccia web OWS: WMS (Web Map Service), WFS (Web Feature Service), WCS (Web Coverage Service) SOS (Sensor Observation Service)... Modifica ed elaborazione dei dati OWS: WFS e SOS transactional WPS (Web Processing Service)... 5

webgis browser webgis interrogazione interrogazione estensione carta estensione carta contenuti cartografici (layer) contenuti cartografici (layer) accesso ai dati accesso ai dati cartografia CTR 6 strade provinciali confini comunali

webgis browser webgis ricerca delle informazioni richieste dal ricerca delle informazioni richieste dal client: client: per i layer richiesti per i layer richiesti relativamente alla zona di interesse relativamente alla zona di interesse cartografia strade CTR 7 comuni

webgis browser webgis generazione generazione dell'immagine finale dell'immagine finale cartografia 8

webgis architettura server based tutte le operazioni di accesso, elaborazione dati e navigazione vengono svolte sul server ogni nuova richiesta si traduce in una richiesta al server che la elabora per costruire una nuova pagina HTML di risposta piena indipendenza del servizio dalla configurazione HW e SW del client prestazioni compromesse da situazioni di carico di lavoro non previste 9

architettura client based il server distribuisce i dati e il codice necessario per l elaborazione al client le operazioni vengono quindi svolte in locale non si hanno problemi di sovraccarico si dipende dall architettura del client: necessità di plug-in sul client per visualizzare le carte client in grado di sostenere le operazioni richieste soluzione mista webgis 10

Open Web Services (OWS) Standard definiti dall Open Geospatial Consortium OGC: http://www.opengeospatial.org/ Interoperabilità e indipendenza dall ambiente software nell accesso ai servizi La comunicazione è basata sul linguaggio xml (extensible Markup Language) che è utilizzato per la definizione e la descrizione delle applicazioni La comunicazione si basa (nella gran parte dei casi) su protocollo HTTP 11

Open Web Services (OWS) Possiamo descrivere il funzionamento in quattro fasi: Il client contatta il server in merito alle caratteristiche del servizio fornito Il server fornisce al client un documento xml contenente le funzionalità e i dati disponibili Il client fa la propria richiesta al server Il server risponde in base a quanto richiesto scambio di informazioni automatizzato 12

Open Web Services (OWS) Sono stati definiti diversi standard: Web Coverage Service (WCS) - 2.0 Web Feature Service (WFS) - 2.0 Web Map Service (WMS) - 1.3.0 Web Processing Service (WPS) - 1.0.0 Catalog Service (CS-W) - 2.0.2 Sensor Observation Service (SOS) - 1.0.0... e altri ancora 13 http://www.opengeospatial.org/standards

Open Web Services (OWS) HTTP OWS CLIENT A OWS Server 1 OWS CLIENT B OWS Server 2 OWS CLIENT C OWS Server 3 OWS 4 OWS 5 14

Open Web Service - un esempio Open Web Service Laboratorio di Geomatica http://ows.como.polimi.it/ Web service geografico per la gestione e la distribuzione di contenuti cartografici e dei metadati ad essi associati Servizio WMS dimostrativo per i dati vettoriali dei DB topografici comunali della Regione Lombardia Servizio WMS dimostrativo per i dati della Regione Sardegna Servizio CS-W per la pubblicazione dei metadati 15

WMS - esempio Il WMS client chiede al WMS server i dati disponibili http://ows.como.polimi.it/cgi-bin/wms_desio? SERVICE=WMS& VERSION=1.3& REQUEST=getcapabilities 16

17 WMS - esempio <Service> <Name>OGC:WMS</Name> <Title>WMS db Desio</Title> sul servizio <Abstract>Test sulle funzionalità WMS sui dati a livello comunale</abstract> <KeywordList> <Keyword>WMS</Keyword> <Keyword> db2k</keyword> <Keyword> Regione Lombardia</Keyword> </KeywordList> <OnlineResource xlink:href="http://ows.como.polimi.it/cgibin/wms_desio?"/> <ContactInformation> <ContactPersonPrimary> <ContactPerson>Marco Negretti</ContactPerson> <ContactOrganization>Politecnico di Milano- Polo Regionale di Como</ContactOrganization> </ContactPersonPrimary> <ContactPosition>Technical Officer</ContactPosition> <ContactAddress> <AddressType>Postal</AddressType> <Address>Vial Valleggio 11</Address> informazioni generali

WMS - esempio dati disponibili <Layer queryable="1" opaque="0" cascaded="0"> <Name>Unita_Volumetrica</Name> <Title>Unita Volumetrica</Title> <LatLonBoundingBox minx="9.17459" miny="45.5875" maxx="9.23707" maxy="45.6423"/> <BoundingBox SRS="EPSG:32632" minx="513619" miny="5.04824e+06" maxx="518474" maxy="5.05432e+06"/> </Layer> <Layer queryable="1" opaque="0" cascaded="0"> <Name>Edificio</Name> <Title>Edificio</Title> <LatLonBoundingBox minx="9.17459" miny="45.5875" maxx="9.23707" maxy="45.6423"/> <BoundingBox SRS="EPSG:32632" minx="513619" miny="5.04824e+06" maxx="518474" maxy="5.05432e+06"/> </Layer> 18

WMS - esempio Il WMS client inoltra una richiesta al WMS server http://ows.como.polimi.it/cgi-bin/wms_desio? SERVICE=WMS& VERSION=1.3& REQUEST=GetMap& FORMAT=image/png& SRS=EPSG:32632& BBOX=515100,5051000,515500,5051500& WIDTH=400&HEIGHT=500& LAYERS=Area_stradale,Edificio,Area_verde WMS client WMS Server 19

WMS - esempio Il WMS server accede ai sui dati e restituisce le immagini dei layer richiesti nella zona di interesse WMS client WMS Server 20

WMS - esempio Queste immagini vengono sovrapposte ed unite ad altri eventuali dati locali dal client e viene generata l immagine finale 21

WMS client 22 Accedere ai dati da browser è un "po' scomodo" Lo scopo di questi servizi è condividere la cartografia in modo standard l'utente può utilizzare qualsiasi strumento purché questo sia conforme agli standard OGC Cambia la prospettiva rispetto al webgis, in cui chi pubblicava i dati doveva preoccuparsi anche di fornire gli strumenti di navigazione un esempio con OpenJump

WMS client - OpenJump GIS Desktop open source basato su Java 23 http://openjump.org/

WMS client - OpenJump Oltre ai dati in locale posso utilizzare dati da server WMS/WFS URL del server: http://ows.como.polimi.it/cgi-bin/wmsardinia 24 seleziona cosa aprire: WMS

WMS client - OpenJump layer pubblicati dal WMS server (GetCapabilities) layer selezionati per la visualizzazione (GetMap) 25

WMS client - OpenJump I layer sono visualizzati, eventualmente in sovrapposizioni con altri dati aperti in locale 26 http://geomatica.como.polimi.it/corsi/sw_gis/openjump13.pdf

OWS Quindi chi pubblica i dati non si preoccupa del SW sarà utilizzato per accedervi chi legge i dati non è vincolato dal formato originale di questi Meno vincoli all'accesso dell'informazione 27

28 alcuni strumenti per realizzare webgis e/o OWS MapServer Università del Minnesota http://www.mapserver.org/ GeoServer http://geoserver.org/ MapGuide Autodesk http://mapguide.osgeo.org/ pywps http://pywps.wald.intevation.org/ Zoo project http://www.zoo-project.org/ istsos http://istgeo.ist.supsi.ch/site/projects/istsos GeoMedia WebMap Intergraph http://www.intergraph.com/ ArcIMS ESRI http://www.esriitalia.it/ Open Source

29 http://www.mapserver.org

30 MapServer - introduzione MapServer è un ambiente di sviluppo open source per la costruzione di applicazioni web dedicate alla pubblicazione di cartografia Scritto in linguaggio C Sviluppato iniziato dalla Univesity of Minnesota (UMN) con il progetto ForNet sostenuto dalla NASA insieme al Minnesota Department of Natural Resources Lo sviluppo è continuato nell'ambito di un altro progetto NASA, il progetto TerraSIP

31 MapServer - introduzione MapServer è in continua crescita, con diversi sviluppatori e enti nel mondo che si stanno occupando del suo sviluppo Il progetto MapServer aderisce all'open Source Geospatial Foundation (OSGEO) OSGEO ha come obiettivo di incoraggiare l'uso e lo sviluppo collaborativo dei progetti open source che ne fanno parte GRASS GDAL/OGR gvsig... http://www.osgeo.org

MapServer - introduzione web server: apache, IIS S.O: linux/unix, Windows, Mac disponibilità dei file sorgenti da compilare sorgenti compilabili pacchetti precompilati Debian Ubuntu Windows Mac OS X... 32

MapServer - introduzione vettoriali: shapefile, PostGIS, ESRI ArcSDE, Oracle Spatial, MySQL e altri mediante la libreria OGR (http://www.gdal.org/ogr/) raster: TIFF/GeoTIFF, EPPL7 e altri mediante la libreria GDAL (http://www.gdal.org) Implementa le specifiche del "Open Geospatial Consortium (OGC)": WMS, WFS, WCS, SOS 33

MapServer - navigazione cartografia Strumenti di navigazione/interrogazione della carta 34 Selezione dei contenuti da visualizzare

35 MapServer - navigazione cartografia

MapServer - schema di funzionamento 36 immagine da: http://www.mapserver.org/_images/architecture.png

MapServer - schema di funzionamento MapServer CGI generazione delle pagine HTML tramite chiamata al programma mapserv (directory /cgi-bin) MapScript utilizzo di linguaggi di script per la generazione delle pagine HTML dinamiche e accesso ai servizi di MapServer tramite chiamate alle API 37

MapServer CGI utente internet browser pagine html dinamiche web server webgis map file template Server archivio dati 38 MapFile: definizione delle modalità di visualizzazione delle carte template file: struttura della pagina html

39 MapServer - MapFile MapFile file di testo nel quale vengono definiti gli oggetti e i loro parametri in modo tale da determinare le modalità di visualizzazione definizione dell oggetto 1 nella definizione di un oggetto è possibile includere un altro oggetto definizione dell oggetto 2 oggetto1 parametro1 valore parametro2 valore... oggetto1.1 parametro valore... end... end oggetto2 parametro1 valore... end

Esempio layer: definizione delle caratteristiche del layer (file di dati, unità di misura, template per le query,...) class: definizione dei parametri di visualizzazione. Per ogni layer posso definire più classi in modo da cambiare le modalità di visualizzazione in base alla scala corrente o al valore di un attributo MapServer - MapFile style: stile di visualizzazione 40 metadata: elenco dei metadati http://www.mapserver.org/mapfile http://geomatica.como.polimi.it/corsi/sw_gis/mapfile5.pdf

MapServer - TemplateFile struttura base per la generazione delle pagine di navigazione normale codice HTML + definizione delle variabili : [nome variabile] MapServer CGI genererà la pagina di navigazione utilizzando il template come base, sostituendo alle variabili i valori assegnati nella sessione corrente 41 http://www.mapserver.org/mapfile/template.html

MapServer - TemplateFile Tramite una form MapServer CGI viene chiamato e gli viene passata una stringa con i parametri di stato: http://geo28.como.polimi.it/cgi-bin/mapserv?img.x=164& img.y=166& mode=browse&layer=reticolo&zoomdir=1&zoomsize=2 &imgxy=149.5+149.5&... In funzione dei quali viene generata una pagina HTML Alle variabili viene sostituito il loro valore corrente 42

MapServer - MapScript PHP MapScript Python MapScript pagine html dinamiche utente internet browser web server webgis map file C API html + script Server archivio dati 43 MapFile: definizione delle modalità di visualizzazione delle carte http://www.mapserver.org/mapscript/ file html + script: gli script richiamano le API di MapServer per visualizzare gli oggetti (carte, legenda,...)

file HTML + script MapServer - MapScript HTML script chiamate alle API 44 esempio in PHP

MapServer - MapScript Sempre tramite una form vengono passati i parametri di stato: http://geo28.como.polimi.it/wgis_00/cartaj.phtml?layer=bacino_po& layer=ret_carto&zoomsize=2&... Gli script vengono eseguiti e costruiscono la pagina HTML Le API di MapServer vengono chiamate come altre funzioni e contribuiscono alla generazione della pagina 45

46 MapServer - WMS server MapServer supporta le seguenti richieste WMS (1.0.0, 1.0.7, 1.1.0, 1.1.1, 1.3.0): GetCapabilities, restituisce un documento XML con i metadati del server GetMap, restituisce un immagine in base alle richieste inoltrate dal client GetFeaturesInfo, restituisce informazioni sulle features interrogate DescribeLayer, restituisce un documento XML con la descrizione dei layer pubblicati GetLegendGraphic, restituisce un immagine con i simboli grafici utilizzati http://www.mapserver.org/ogc/wms_server.html http://geomatica.como.polimi.it/corsi/sw_gis/mapserver_ows.pdf

MapServer - WFS server MapServer supporta le seguenti richieste WFS (1.0.0): GetCapabilities, restituisce un documento XML con i metadati del server GetFeature, restituisce un documento XML con la geometria e gli attributi della feature richiesta DescribeFeatureType, restituisce un documento XML con la descrizione della feature richiesta non sono implementate le richieste di modifica delle features Transaction e LockFeature GeoServer (http://geoserver.org) http://www.mapserver.org/ogc/wfs_server.html 47 http://geomatica.como.polimi.it/corsi/sw_gis/mapserver_ows.pdf

MapServer 12/05/2011 rilasciata la versione 6.0.0 48

49 Open Source???

open source??? Chi garantisce che lo sviluppo del sw open source continui se non c'è una società che vende le licenze? 50

open source??? Chi garantisce che lo sviluppo del sw open source continui se non c'è una società che vende le licenze? NESSUNO! Ma questo vale anche per il SW closed source!!! 51

SICAD/open* - SW closed source 1979 SIEMENS 1998 SICAD Geomatics (100% SIEMENS) 2002 AED Graphics => AED-SICAD 2007 SW utilizzato e valido ma si termina supporto e sviluppo - 7.1A20 Windows - 7.1A25 Unix PERCHE'? 52 * il nome open non si riferisce al codice

SICAD/open AED-SICAD: distribuisce SW ESRI ESRI azionista di AED-SICAD Perché continuare a sviluppare due SW in concorrenza tra loro? SICAD/open abbandonato dal punto di vista commerciale più che ragionevole, ma gli utenti di SICAD? agevolati a passare a sw ESRI 53

GRASS - SW open source 1985 GRASS 1.0 U.S. Army - Construction Engineering Research Laboratory (USA-CERL) 1991 1995 GRASS 4.0 pubblicazione su internet, interesse di altre società e università versione per Linux: Yung-Tsun Kang Michigan State University 54 1996 USA-CERL annuncia l'abbandono del progetto 1997 GRASS 4.2 - Baylor University Texas

GRASS - SW open source 1999 GRASS 5.0 licenza GPL Baylor e M. Neteler (Uni Hannover) 2002 Inizia lo sviluppo di GRASS 5.1 all'itc-irst Trento 2005 GRASS 6.0.0 ITC-irst/GRASS Development Team 2006 nasce OSGEO 2011 GRASS 6.4.1 GRASS Development Team 55

56 Nota si possono trovare n altri esempi di software open che hanno terminato lo sviluppo closed che continuano a supportare i propri utenti da decenni ma: nel caso di sw open il codice resta se c'è interesse e risorse lo sviluppo può "passare di mano" nel caso di sw closed il codice viene chiuso in un cassetto e non si può fare nulla, malgrado ci possa essere sia l'interesse che le risorse per continuare lo sviluppo

Riferimenti http://www.aed-sicad.com http://de.wikipedia.org/wiki/sicad/open http://www.esri.com/partners/apps/search/? fuseaction=overview&bp_id=3151 http://grass.osgeo.org/devel/grasshist.html 57

Domande? 58 http://creativecommons.org/licenses/by-nc-nd/3.0/