Chapter 4. Coordinate Types
Table of Contents
Four types of coordinates receive special treatment by these
conventions: latitude, longitude, vertical, and time.
We continue to support the special role that the
play in the COARDS convention to identify coordinate type.
We extend COARDS by providing explicit definitions of dimensionless
vertical coordinates. The definitions are associated with a coordinate
variable via the
formula_terms attributes. For backwards compatibility
with COARDS use of these attributes is not required, but is strongly recommended.
Because identification of a coordinate type by its units is complicated
by requiring the use of an external software
package [UDUNITS], we provide two optional
methods that yield a direct identification.
axis may be attached to a coordinate
variable and given one of the values
T which stand for a longitude,
latitude, vertical, or time axis respectively.
standard_name attribute may be used
for direct identification. But note that these optional
attributes are in addition to the required COARDS metadata.
Coordinate types other than latitude, longitude, vertical, and time
are allowed. To identify generic spatial coordinates we recommend
axis attribute be attached to these
coordinates and given one of the values
Z. We attach no
specific meaning to the
axis values in this case,
but note that they may provide a useful hint to an application that
plots spatially oriented data. We strongly recommend that coordinate
variables be used for all coordinate types whenever they are applicable.
The methods of identifying coordinate types described in this
section apply both to coordinate variables and to auxiliary
coordinate variables named by the
attribute (see Chapter 5,
Variables representing latitude must always explicitly include the
units attribute; there is no default value.
units attribute will be a string formatted
as per the
The recommended unit of latitude
degrees_north. Also acceptable
Example 4.1. Latitude axis
float lat(lat) ; lat:long_name = "latitude" ; lat:units = "degrees_north" ; lat:standard_name = "latitude" ;
Application writers should note that the Udunits package does not
recognize the directionality implied by the "north" part of the unit
specification. It only recognizes its size, i.e., 1 degree is defined
to be pi/180 radians. Hence, determination that a coordinate is a
latitude type should be done via a string match between the given unit
and one of the acceptable forms of
Optionally, the latitude type may be indicated additionally by providing
standard_name attribute with the value
latitude, and/or the
with the value
Coordinates of latitude with respect to a rotated pole should be given
or equivalents, because applications which use the units to identify
axes would have no means of distinguishing such an axis from real
latitude, and might draw incorrect coastlines, for instance. It would
also not generally be appropriate to attach an axis attribute to a
rotated-latitude coordinate variable. Such a variable can be identified