FOSS4G Victoria 25.9.07
geopole.org
Integrating Mashups and Open Source WebGIS
Pirmin KalbererSourcepole AG, Bad Ragaz, Switzerlandwww.sourcepole.ch
FOSS4G Victoria 25.9.07
Sourcepole
Linux based software development
GIS-Knoppix: first GIS live CD
UMN MapserverInitial Ruby bindingsSDE raster support
OGR / GDALInterlis driverSchema support for PostGIS driver
FOSS4G Victoria 25.9.07
Agenda
Mashups versus GIS
Combined architecture
geopole.org tour
Used OSS components
Scalability & performance
FOSS4G Victoria 25.9.07
Mashups versus GIS
Map MashupsApplication data displayed in a map (e.g. Google Maps)Javascript API's -> client sideapplication-centric
Classic Web-GISApplication- and base map data in one databaseServer-side map creationmap-centric
FOSS4G Victoria 25.9.07
Mashup Architecture
Web
ser
ver
Clie
nts
BrowserJavascript viewer
Custom application
Javascript-API
goog
le/y
ahoo
/etc
.
FOSS4G Victoria 25.9.07
Typical Web-GIS Architecture
Serv
er
geodata
(DB, Shape, TIFF)
Apache/PHPviewer & custom
application
Clien
ts
Browser
FOSS4G Victoria 25.9.07
MashupsSlow processing for high number of featuresAPI dependency
Drawbacks
Typical Web GISOwn map data neededGIS knowledgeIntegration of custom application in map viewer
FOSS4G Victoria 25.9.07
„Web 2.0 GIS-Architecture“
Web
ser
ver
Raster files(TIFF)
Clie
nts
BrowserJavacript viewer
Mapserver(WMS)
Application server
PostgreSQL/PostGIS
Javascript-API
goog
le
yaho
o
etc.
Geo module(WFS/ GeoJSON)
FOSS4G Victoria 25.9.07
Issues to address
Client-side combination of OGC services and Javascript API's
Mercator projection of Google Maps
Support for multiple base map sources
Support for local geodata
Integration of map viewer into custom application
FOSS4G Victoria 25.9.07
geopole.org tour 1/5
Place search
Multiple layer overlays
GeoRSS overlay
FOSS4G Victoria 25.9.07
geopole.org tour 2/5
Choice of base map
>1000 features
KML- & WMS publication
FOSS4G Victoria 25.9.07
geopole.org tour 3/5
Mouse-over feature info
Multiple features at one position
FOSS4G Victoria 25.9.07
geopole.org tour 4/5
OpenID login
Drag&Drop import from spreadsheet
Custom columns
FOSS4G Victoria 25.9.07
geopole.org tour 5/5
Feature info with HTML elements
Custom table editor
Edit/Create/Delete rows
FOSS4G Victoria 25.9.07
Commercial add-ons
File upload
GIS data import (Shapefiles, etc.)
Dedicated PostgreSQL schema
PostGIS-Administration
Non-public maps
Customized embedding
FOSS4G Victoria 25.9.07
Architecture
WMS server
Proxy server
Internet
App. server WMS serverApp. server
DB server DB server
FastCGIhttp
http
FOSS4G Victoria 25.9.07
Used OSS components
Operating system: Linux with VServer
Database: PostgreSQL with PostGIS
Application framework: Ruby on Rails
Map viewer: OpenLayers
WMS server: UMN Mapserver
HTTP server/proxy: Mongrel/nginx
FOSS4G Victoria 25.9.07
Ruby on Rails
Framework for database-backed web application
Model-View-Control pattern
Ruby language
Built-in Ajax support
GIS libraries:GeoRuby: PostGIS accessGraticule, GeoKit: geocodingRuby bindings for GDAL, Mapserver, etc.
FOSS4G Victoria 25.9.07
Scalablity/Performance
Load-balancingApplication webserverUMN Mapserver (Fast-CGI)Tile server
Cachingmap tilesREST protocols
FOSS4G Victoria 25.9.07
Roundup
Web 2.0 GIS platform proposals:Combination of OGC protocols and Javscript APIsState-of-the-art application frameworksUse of basic internet protocols gives interoperability and scalabilityAvoiding service vendor lock-inIntuitive map interaction
FOSS4G Victoria 25.9.07
Links
http://www.geopole.org/
http://www.rubyonrails.org/
http://www.openlayers.org/
http://postgis.refractions.net/
http://mapserver.gis.umn.edu/
http://nginx.net/
FOSS4G Victoria 25.9.07
geopole.org
Questions?Live demo
Thanks!
Pirmin Kalberer<pka at sourcepole.ch>