Opened 8 years ago
Closed 4 years ago
#100 closed defect (fixed)
Clarifications to the preamble of sections 4 and 5
Reported by: | jonathan | Owned by: | davidhassell |
---|---|---|---|
Priority: | medium | Milestone: | |
Component: | cf-conventions | Version: | |
Keywords: | Cc: |
Description
Dear all
I have the honour of opening ticket number 100. In this ticket, Steve Hankin and I have a number of changes to propose to the text of section 5, with the intention of clarifying it, not changing what it means. Therefore this is a defect ticket, but please object if you think it is changing the meaning, or making it any less clear!
Cheers
Jonathan
Replace this text in the first paragraph
A variable's spatiotemporal dimensions are used to locate data values in time and space. This is accomplished by associating these dimensions with the relevant set of latitude, longitude, vertical, and time coordinates.
with
A data variable's dimensions are used to locate data values in time and space or as a function of other independent variables. This is accomplished by associating these dimensions with the relevant set of latitude, longitude, vertical, time and any non-spatiotemporal coordinates.
These changes clarify that coordinate systems belong to data variables (rather than any other type of variable in a CF-netCDF file) and recognise the use of non-spatiotemporal dimensions.
Replace this text in the second paragraph
All of a variable's dimensions that are latitude, longitude, vertical, or time dimensions (see Section 1.2, "Terminology") must have corresponding coordinate variables, i.e., one-dimensional variables with the same name as the dimension
with
Any of a variable's dimensions that is an independently varying latitude, longitude, vertical, or time dimension (see Section 1.2, "Terminology") and that has a size greater than one must have a corresponding coordinate variable, i.e., a one-dimensional variable with the same name as the dimension
These changes remove the implication that spatiotemporal scalar coordinates might be prohibited, and allow for discrete axes (section 4.5, used extensively in section 9).
Replace this text in the third paragraph
All of a variable's spatiotemporal dimensions that are not latitude, longitude, vertical, or time dimensions are required to be associated with the relevant latitude, longitude, vertical, or time coordinates via the new coordinates attribute of the variable
with
Any longitude, latitude, vertical or time coordinate which depends on more than one spatiotemporal dimension must be identified by the coordinates attribute of the data variable.
This change is for clarity.
Replace this text in the fifth paragraph
The use of coordinate variables is required whenever they are applicable. That is, auxiliary coordinate variables may not be used as the only way to identify latitude and longitude coordinates that could be identified using coordinate variables.
with
If the longitude, latitude, vertical or time coordinate is multi-valued and varies in only one dimension, it is not permitted to store it as an auxiliary coordinate variable.
This change is for simplicity and clarity. The use of coordinate variables where applicable is already required by the second paragraph.
Append to the fifth paragraph
If the longitude, latitude, vertical or time coordinate is single-valued, it may be stored either as a coordinate variable with a dimension of size one, or as a scalar coordinate variable (Section 5.7).
This change recognises the use of spatiotemporal scalar coordinates.
Change History (10)
comment:1 Changed 8 years ago by Dave.Allured
comment:2 Changed 8 years ago by jonathan
Dear Dave
Thanks for your comment. I think the existing text implies that it is optional to include the 1D Cartesian coordinates when they are not lon and lat and 2D lon and lat have been provided. It says it is "recommended", which is not the same as "required". The CF checker will produce only a warning if they are not present, not an error. But we could say explicitly they are optional. Is this what you mean? I am curious about why they take up so much space, being only 1D? Perhaps you mean that the grid itself is 1D? In that case, the Cartesian coordinates are I suppose auxiliary coordinate variables too.
Best wishes
Jonathan
comment:3 Changed 8 years ago by jonathan
Dear all
On the email list, Randy Horne has raised an issue of clarity regarding the use of non-spatiotemporal coordinates. Since that point is rather similar to others in this ticket, I'd like to add to the present proposal, to make changes in section 4, as follows:
Delete the sentence, "Coordinate types other than latitude, longitude, vertical, and time are allowed" at the start of the third paragraph.
Insert new text at the start of the section
The commonest use of coordinate variables is to locate the data in space and time, but coordinates may be provided for any other continuous geophysical quantity (e.g. density, temperature, radiation wavelength, zenith angle of radiance, sea surface wave frequency) or discrete category (see Section 4.5, "Discrete axis", e.g. area type, model level number, ensemble member number) on which the data variable depends.
continuing with the existing text, "Four types of coordinates ...".
Jonathan
comment:4 Changed 8 years ago by jonathan
- Summary changed from Clarifications to the preamble of section 5 to Clarifications to the preamble of sections 4 and 5
comment:5 Changed 8 years ago by jonathan
Since no further comments or objections have been made for more than a month, this defect ticket is accepted according to the rules.
comment:6 Changed 8 years ago by rhattersley
I appreciate this ticket has been accepted, but I'm concerned that it contains a mistake with regards to the replacement text for the fifth paragraph:
If the longitude, latitude, vertical or time coordinate is multi-valued and varies in only one dimension, it is not permitted to store it as an auxiliary coordinate variable.
Unlike the previous wording, this appears to rule out the ability to encode a trajectory. In general for a trajectory, each of the longitude, latitude, vertical, and time coordinates may be multi-valued and vary in only one dimension. But those coordinates all wish to vary over the *same* dimension, which can only be done using auxiliary coordinate variables.
If this is a genuine issue, should this ticket be re-opened or a new ticket raised?
comment:7 follow-up: ↓ 8 Changed 8 years ago by jonathan
Dear Richard
Quite right, thanks. The current text does not exclude this possibility, because it is more vague about the intentions. I propose a modified version:
If the longitude, latitude, vertical or time coordinate is multi-valued, varies in only one dimension, and varies independently of other spatiotemporal coordinates, it is not permitted to store it as an auxiliary coordinate variable.
OK?
Cheers
Jonathan
comment:8 in reply to: ↑ 7 Changed 8 years ago by rhattersley
Replying to jonathan:
If the longitude, latitude, vertical or time coordinate is multi-valued, varies in only one dimension, and varies independently of other spatiotemporal coordinates, it is not permitted to store it as an auxiliary coordinate variable.
Yes - that looks OK to me. Thank you.
comment:9 Changed 4 years ago by davidhassell
- Owner changed from cf-conventions@… to davidhassell
- Status changed from new to accepted
comment:10 Changed 4 years ago by painter1
- Resolution set to fixed
- Status changed from accepted to closed
Jonathan,
Thanks to you and Steve for working on clarification. In the current document (CF 1.6), I have trouble understanding the intent of section 5, paragraph 7:
If the required two-dimensional latitude and longitude variables are present and correctly identified, are the one-dimensional Cartesian coordinates also required, or optional? Either way, could you please add an explicit statement about this?
In two different use cases that I have encountered, when the data variable is a single horizontal grid, the Cartesian coordinates will increase file size by roughly 67%. I would favor making the Cartesian coordinates explicitly optional. Thanks for your consideration.
--Dave