Opened 3 years ago

Last modified 6 months ago

#153 new enhancement

Requires related to specific standard names — at Version 1

Reported by: martin.juckes Owned by: cf-conventions@…
Priority: medium Milestone:
Component: cf-conventions Version:
Keywords: Cc:

Description (last modified by martin.juckes)

A significant number of standard names contain, in their definitions, explicit specifications for additional required metadata. For instance, if the standard_name is "region" then there are constraints on the allowed values of the data variable. The standard name descriptions cannot include examples or markup, and the specification of the rules is not as clear as in the convention text. It also appears that the rules are not checked by the CF checker (at least not the few that I have looked at in detail) and I think the best way to get consistent checking would be to first create a well structured summary of these rules in the conventions document.

The specific proposal is add a new Appendix which lists the rules with examples where appropriate.

It will take some time to complete the list. I propose that we add a provisional list, after agreeing the format and approach, and work towards completion later.

Appendix D: Rules associated with standard names

Some standard names bring additional constraints on the meta-data and/or data values of the variables they are associated with. This appendix list such names, grouped according to the types of constraint, and provides usage examples where needed.

Required Coordinates

A common constraint involves the requirement that a particular coordinate or set of coordinates be present. The following table lists the rules and associated standard names. An explanation of each rule follows below.

Rule Description
Standard Name(s)
Required coordinate(s)
1 Area Fraction The fractional area in a cell covered by a particulate area type.
2 Lifted from Parameters defined in terms of lifting from a reference level
atmosphere_convective_available_potential_energy, atmosphere_convective_inhibition, atmosphere_level_of_free_convection, atmosphere_lifting_condensation_level
3 Lifting range Parameter defined in terms of lifting through a specified range
4 Radiances For radiance variables a direction must be specified
downwelling_photosynthetic_photon_radiance_in_sea_water and others
5 Reference state Variables which depend on reference air temperature and humidity
mass_concentration_of_pm_*_ambient_aerosol_in_air, mass_fraction_of_pm_*_ambient_aerosol_in_air
air_temperature, relative_humidity
6 Wavelength Functions of wavelength

In all cases, the structure follows the same pattern, illustrated by the following examples for case 1. Area Fraction:

   float cropcover(lat,lon);
      cropcover:standard_name = 'area_fraction';
      cropcover:coordinates =  'crop';
      cropcover:units = '1';
   character crop(nchar);
      crop:standard_name = 'area_type';
      crop = 'crop';

Other rules

Quantities representing a layer average or sum

Many "layer" quantities require vertical coordinates with bounds.

  • *_atmosphere_layer[_*];
  • *_ocean_layer[_*];
  • *_soil_layer[_*];

Variation of variables in sigma coordinates due to surface pressure change

change_in_energy_content_of_atmosphere_layer_due_to_change_in_sigma_coordinate_wrt_surface_pressure: must have a vertical coordinate variable (axis=Z).

   float deltae(sig);
      deltae:standard_name = 'change_in_energy_content_of_atmosphere_layer_due_to_change_in_sigma_coordinate_wrt_surface_pressure';
      deltae:units = 'J m-2';
   float sig(sig);
      sig:axis = 'Z';
      sig:standard_name = 'atmosphere_sigma_coordinate';
      sig:bounds = 'sig_bnds';
      sig:units = '1';
   float sig_bnds(2,sig);  # required because of _atmosphere_layer

Temporal change

Time rate of change or displacement over time require bounds on time coordinate:

  • change_over_time_*;
  • *_displacement;

Comments for discussion

In some cases the wording of standard_name definitions could be interpreted as a recommendation or suggestion rather than a requirement. If some of these are intended only as suggestions, that should be flagged.

Change History (1)

comment:1 Changed 3 years ago by martin.juckes

  • Description modified (diff)
Note: See TracTickets for help on using tickets.