implementing web gis solutions using open source software karsten vennemann seattle
TRANSCRIPT
Implementing Web GIS Solutions
using open source software
Karsten Vennemann
Seattle
Open Source Web GIS Solutions
Talk Overview
Why and What What is Open Source (GIS)?Why use it ?
Overview of Web GIS Components of a Web GISWhat is out there ?
Some Foundations OGR, GDAL, PROJ4, GeoTools
Web GIS Engines MapserverGeoserver
Frameworks Mapbender, MapFish, CartowebOpen Layers, Ka-Map
Extending GIS Capabilities
Spatial Data Storage SolutionsAdditional Tools
Resources How can you build your own ?…5 simple steps
Ap
plic
ati
on
C
om
pon
en
ts
Talk Overview
Open Source Web GIS Solutions
What is Open Source (GIS)?
Why and What
While most open source geospatial software is built on the standards of the Open Geospatial Consortium (OGC) the term “Open Source” it is not synonymous with Open Standards because both proprietary and open source software can be compliant with the OGC Open Standards. http://www.opengeospatial.org
OSGeo is the organization that supports the development of the highest quality open source geospatial software. http://www.osgeo.org
Open source means that the source code is available to the general public for use, distribution, and modification from its original design free of charge (among a long list of other requirements)
Open Source ≠ Open Standards
Open Source Web GIS Solutions
Why use it ? General and incomplete listing
Why and What
It is free
User is in controlPick you favorite operating system: supports many operating systems:
Windows-Linux-Solaris-…No licensing issues (did we install one to many PCs with software XY?)Vendor independencyAccess to source code: don’t like something, need changes to the core
system, need extensions – hire somebody to change it right now
High performance, high quality, high interoperabilitydistributed programming effort, highly modular…System heterogenity - less prone to hacker attacks and virusesInteroperable – very advanced support of OGC open standards
Exceptional Support - Commercial and non commercial Mailing lists, user groups, Conferences, IRC channelsFast response times for bug fixes
typically tracked on the web accessible and open to everybody to report or fix a bug
Open Source Web GIS Solutions
What is out there ?
Overview of Web GIS
A whole lot !
More than 250 project entries onhttp://opensourcegis.org/
Selection of some of themost advanced and popular Web GIS components
Open Source Web GIS Solutions
Web browser
Mapping Engine
Server SideFramework
Overview of Web GIS
Schematic View Interoperable Web GIS
Web Server
Spatial Data
Vectorfile
Rasterfile
SpatialDB
Server computer(s)
Client Side Scripting (JavaScript/AJAX)
WMS/WFS
Mapping EngineMapping Engine
Client SideFramework
Client computer
Additional Services
Data Access (Read/Write)Caching and TilingExtended GIS FunctionalityWeb Processing Services
Open Source Web GIS Solutions
Modified from “The State of Open Source GIS”, Paul Ramsey, Sep. 2007, formerly Refractions Research, Victoria, BC, Canada
TileCache
WMS
Mapserver
FeatureServer
Geoserver
MapBender
CartoWeb
OpenLayers
Ka-Map
MapFish
Overview of Web GIS
Relations of Web GIS Components
File Sources
PostGIS
Open Source Web GIS Solutions
A few libraries that are the foundation of many Open Source and commercial Geospatial Software Packages
GDAL (Raster) and OGR (Vector) Geospatial Data Abstraction Library / OpenGIS Simple Features Reference Implementation
Tools for reading, writing and processing of raster and vector data sets -> formatsImportant base for many Desktop GIS systems e.g. ArcGIS
OGR extends Mapserver formatsOracle Spatial, ESRI Geodatabase (MDB), TIGER, MapInfo…
PROJ4 is a library for cartographic projection routinesstand alone projection utility “proj”libraries for more than 2500 projections (e.g. EPSG list)
GeoTools is an open source Java GIS toolkit is a library for cartographic projection routines
Similar usage as OGR and GDAL for Java based projectsUdig and Geoserver are based on GeoTools
Some Foundations
Some Foundations (Tools)
Open Source Web GIS Solutions
Mapserver (C)
Geoserver (Java)
Mapnik (C++)
Map Guide Open Source (C++) + “Fusion” by DM Solutions
Web GIS Engines
Web GIS Engines
Open Source Web GIS Solutions
Originally developed at the University of Minnesota (UMN), short “MapServer”
one of the most mature open source projects
written in C
Main Focus
rendering spatial data
development environment for spatially-enabled internet applications
Map output
CGI mapserv (Linux) and mapserv.exe (windows)
MapScript API available for Python, PHP, Perl, and Java
Map/Layer configuration text file .map
Formats
In: PostGIS, Oracle Spatial ArcSDE, WMS, GDAL and OGR formats
Out: GIF, JPG, PNG, all GDAL formats, WFS and WMS
Web GIS Engines
Map Server
Open Source Web GIS Solutions
Web GIS Engines
GeoServer
Main supporter The Open Planning Project (TOPP)
newer development than Mapserver)
written in Java, built on top of Geotools (like Udig)
Main Focus
rendering images, serving and editing spatial data
More differences to Mapserver
configuration web-based Graphical user interface (stored as xml)
transactional capabilities, support for shared editing
Formats
PostGIS, Shapefile, ArcSDE, DB2, Oracle(soon VPF, MySQL, MapInfo, WFS)
JPG, GIF, PNG, SVG, KML/KMZ, GML, Shapefile, GeoJSON, GeoRSS
WFS and WMS output
Open Source Web GIS Solutions
Web GIS Engines
GeoServer
Open Source Web GIS Solutions
Open LayersJavaScript API
Ka-MapJavaScript API
Client Side
JavaScript/Ajax Libraries
Frameworks
Web GIS Frameworks
Client-Server Side
JavaScript/Ajax LibrariesServer Side Scripts, Database
MapbenderPHP, JavaScript, PostGIS
MapFishPython (Pylons), Java Script(ExtJs) and Open Layers
CartowebPHP, JavaScript
Open Source Web GIS Solutions
Main supporter “MetaCarta”
object-oriented JavaScript library (using Prototype.js and Rico library)
Lets you add maps to any web page by embedding OpenLayer.js
no server-side dependencies
Easily reusable component…similar to Google Maps and MSN Virtual Earth Web Mapping APIs
“Slippy map style”
Input Formats
Tile sources: Virtual Earth, Worldwind, Yahoo & Google Maps, WMS
Vector layer input: KaMap, MapServer, GeoRSS, WFS, [KML]
Standard Tools
Google Like zoom bar, standard functions like zoom in/out pan
Client side - Frameworks
Open Layers
Open Source Web GIS Solutions
Main supporter “Camptocamp”
Widgets and plugins oriented architecture
MapFish Client - JavaScript framework – two parts
mapping part OpenLayers
user interface (GUI widgets) ExtJs library
MapFish Server
MapFish Server is a Python framework (based on Pylons)
Main Focus - Adding server side framework to OpenLayers
Advanced UI components: layer tree…
Server-side services: authentication, query…
Server-side processing: routing, editing…
Client/Server - Frameworks
MapFish
Open Source Web GIS Solutions
Client/Server - Frameworks
MapFish
Open Source Web GIS Solutions
Client/Server - Frameworks
MapFish
Open Source Web GIS Solutions
Client/Server - Frameworks
MapFish
Open Source Web GIS Solutions
Mapbender
Client/Server - Frameworks
Main supporter “WhereGroup”
Comprehensive Client - Server framework
implemented in PHP, JavaScript and XML
Management Database MySQL or PostgreSql
Functionality
displaying, navigating, editing and querying spatial data and maps
map services authorization services (OWS proxy functionality)
management interfaces for user, group and service administration
Management of WMS and WFS
User interface configuration and tool stored in data base
Input
WMS and WFS
Open Source Web GIS Solutions
Main supporter “Refractions”
PostGIS is an extension for PostgreSQL
adds support for geographic objects to PostgreSQL
enables PostgreSQL server to be used as a backend spatial database for GIS
Spatial operations and analysis simply mean running a (spatial) SQL query in the database
Similar functions as SDE and much more ….
Extending GIS Capabilities
Extending GIS CapabilitiesSpatial Data Storage solutions - PostGIS
Open Source Web GIS Solutions
FeatureServer
middleware for publishing and modifying geospatial data in lots of different formats to the web (RESTful Geographic Feature Service)
dynamic capabilities to read geographic features (or collections) with standard HTTP methods from distributed sources (aggregation)
translate geographic features between formatse.g. input shape file and open in Google Earth
TileCache
server software solution with caching and rendering capabilities
create your own local disk-based cache of any WMS server
use the resulting map tiles in supporting clientse.g. OpenLayers, Google maps, Virtual Earth, Worldkit
create a fast performing slippy style map a la Google Maps
Extending GIS Capabilities
Extending GIS Capabilities - Additional tools
Open Source Web GIS Solutions
But you still have one important question !
“How can I build my own WEB GIS ”?
Resources
in 5 simple steps…
Open Source Web GIS Solutions
Resources
ArticlesThe State of Open Source GIS,Version September 2007. By Paul Ramsey, formerly Refractions Research, Victoria. 49pages
Web SitesFree GIS Project http://www.freegis.org/Open source GIS list http://opensourcegis.org/Map Tools http://maptools.org/OSGeo http://www.osgeo.org/
Open Source Web GIS Solutions
Simple Feature Library (OGR) www.gdal.org/ogr
Geospatial Data Abstraction Library (GDAL)
www.gdal.org
GeoTools http://sourceforge.net/projects/geotools
PROJ4 http://www.remotesensing.org/proj
Mapserver http://ms.gis.umn.edu
Geoserver http://geoserver.org
Open Layers www.openlayers.org
Ka-Map http://ka-map.maptools.org
Cartoweb http://www.cartoweb.org
Mapbender www.mapbender.org
MapFish http://trac.mapfish.org/trac/mapfish
PostgreSQL www.postgresql.org
PostGIS http://postgis.refractions.net
Featureserver http://featureserver.org
TileCache www.tilecache.org
Resources
Open source utilities and websites
Open Source Web GIS Solutions
Free and Open Source Software for Geospatial 2008
Cape Town International Convention CentreSeptember 29, 2008 – October 3, 2008www.foss4g2008.org/
Resources
Open Source Web GIS Solutions
Local GIS user group:
“Cascadia Users of Geospatial Open Source”
http://groups.google.com/group/cugos
Monthly meeting every 3rd Wednesday, 5:30 pmIn the LizardTech offices, located near Pioneer Square:
The National BuildingSuite 2001008 Western AvenueSeattle, WA 98104
Resources
Open Source Web GIS Solutions
What to hear more about Feature Server and publishing data on the web?
How to Quickly & Easily Publish Your Data
Online Using Open Source
Josh Livni – Umbrella Consulting, LLC
“Managing Data & Models” Track
1:30 pm
Resources