MapServer Support for Web
Coverage Services
Stephen Lime - Minnesota DNR
Dr. Thomas E. Burk - University of Minnesota
MUM 2004 - Ottawa, Canada
Presentation Overview
•
•
•
•
•
Background
Implementation
Usage
Demo Application
Future Work
MapServer
• Pre-dates OGC interoperability efforts
• Two primary objectives, via the Internet:
o
o
create maps and associated products (e.g., scalebars,
legends and reference maps)
query spatial data
• Two primary components:
o
o
mapserv CGI provides out-of-box functionality
MapScript, access to the C/C++ API from popular
programming languages
GDAL
• Geographic Data Abstraction Library
• Middleware for raster data access, similar in
concept to ODBC
• Provides most MapServer raster input and
some output capabilities
• Provides limited image processing support
for operations such as projection and
resampling
MapServer OGC Support
• Web Mapping Service (WMS) - a perfect match
for existing MapServer functionality
• Web Feature Service (WFS) - MapServer supports
non-transactional elements, equates roughly to
MapServer query support
• Web Coverage Service (WCS) - furthest spec
from core MapServer functionality, must rely
heavily on MapServer/GDAL interface
Groundwork
• MODIS Download Facility – early 2000
 First
extension of MapServer that has several
characteristics of recent WCS standard
• Lead to development of a SEEDS proposal
for NASA funding
 Partners:
University of North Dakota and the
Jet Propulsion Laboratory
WCS Overview
• Like WFS, WCS is a natural progression from
WMS
• “Unfiltered” access to a “coverage”, values or
properties at a set of geographic locations
• WCS 1.0.0 is limited to simple, that is grid,
coverages *whew*
• Supports simple queries in the form of spatial,
temporal and/or other property subsets
Design Assumptions
• Not a ground-up WCS implementation

Will not support the full WCS specification
 Build upon functionality already available within MapServer
 Any extensions to MapServer must be made available via the
core product, the CGI interface and MapScript
 Must integrate with OGC specification implementations
supported by MapServer (e.g. WMS and WFS)
 Relies upon GDAL for data extraction, transformation (e.g.
projection) and formatting
Our “ToDo” List
• Enable ISO8601 extended date format parsing
• Enhance tiling to support:
o
o
filtering based on tile attributes
specification of band/bands as an attribute
• Alter GDAL/MapServer interface to support key
WCS features (multi-band raw mode)
• Update MapServer compilation process
• Developed interface to process WCS requests via
the MapServer CGI program
o
GetCapabilities/DescribeCoverage/GetCoverage
Spatial/Temporal Tiling
• Mechanism to organize and present a large
volume of data using a single MapServer
layer definition
• Has utility beyond immediate WCS needs, for
example for access control
• Simplifies development of client applications
• Potential performance benefits
• May be cumbersome to setup
Tiling Example: Multiple Images
1.img
4.img
7.img
2.img
5.img
8.img
3.img
6.img
9.img
shape
location
polygon
1.img
polygon
2.img
polygon
3.img
polygon
4.img
polygon
5.img
polygon
6.img
polygon
7.img
polygon
8.img
polygon
9.img
Tiling Example: Single
Image, Temporal Bands
NDVI_03.img
shape
band
date
location
polygon
1
2003-05
NDVI_03.img
May
polygon
2
2003-06
NDVI_03.img
June
polygon
3
2003-07
NDVI_03.img
July
polygon
4
2003-08
NDVI_03.img
August
Development Status
• Elements of WCS (e.g. tiling) is enabled in
4.2 release, beta WCS support is now
available in 4.3 development version
• Requires GDAL and Proj.4
• Supports GetCapabilities,
DescribeCoverage and GetCoverage
Enabling WCS
• Very similar to enabling WMS and WFS
• Define WCS specific metadata elements

GDAL can discover some values (e.g. resolution)
 Optionally, these values can be hardcoded
• Set the layer DUMP attribute
• If necessary, structure image data appropriately
using new tiling capabilities
An Example
LAYER
NAME "ndvi"
STATUS OFF
TYPE RASTER
METADATA
wcs_label "North Central US MODIS-based NDVI Images for 2002"
ows_srs
"EPSG:26915 EPSG:4269 EPSG:4326"
ows_extent "159707 4597895 1400207 5501395"
wcs_resolution "500.0 500.0"
wcs_formats "GEOTIFF_INT16"
wcs_nativeformat "raw binary"
wcs_timeposition "2002-001,2002-033,…,2002-193"
wcs_timeitem "imgdate"
LAYER
END
NAME "ndvi_idx"
DUMP TRUE
TYPE TILEINDEX
TILEINDEX 'ndvi_idx'
DATA "mod13"
END
END
Demo Application
• MODIS Download Facility
• Run the demo...
Future Enhancements
• Non-temporal range subsetting


•
•
•
•
•
•
Via TILEINDEX layers
Via raster cell values
Automatic metadata discovery
XML encoded requests
Support for multiple spatial interpolation methods
True support of ISO8601 date formats
WCS client support
Oh yeah, need to write documentation
Questions?
Descargar

MapServer: Web Coverage Server