This page last changed on Dec 15, 2011 by cholmes.

Overview

Add support for Time and Elevation for vector and raster data

Proposed By

Andrea Aime, Alessio Fabiani and Simone Giannecchini

Assigned to Release

First commit on trunk for 2.2.0, no current plan to backport to 2.1.x, but should be possible to do with some effort.

State

Choose one of: Under Discussion, In Progress, Completed, Rejected, Deferred

Motivation

Add explicit support for TIME, ELEVATION and other generic dimensions in WMS for both raster and vector data.

Proposal

Adding support for richer TIME/ELEVATION specs

The current time and elevation KVP parsers limit the expression of the time of interest or elevation to a single value, the proposal will expand the parsers capabilities to deal with lists of values.

Default values must be provided also in case they are not specified in the request.
For the time dimension the most recent time position available will be used as default value, for the elevation dimension one can be envisaged a configurable default value from the GUI.

Moreover the time KVP parser must be able to parse also the "current" value which will be assumed to be the most recent time position available for the selected layer.

Adding ND support to vector data

Adding support for ND in vector data means:

  • adding a flag to enable/disable time or elevation
  • selecting an attribute that will be matched to time and elevation for the sake of filtering
  • selecting a presentation/handling mode for the attribute values, which could be either a full enumeration of the values, continuos intervals (solid range) or discrete intervals (range and progression step in the range). This is required to advertise the values in the capabilities.

This information will be presented in the GUI as a new ND configuration panel and stored in the configuration among the FeatureTypeInfo metadata.

During the execution of GetMap/GetFeaturInfo requests the TIME/ELEVATION parameters will be turned into GeoTools filters to be merged with the envetual other filters coming from CQL_FILTER/FILTER/FEATURE_ID.

Adding ND support to raster data

Enabling time support in raster means:

  • checking the raster provider already supports the TIME/ELEVATION read parameters (which are well known parameters and metadata entries in raster land)
  • adding a flag to enable/disable time or elevation
  • selecting a presentation/handling mode for the attribute values, which could be either a full enumeration of the values, continuos intervals (solid range) or discrete intervals (range and progression step in the range). This is required to advertise the values in the capabilities.

Similarly to the vector path the GetMap/GetFeatureInfo requests will merge in the parsed TIME/ELEVATION read parameters among the ReadParameterValue[] provided to the reader when getting back the coverage.

Extend map output formats description

Map producers at the moment do not clearly advertise their capabilities. In particular adding the time/elevation domain into the mix we're interested in advertising explicitly the format capabilities, starting with what is already there and allowing for more:

  • transparency
  • palette
  • tiling support
  • multivalue support

The last flag marks the output format as being able to handle multiple maps in the output, when that is available the code will generate not a single map, but one per time/elevation value provided and let the output format merge them somehow.
Possible applications can be animations, extractions of map in time series as a ZIP format, embedding in TIFF multi image support and the like.
The proposal will not include an implementation of such output format though, will just make sure all the necessary hooks are there support it.

Extending capabilities documents

The WMS capabilities (both 1.1 and 1.3) documents will be extended to advertise time/elevation support on the layers that have ND support enabled.

Feedback

This section should contain feedback provided by PSC members who may have a problem with the proposal.

Backwards Compatibility

State here any backwards compatibility issues.

Voting

Ben Caradoc-Davies: +1
Alessio Fabiani: +1
Andrea Aime: +1
Chris Holmes (Chair)
Christian Mueller:
Gabriel Roldan: +1
Justin Deoliveira: +1
Jody Garnett: +1
Mark Leslie:
Rob Atkinson:
Simone Giannecchini: +1

Links

[JIRA Task|]
[Email Discussion|]
[Wiki Page|]

Document generated by Confluence on May 14, 2014 23:00