browsingand downloadingspatialdata throughwfs webclient...
TRANSCRIPT
1
Browsing and downloading Spatial Data
through WFS web client
– case National Geoportal of Finland
INSPIRE conference 2011
28th June, 2011
Jani Kylmäaho
National Land Survey of Finland
NATIONAL LAND SURVEY – DOWN TO EARTH
2
Browsing and downloading Spatial Data
through WFS web client
– case National Geoportal of Finland
INSPIRE conference 2011
28th June, 2011
Jani Kylmäaho
National Land Survey of Finland
NATIONAL LAND SURVEY – DOWN TO EARTH
3
� Finnish National Geoportal – Geoportal.fi
� WFS web client – why?
� Challenges
� Solution
� Architecture
� Future development
� Conclusions
Contents
4
Paikkatietoikkuna – Geoportal.fi
� National geoportal
o INSPIRE Discovery Service + User interfaces for View, Download,
Transformation and Registry Services
o INSPIRE support site
o A joint venture with major Geographical Information data
producers in Finland
� Development started 2008, ongoing
� Open Source implementation
o Based on integration of Open Source components
o Free distribution of source code
5
2011
6
2011
7
WFS client
8
WFS web client – why?
� INSPIRE WFS services coming up…
� Need for a platform-independent, easy-to-use testing
environment for WFS services
� Need for visualization of WFS services
o To show the linkage between map and attribute data
o Support for showing attribute data more flexibly than by using
WMS GetFeatureInfo
o Show WFS featuretypes on top of other map layers
9
Challenges
� Overall user experience
o How to make WFS services more user friendly?
� Compatibility
o Several versions of WFS and GML standards exist
o Standards are being used in a multitude of ways
� Performance
o How to visualize a WFS service so that it works fluently in all web
browsers?
o How to prevent clogging the WFS servers?
� Open Source
o Are there Open Source tools for doing this?
10
Solution
� Minimize processing done by the web browser
o (Some) Web browsers are not capable of handling complex GML
structures in an efficient way -> use JSON
� Use a server application for processing the data
o GeoTools library can handle the various WFS and GML versions ->
interaction with the WFS servers using GeoTools
� Performance
o Separate parsing for geographic and attribute data
o Use of tiling, threading, timers and caching to enable smooth user
experience and prevent server clogging
o Predefined WFS service- and featuretype related parameters
11
Architecture
Internet Internet
WFS
WFS
WFS
Liferay
Liferay
WFS
Apache
PostgreSQL
Request
Response
GEOPORTAL
12
Flow of actions 1
Internet
1) Add WFS layer to map
view (with 1 to N feature
types)
2) Generate picture URL:s for
N tiles
3) Generate OpenLayers
requests for tiles using
layerId, Bbox & ZoomLevel
4) Timer to limit the n:o of
simultaneous requestsRequest
Response
13
Flow of actions 2
Liferay
Liferay
Apache
PostgreSQL
5) Distribute requests using
Load Balancer
6) Check access rights
7) Generate requests for
each WFS featuretype
based on pre-configured
info (not yet WFS requests)
Request
Response
14
Flow of actions 3
Internet
WFS
WFS
WFS
Liferay
Liferay
WFS
8) Geoprocessing servlet
with thread pooling uses
GeoTools to formulate
WFS requests -> send to
WFS servers
9) There is a cache of WFS
Schemas for GeoTools ->
schemas don’t need to
be retrieved each time a
request is made
15
Flow of actions 4
Internet
WFS
WFS
WFS
Liferay
Liferay
WFS
Request
Response
10) WFS servers return
answers which are
interpreted using
GeoTools (geometry)
and a self-made XML
parser (attributes)
16
Flow of actions 5
Internet
Liferay
Liferay
Apache
PostgreSQL
Request
Response
11) Response is
relayed back
to user’s web
browser as
PNG (image)
and JSON
(tabular
information)
17
Conclusions
� It is possible to make an efficient WFS client which:
o Works in all browsers
o Works with a majority of WFS services
o Performs well
o Is user-friendly
o Is based on Open Source products
� …But it takes a lot of work to do it
18
Future development
� Possibility to download data to own computer
o Most of the work: taking care of different data licensing terms
� Wizard for defining the WFS service and featuretype
parameters in the Geoportal
� Possibility to show more user friendly values in attribute
table (e.g. placename service, codelist value ”550” -> to be
shown as ”Municipality”)
� Support for WFS 2.0 and (stored?) queries
� Support for SLD visualizations of GML data
19
http://www.geoportal.fi