Difference between revisions of "Rational for WCS and WFS Combination for point data"

From Earth Science Information Partners (ESIP)
Line 28: Line 28:
 
The WCS DescribeCoverage supports both regular and irregular coverages.
 
The WCS DescribeCoverage supports both regular and irregular coverages.
  
[Regular Data](http://data1.datafed.net:8080/NRL?service=WCS&version=1.1.2&request=DescribeCoverage&Identifiers=NAAPS_sigma)
+
[Regular Data](http://data1.datafed.net:8080/NRL?service=WCS&version=1.1.2&request=DescribeCoverage&Identifiers=NAAPS_press)
  
 
     <SpatialDomain>
 
     <SpatialDomain>
Line 57: Line 57:
 
This is a description of irregular space dimensions. The data can still be an irregular grid, bot example fine grid along the equator and sparse on the poles. On in this case, the coverage is not a grid at all, but a station network.
 
This is a description of irregular space dimensions. The data can still be an irregular grid, bot example fine grid along the equator and sparse on the poles. On in this case, the coverage is not a grid at all, but a station network.
  
== Existing metadata in DescribeCoverage ==
+
== More Dimension Metadata in DescribeCoverage ==
  
 
The regular lat, lon, and time dimensions are described in the DescribeCoverage document  
 
The regular lat, lon, and time dimensions are described in the DescribeCoverage document  
  
 
     <Axis identifier="elev">
 
     <Axis identifier="elev">
         <ows11:Title>atmosphere_sigma_coordinate</ows11:Title>
+
         <ows11:Title>air_pressure</ows11:Title>
 
         <AvailableKeys>
 
         <AvailableKeys>
             <Key>0.998</Key>
+
             <Key>1000.0</Key>
             <Key>0.9915</Key>
+
             <Key>975.0</Key>
            <Key>0.9805</Key>
 
 
             ...
 
             ...
             <Key>0.0105</Key>
+
             <Key>10.0</Key>
            <Key>0.003</Key>
 
 
         </AvailableKeys>
 
         </AvailableKeys>
 +
        <ows11:DataType>double</ows11:DataType>
 +
        <ows11:UOM>mbar</ows11:UOM>
 +
        <ows11:Metadata>
 +
        <cf:AxisMetadata>
 +
            <cf:axis positive="down">Z</cf:axis>
 +
            <cf:standard_name>air_pressure</cf:standard_name>
 +
        </cf:AxisMetadata>
 +
        </ows11:Metadata>
 +
    </Axis>
  
This is an elevation dimension. Irregular dimensions are expressed as axises, with some metadata like
+
This is an elevation dimension. Irregular dimensions are expressed as axises, with some standard metadata like datatype and Units Of Measure. The WCS adds some CF-NetCDF metadata into the AxisMetadata node. This is still all according to the standard,
  
 
== Missing Metadata in DescribeCoverage ==
 
== Missing Metadata in DescribeCoverage ==
 +
 +
While the extra dimensions in gridded data can be expressed with WCS 1.1, for station data the location table causes trouble. Here is a typical location table:
 +
 +
    loc_code,  lat,  lon,    elev
 +
    010730025, 33.55, -86.78, 54
 +
    010730028, 33.53, -86.85, 51
 +
    ....
 +
 +
 +
    <Axis identifier="location">
 +
        <ows11:Title>Location Table</ows11:Title>
 +
        <AvailableKeys><Key>loc_code</Key></AvailableKeys>
 +
        <ows11:Metadata xlink:type="simple" xlink:href="http://data1.datafed.net:8080/EEA_AirBase?service=WFS&Version=1.0.0&Request=GetFeature&typename=AirBase_D&filter=field:TSP&outputFormat=text/csv" />
 +
    </Axis>
  
 
== Combining WCS and WFS ==
 
== Combining WCS and WFS ==

Revision as of 16:58, August 23, 2011

Back to WCS Wrapper

Project on SourceForge

Objective

While WCS was designed for gridded data, we have found it to be a good delivery standard for station data also. With a minimal convention it's possible to use the combination of WCS and WFS for the purposes that they were designed for, and create an interoperable station data convention.

Experience with Station Point Data

We have used the combination of WCS and WFS at Datafed for station data for six years. Here are a few observations:

  • Typical station data looks like 3D, but is in reality 2D.
    • In cube data, you have typically at least 4 dimensions, lat, lon and time.
    • In point data, you have typically 2 dimensions, location and time.

The station has 2 attributes: lat and lon, but it's still one dimension. This is an important distinction which was not in the design requirements for the WCS standard. Fortunately, the combination of WCS and WFS works great.

Web Coverage and Feature Services

The Web Coverage Service was designed to deliver continuous coverages. The basic dimensions are geographic boundingbox and time. In general, each coverage point has little metadata about itself.

The Web Coverage Service was designed to deliver rich metadata about stationary objets. While the feature has a boundingbox, the lat and lon are not dimensions. They are attibutes of features.

A Coverage can be Irregular

The WCS DescribeCoverage supports both regular and irregular coverages.

[Regular Data](http://data1.datafed.net:8080/NRL?service=WCS&version=1.1.2&request=DescribeCoverage&Identifiers=NAAPS_press)

   <SpatialDomain>
       <ows11:BoundingBox crs="urn:ogc:def:crs:OGC:2:84" dimensions="2">
           <ows11:LowerCorner>-179.5000 -89.5000</ows11:LowerCorner>
           <ows11:UpperCorner>+179.5000 +89.5000</ows11:UpperCorner>
       </ows11:BoundingBox>
       <GridCRS>
       <GridBaseCRS>urn:ogc:def:crs:OGC:2:84</GridBaseCRS>
           <GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType>
           <GridOrigin>-179.5000 -89.5000</GridOrigin>
           <GridOffsets>+1.0000 +1.0000</GridOffsets>
           <GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS>
       </GridCRS>
   </SpatialDomain>

The GridBaseCRS element manifests the projection: "WGS 84"; type "2dSimpleGrid" origin -179.5, -89.5 and increments 1.0 and 1.0 degrees. In this case, the grid has regular lat and lon dimensions.

[Irregular Data](http://data1.datafed.net:8080/AQS?service=WCS&version=1.1.2&request=DescribeCoverage&Identifiers=AQS_D)

   <SpatialDomain>
       <ows11:BoundingBox crs="urn:ogc:def:crs:OGC:2:84" dimensions="2">
           <ows11:LowerCorner>-126.0000 +24.0000</ows11:LowerCorner>
           <ows11:UpperCorner>-65.0000 +52.0000</ows11:UpperCorner>
       </ows11:BoundingBox>
     </SpatialDomain>

This is a description of irregular space dimensions. The data can still be an irregular grid, bot example fine grid along the equator and sparse on the poles. On in this case, the coverage is not a grid at all, but a station network.

More Dimension Metadata in DescribeCoverage

The regular lat, lon, and time dimensions are described in the DescribeCoverage document

   <Axis identifier="elev">
       <ows11:Title>air_pressure</ows11:Title>
       <AvailableKeys>
           <Key>1000.0</Key>
           <Key>975.0</Key>
           ...
           <Key>10.0</Key>
       </AvailableKeys>
       <ows11:DataType>double</ows11:DataType>
       <ows11:UOM>mbar</ows11:UOM>
       <ows11:Metadata>
       <cf:AxisMetadata>
           <cf:axis positive="down">Z</cf:axis>
           <cf:standard_name>air_pressure</cf:standard_name>
       </cf:AxisMetadata>
       </ows11:Metadata>
   </Axis>

This is an elevation dimension. Irregular dimensions are expressed as axises, with some standard metadata like datatype and Units Of Measure. The WCS adds some CF-NetCDF metadata into the AxisMetadata node. This is still all according to the standard,

Missing Metadata in DescribeCoverage

While the extra dimensions in gridded data can be expressed with WCS 1.1, for station data the location table causes trouble. Here is a typical location table:

   loc_code,  lat,   lon,    elev
   010730025, 33.55, -86.78, 54
   010730028, 33.53, -86.85, 51
   ....


   <Axis identifier="location">
       <ows11:Title>Location Table</ows11:Title>
       <AvailableKeys><Key>loc_code</Key></AvailableKeys>
       <ows11:Metadata xlink:type="simple" xlink:href="http://data1.datafed.net:8080/EEA_AirBase?service=WFS&Version=1.0.0&Request=GetFeature&typename=AirBase_D&filter=field:TSP&outputFormat=text/csv" />
   </Axis>

Combining WCS and WFS

Necessary Location Metadata

Optional Location Metadata

Custom Location Metadata