Version 1 (modified by spascoe, 14 years ago) (diff)


OwsNotes / DataServicesProposal

Service Proposals

Implementing a CSML-API service

A minimal CSML API must be able to do the following with a CSMLDataset

  1. Serve the CSMLFeatureCollection element.
  2. Expose the CSML affordances associated one of its CSMLFeatures.
  3. Serve the output of CSML affordances as a CSMLDataset + associated data files. This will be called a CSMLBundle.

Optionally it would also be useful to:

  1. Serve parts of the CSMLFeatureCollection for efficient querying of properties such as grid axes and units.

OwsNotes/OgcServicesReview discusses how the different OGC services could be used to expose CSML affordances. Based on that page and the premises above we could implement a CSML-API service as a combination of WFS and WPS services:

A Basic WFS service

This would serve CSMLFeatureCollections. Querying parts of the CSMLFeatureCollection structure would be suppored using XLINK property queries. A nice additional feature would be to allow delivery of features as JSON for easier AJAX client integration.

A WPS-affordance service (WPSa)

CSML affordances would be implemented as WPS processes. Each process would produce a CSMLBundle output. We would need to decide whether affordance operations block until complete or whether the WPS store function must be implemented. WPS-store adds more flexibility and better response but requires cache control.

Implementing visualisation services

We want to:

  1. Plot geospatial data as lat/lon horizontal slices.
  2. Overlay one feature upon another.
  3. Produce both "quick-look" and "publication-quality" images.

Work on the IPCC DDC provides a good prototype for what is possible. We could again implement a pair of OGC services.

A WMS service

The IPCC DDC already serves CSML GridSeries? features through a WMS. More work is required to make this code more generic (in particular mapping the WMS and CSML data models). Other features that can usefully be viewed as a projection in lat/lon could be renderred to images and served via WMS, for instance trajectories. Tools such as OpenLayers? can then be easily configured to overlay WMS sources.

A WPS-vis service (WPSv)

Publication quality plots and plots that aren't lat/lon projections (e.g. timeseries) would be serves as a WPS. The IPCC DDC currently implements this as a custom request on the WMS server. A WPS could support queueing of requests that might take a long time (e.g. animations) using WPS-store. Overlays could also supported with more coding time (but also see OwsNotes/CrossSiteIssues?).