To define a coordinate reference system, a grid_mapping variable is defined, 
with variable attributes to define the coordinate reference system attributes. 
(http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.5/ch05s06.html)

I would like to define coordinates, be they coordinate variable or auxiliary 
coordinates, with respect to a coordinate system. The mechanism I have is the 
grid_mapping attribute on a data variable.  This suggests that all coordinates 
referenced by a data variable are with respect to the same coordinate reference 
system.

I have a use case, where a file contains a data variable referencing coordinate 
variables: Easting, Northing, Height (above mean sea level).  These are all 
defined with respect to the Ordnance Survey of Great Britain coordinate 
reference system, a parametric transverse Mercator with a defined vertical 
datum.

To be CF compliant I need to include two auxiliary coordinates, latitude and 
longitude.  I can calculate these for a specifically defined coordinate 
reference system, using the definition of the transverse Mercator projection.  
I will also include the height with respect to this new datum as an 
auxiliary_coordinate. 

I would like to provide the definition of this coordinate reference system, a 
geographic coordinate system, in my file, so I create a new grid_mapping 
variable with the definitions, but I cannot connect my auxiliary coordinates to 
this grid_mapping and the coordinate variables to the OSGB grid_mapping 
variable as I only have a singleton grid_mapping attribute on the data variable.

I have talked this through with colleagues and we have thought of two plausible 
approaches:

1. reference_system attribute for a coordinate/auxiliary_coordinate variable

Any coordinate or auxiliary_coordinate variable may have an attribute: 
reference_system
This attribute points to a grid_mapping variable, which the coordinate is 
defined with respect to.

In the example use case then:
 - no grid_mapping attribute exists on the data variable, 
 - the easting, northing and height coordinate variables reference the OSGB 
grid_mapping variable
 - the latitude, longitude and geogHeight auxiliary_coordinate variables 
reference the geographic coordinate system grid_mapping variable


2. expanded syntax for grid_mapping attribute on a data variable

A data variable's grid_mapping attribute may use a complex syntax, derived from 
the cell_methods and cell_measures approach.  using this model, the list of 
coordinate names is provided as a ':' separated list, with the last value being 
the grid_mapping variable name; a space is used to indicate the start of a new 
list, linking different coordinate names to a different grid_mapping variable 
name.

In the example use case then the data variable's grid_mapping attribute would 
read:
 - grid_mapping = "Easting:Northing:Height:OSGB Lat:Lon:geogHeight:GeogCS"


How well do either of these approaches deliver the requirement to define 
coordinates with respect to a coordinate reference system?

I would like to put a proposal up, is there a preferred option amongst the 
community?

many thanks
Mark Hedley
Met Office
UK 
_______________________________________________
CF-metadata mailing list
[email protected]
http://mailman.cgd.ucar.edu/mailman/listinfo/cf-metadata

Reply via email to