Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Longitude and Latitude not required for projected coordinates #133

Merged
merged 8 commits into from
Aug 21, 2019
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 9 additions & 5 deletions ch05.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -183,12 +183,16 @@ _This section has been superseded by the treatment of time series as a type of d
[[grid-mappings-and-projections, Section 5.6, "Horizontal Coordinate Reference Systems, Grid Mappings, and Projections"]]
=== Horizontal Coordinate Reference Systems, Grid Mappings, and Projections

When the coordinate variables for a horizontal grid are not longitude and latitude, the true latitude and longitude coordinates may be supplied via the **`coordinates`** attribute.
A __grid mapping variable__ is required if, in addition, it is desired to describe the mapping between the
given coordinate variables and the true latitude and longitude coordinates, or to describe the
dblodgett-usgs marked this conversation as resolved.
Show resolved Hide resolved
A __grid mapping variable__ may be referenced by a data variable, to describe the mapping between the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A grid mapping variable may be referenced by a data variable to describe the mapping between the

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I prefer to keep some punctuation, as ths is a long sentence with a number of clauses

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@marqh That comma is grammatically wrong.

given coordinate variables and the true latitude and longitude coordinates, to describe the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should get rid of the word 'true' here and elsewhere. It is confusing.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i agree

figure of the Earth used to define the latitude and longitude coordinates, or to describe another
coordinate reference system definition used by some coordinates or auxiliary coordinates. Such a
grid mapping variable provides the description of the mapping via a collection of attached
coordinate reference system definition used by some coordinates or auxiliary coordinates.

When the coordinate variables for a horizontal grid are not longitude and latitude, it is required that further information is provided to geo-locate the horizontal position. A __grid mapping variable__ provides this information.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the last sentence of this paragraph should say instead "A grid mapping variable and/or true latitude and longitude coordinates provide this information.".

This is to make it clear that is is still OK to provide just lats/lons (with no gridmapping), or both lats/lons and a grid mapping (as was the case pre v1.8).

Thanks

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@davidhassell
This is the explicit intent of the very next sentence. The sentence following this one makes it clear that it is fine to include longitudes and latitudes to assist in location the data in horizontal space. It also mandates this practice if there is no grid_mapping supplied.

Does this meet your requirement that it should be clear that it is OK to provide just longitudes and latitudes with no grid_mapping?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We actually have a deeper problem in the document. The text assumes that latitude and longitude coordinate values are somehow immutable 'true' values. This is a bad assumption. Latitude and longitude without a grid_mapping (and without a vertical datum / ellipsoid, which the grid_mapping doesn't really address) are untethered, approximate quantities. The ambiguity is ignorable for climate models and coarse resolution observation data, but not for imaging satellite or LIDAR data where cell sizes are on the order of 0.5 - 10 meters. This is part of the reason I suggest that we drop the word 'true' when referring to latitude and longitude.

We have such a long history of accepting this naïve expression of latitude and longitude that I don't think it's useful to try to force the use of a grid_mapping for latitude and longitude, and our grid_mapping attributes don't actually include sufficient information to fully solve the problem, but I'm strongly tempted to include verbiage pointing out the weakness.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JimBiardCics whilst I agree with the sentiment and detail of your comments here, I feel that you are raising a separate issue from the one under discussion in this PR. May I ask that this topic be moved into a separate thread please?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@marqh I was editorializing, and I'm OK with not tackling the whole issue here. I do think we should take advantage of this PR to remove the adjective 'true' from the descriptions of latitude and longitude variables.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not quite - I'd like it to be clear that is also OK to have both a grid mapping variable and lat/lon coordinate variables, hence the "and/or" in my original suggested text. The current text only mentions including lat/lon coordinates in the absence of a grid mapping variable. This is important for backwards compatibility.


If no __grid mapping variable__ is provided and the coordinate variables for a horizontal grid are not longitude and latitude, then it is required that the true latitude and longitude coordinates are supplied via the **`coordinates`** attribute.

A grid mapping variable provides the description of the mapping via a collection of attached
attributes. It is of arbitrary type since it contains no data. Its purpose is to act as a container
for the attributes that define the mapping. The one attribute that all grid mapping variables must
have is grid_mapping_name, which takes a string value that contains the mapping's name. The other
Expand Down