COWS
-
Upload
ali-gentry -
Category
Documents
-
view
17 -
download
3
description
Transcript of COWS
COWS
CEDA OGC Web Services Framework
Stephen Pascoe
COWS Motivation
Develop lightweight OGC services Don't attempt to implement the specifications in full
Enable integration with custom web applications
Build upon a fully-featured web framework Layered design
Support multiple OGC services in one stack
COWS Architecture
Built on Pylons web-appliction framework
Python Eggs – Automatic download/install of components
WSGI – A protocol for deploying Python web-apps to production HTTP servers
HTTP Server
Pas
te
Pylons
Middleware
WebApplication
COWS
WMS WCS W*S
Data Model
WSGI
WSGI
Apache + mod_wsgi,FastCGI,Python HTTPD
E.g. Authentication
LibraryStandard InterfaceApplication-specific Code
COWS Package Structure
cows: top level package cows.model
Implements toe OWS-common data model cows.service
Provides service interfaces and implementations cows.pylons
OGC service controllers and XML templates OGC parameter and exception handling
due for reorganisation cows.pylons.project_templates
pre-canned application template(s)
WSGI Middleware
Add security to a COWS Application by adding security middleware
Python Paste package enables inclusion of middleware via a config file – no change to COWS code required:
CowsApplication
AnotherFilter
AuthenticationFilter
[pipeline:CowsApplication]pipeline = AuthenticationFilter AnotherFilter CowsApplication
Example middleware chain:
HTTP Request
HTTP Response
Development workflow
Install COWS Create web-application from template Customise Test Package Deploy
Example Applications
IPCC Data Distribution Centre
NDG Discovery Portal
http://www.ipcc-data.org/maps
NERC Portals Project
2 Different Station datasets
Integrate with CSML
Pylons Application plots CSML Features
2 visualisation interfaces
KML references plot service
COWS WMS provides in-browser support.
DEFRA UKCP Portal
Highly Dimensional Dataset
Time Period
Emission Scenario
Percentile (CDF)
Meaning Period
UKMO UM Rotated Grid but we need to plot it on GoogleMaps (Transverse Mercator)
Custom WMS operation to serve Grid-box values as JSON
COWS Future
Clean-up and publicised release for NDG3 cows-0.3 on the way
WFS being developed as part of the C-SEKT project
WPS developed for UKCP portal. Will be included in COWS in the future (post v0.3)