Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-06-11 Thread Alan D. Snow
> But, if the user wants to check the values for consistency, then when they 
> conflict, the user should assume the CF value is correct. This gives the data 
> writer a little extra incentive to try to get things right when converting 
> the WKT metadata to CF.

I think that if the values are not consistent, it does not make sense to 
default to CF or WKT as either one or both could be incorrect depending on your 
starting format of the CRS and how the conversion was done.

In the proposal, it adds this clarification:
> *If conflicts exist between the representations, you should inform the 
> provider so they can be addressed.*

Reasoning for this wording mentioned in the proposal:

> The CRS could originate from several different formats such as WKT, PROJ, or 
> SRS Authority Code. If there are errors in the conversion process to the CF 
> or WKT representation, only the provider would have the original CRS 
> representation. As such, if there are conflicts, the provider would be the 
> best source to go to in order to resolve the conflicts.


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-642734208

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-06-11 Thread Alan D. Snow
Sounds like we should target the discussion towards the wording of the 
clarification to ensure all parties are on-board.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-642706043

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-06-11 Thread taylor13
Yes, to me [that](https://github.com/JonathanGregory) seems like a good 
solution.  If a user wants to assume that when there are conflicts, the WKT 
values take precedence, then that's o.k.  But, if the user wants to check the 
values for consistency, then when they conflict, the user should assume the CF 
value is correct.  This gives the data writer a little extra incentive to try 
to get things right when converting the WKT metadata to CF.  

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-642702610

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-06-11 Thread Alan D. Snow
> Is the problem that it can be understood to imply that the data-reader must 
> read both versions and compare them?

Yes, there are several data readers that have understood it this way. So, 
clarification on this would be a welcome addition.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-642700383

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-06-11 Thread JonathanGregory
If I've understood your concern correctly, I don't see the problem with the 
existing wording. It's intended to give guidance for what to do if a data-user 
notices an inconsistency. Is the problem that it can be understood to imply 
that the data-reader must read both versions and compare them? If so, maybe we 
could address that concern by keeping the present wording, but adding some more 
words to say that the data-user can assume they are consistent, and therefore 
needs to read only one of them. Jonathan

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-642695084

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-06-11 Thread Alan D. Snow
> The statement of precedence is intended to resolve problems if they are 
> detected. Hence I don't think we need to change the convention to achieve the 
> aim stated (Allow CRS WKT to represent the CRS without requiring comparison 
> with grid mapping Parameters), if I've understood it correctly. It's already 
> OK.

@JonathanGregory - does this mean you approve of the proposed wording change?

If everyone approves of the wording change, then we could re-purpose the 
meeting to another CRS WKT topic, such as some issues you have mentioned in 
your post.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-642682547

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-06-11 Thread JonathanGregory
We're going to discuss this issue today. I've just written the following in the 
google doc about it, because I can't say all this in the discussion, and I 
would like to explain where I'm coming from when we talk.

The current position is that the `grid_mapping` takes precedence over WKT if 
both are present. To know whether this the case, the data-user would have to 
interpret both and compare them, and take the `grid_mapping` as correct if the 
two are inconsistent. If I understand correctly, the idea of the proposal is to 
remove the requirement of precedence, so that the data-user can read the WKT 
alone and not consider the `grid_mapping`. In fact, I think the data-user can 
behave in just that way as things stand. The data-user is not obliged to check 
that the dataset is self-consistent. They are entitled to assume that it is, 
because the onus is on the data-producer to ensure this. I believe that's what 
we had in mind when we decided the current convention, which was a sort of 
compromise. The statement of precedence is intended to resolve problems if they 
are detected. Hence I don't think we need to change the convention to achieve 
the aim stated (Allow CRS WKT to represent the CRS without requiring comparison 
with grid mapping Parameters), if I've understood it correctly. It's already OK.

The discussion in this issue has gone further than that, however. A lot of it 
is about whether the `grid_mapping` should be able to represent the information 
in the WKT. I think this is a much more difficult question. As I've commented 
in the issue, I have serious concerns about this. I realise that other people 
have good reasons for suggesting it, and I hope we can find a consensus, as 
usual - honestly, I do! I have two kinds of concern, which are related.

  * If `grid_mapping` isn't required to represent everything, data-writers may 
chose to omit it. Some people would like that, because it would permit them to 
write WKT in the CF-netCDF file and allow it to be read and used as a “black 
box” required by certain software. I can see the practical advantage in that, 
but I think that's contrary to the general intention of CF, which has made it 
successful and popular. CF metadata is intended to be self-explanatory and 
intelligible to humans, designed to be read and written with minimal 
possibilities for mistakes. WKT looks to me more like code, it's not so 
self-explanatory because it doesn't label all its parts, the order in which 
things appear determines what they mean. It's not like CF-like.

  * I suspect that WKT may be inconsistent with the CF data model in some ways. 
I can't be sure unless we understand it thoroughly and how it relates to CF 
metadata. For instance, @snowman2 noted in the issue that, “The coordinate 
system and area of use currently don't have an equivalent in the CF 
conventions.” I don't know what they are exactly, but I think that coordinate 
system is an idea which is inconsistent with the CF data model, as an 
explicitly recognised part of the metadata. I recall also (but perhaps 
incorrectly) that there are defaults about directions and units, which may be 
inconsistent with CF.

Because of these concerns, I continue to think that we should require 
data-procedures to describe everything they want to in `grid_mapping`, unless 
we can write down explicitly the mappings between CF metadata and WKT. We don't 
have to be able to carry out the conversion in software, but we should write 
down how to do it. When that has been done, we would have much greater clarity. 
We could be confident in stating that certain part of WKT were equivalent to CF 
metadata. It's possible that there are vocabularies in WKT which could be 
adopted by CF, and thus not maintained by CF. That idea is often suggested 
(e.g. by Jim in this issue) and it makes sense provided the vocabulary is one 
which can exactly “slot” into CF metadata. That is, it must suit our data model.

It seems to me that this approach of mapping is what is being followed with the 
discussions about standard names and ontologies. It is not being suggested that 
standard names should be replaced by vocabularies from elsewhere, for the same 
kind of reason that there isn't a one-to-one correspondence. However, the 
mappings can be established to help with interoperability.

But having written down the mapping between CF metadata and WKT, we would be 
able to write software that can do the conversion completely (@snowman2 already 
has such software, and probably others do). That could be used in the 
cf-checker to check that the `grid_mapping` and WKT are consistent, which is 
the problem we started with in this issue.


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-642659548
This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, 

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-06-05 Thread David Hassell
Hello,

The timings and order of the breakout groups for the CF meeting next week has 
now been set (see http://cfconventions.org/Meetings/2020-Workshop.html), and 
the discussion of this issue will be on Thursday 11 June from 16:00-17:30 UTC, 
in parallel with three other topics.

Thanks.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-639326340

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-24 Thread Patrick Peglar
> @taylor13  I haven't been following this, but what about tripolar grids, 
> which are often used in ocean models?
> @zklaus How are they represented in CF right now? As far as I know only by 2d 
> coordinates (which doesn't codify the iso-coordinate lines).

>From our specific experience : Most ocean models use the so-called ORCA grids.
These are not "just" a tripolar coordinate grid but use irregular sampling in 
various places.

Most importantly : ***a grid is not a projection***

So, a grid like ORCA has 2D latitude and longitude values for cell corners (and 
centres).  So that might *appear* to be like a coordinate-like space described 
by the grid indices.  But this is misleading, because a projection would be a 
smooth, reversible, total function  :  Instead ...
  1. you cannot define a point on the globe for an "interpolated" point in 
index-space like "ix=100.5, iy=101.3".  The relationship is entirely defined by 
the (2d) X and Y values, there is no smooth function from (ix, iy) to (lat, 
lon).
  1. there is no reverse mapping : you can't ask "where in the grid" a given 
point on the globe is.  Only which cells it may fall within... 
  1. in fact not all parts of the globe are covered at all.  The bottom of the 
space can be distorted to give extra detail in the Southern ocean, and does not 
cover the South pole.   Also, some model cells actually *overlap* along the top 
seam, referred to as a 'north fold'.  Thus...
  1. ... returning to the 'reversal' question, a given global location can be 
in several gridcells, or none.

In practice ORCA grids are particularly extreme case, in that the standard 
grids are defined _entirely_ by the provided 2D arrays of latitudes + 
longitudes, and there is no provided equation defining those numbers, as far as 
I can determine.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-590368653

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-21 Thread JonathanGregory
@JimBiardCics The `grid_mapping` attributes were introduced to allow software 
to do the transformation if it wanted to, for instance to transform other 
locations (apart from the coordinates and boundaries) or do other computations 
(such as working out local directions or cell areas).  They are optional 
because generic software does not need to be able to do the transformation if 
the 2D lat and lon coordinates are required to be present.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-589751663

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-21 Thread JimBiardCics
@JonathanGregory Am I right in understanding that back in the day the whole 
grid_mapping scheme in CF was added to annotate the relationship between lat 
and lon variables (which were always required) and X and Y variables? If the 
purpose was annotation and that annotation was itself optional, there was no 
actual need for the grid_mapping attributes provide sufficient information to 
do the transformation.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-589731823

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-21 Thread JonathanGregory
Dear @snowman2 
That's good about `proj` supporting those two projections. Thanks.
I used `proj` as an example but I was really thinking more about the general 
point that Jim raised, about relying on external resources. We've often 
discussed this on the former CF email list. I understand from what you say that 
`proj` is software, rather than a conventions document, so that's a bit 
different. You're right of course that open-source software can be modified by 
anyone for their own use. However, if someone proposes a new `grid_mapping` in 
CF, they just want the document to be modified, and they would not be offering 
to modify `proj` software to support this new mapping.
Best wishes
Jonathan

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-589720986

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-21 Thread Klaus Zimmermann
How are they represented in CF right now? As far as I know only by 2d 
coordinates (which doesn't codify the iso-coordinate lines).

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-589720466

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-21 Thread taylor13
I haven't been following this, but what about tripolar grids, which are often 
used in ocean models?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-589717696

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-21 Thread Alan D. Snow
> Does proj4 include rotated pole and vertical perspective, for instance? 

Just to have it noted that it is supported in PROJ (the conversion classes will 
be released in pyproj 2.5.0 soon, but the PROJ string version works on all 
versions):
```python
>>> from pyproj.crs.coordinate_operation import 
>>> RotatedLatitudeLongitudeConversion, VerticalPerspectiveConversion
>>> RotatedLatitudeLongitudeConversion(o_lat_p=1, o_lon_p=2).to_proj4()
'+proj=ob_tran +o_proj=longlat +o_lat_p=1 +o_lon_p=2 +lon_0=0'
>>> VerticalPerspectiveConversion(viewpoint_height=5).to_proj4()
'+proj=nsper +lat_0=0 +lon_0=0 +h=5 +x_0=0 +y_0=0'
```

>From tests:
```python
crs = CRS.from_cf(
dict(
grid_mapping_name="rotated_latitude_longitude",
grid_north_pole_latitude=32.5,
grid_north_pole_longitude=170.0,
)
)
expected_cf = {
"semi_major_axis": 6378137.0,
"semi_minor_axis": crs.ellipsoid.semi_minor_metre,
"inverse_flattening": crs.ellipsoid.inverse_flattening,
"reference_ellipsoid_name": "WGS 84",
"longitude_of_prime_meridian": 0.0,
"prime_meridian_name": "Greenwich",
"horizontal_datum_name": "World Geodetic System 1984",
"grid_mapping_name": "rotated_latitude_longitude",
"grid_north_pole_latitude": 32.5,
"grid_north_pole_longitude": 170.0,
"north_pole_grid_longitude": 0.0,
}
cf_dict = crs.to_cf()
assert cf_dict.pop("crs_wkt").startswith("PROJCRS[")
assert cf_dict == expected_cf
```
```python
crs = ProjectedCRS(conversion=VerticalPerspectiveConversion(50, 0, 1, 0, 2, 
3))
expected_cf = {
"semi_major_axis": 6378137.0,
"semi_minor_axis": crs.ellipsoid.semi_minor_metre,
"inverse_flattening": crs.ellipsoid.inverse_flattening,
"reference_ellipsoid_name": "WGS 84",
"longitude_of_prime_meridian": 0.0,
"prime_meridian_name": "Greenwich",
"horizontal_datum_name": "World Geodetic System 1984",
"grid_mapping_name": "vertical_perspective",
"perspective_point_height": 50.0,
"latitude_of_projection_origin": 0.0,
"longitude_of_projection_origin": 1.0,
"false_easting": 2.0,
"false_northing": 3.0,
}
cf_dict = crs.to_cf()
assert cf_dict.pop("crs_wkt").startswith("PROJCRS[")
assert cf_dict == expected_cf
```

> If it's not our own resource, we can't necessarily add to it

It is an open-source tool that accepts contributions. Are you not allowed to 
contribute to other open-source projects where you work?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-589670579

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-21 Thread JonathanGregory
Dear @JimBiardCics

I appreciate the point and I agree that we should not spend our time doing a 
less good job of something which is already available elsewhere. However I 
don't think that CF is fairly described as "reinventing the wheel" in this 
case. I can suggest a few reasons why we have our own set of `grid_mapping` 
definitions rather than relying on `proj4` for example.

* An external resource might not include all the cases we need. Does `proj4` 
include rotated pole and vertical perspective, for instance? (If it does that 
is not noted in our App F). If it's not our own resource, we can't necessarily 
add to it, and if it's not comprehensive, users of CF might have to mix 
different conventions in their files, which would be less satisfactory.

* An external resource might change in a way which didn't suit CF, meaning we'd 
have to do extra work in a hurry to replace it with something else, with the 
further penalty of backwards-incompatibility for CF.

* An external resource might not present the information in a way which is 
easily usable in CF, because it's not organised in a similar fashion or doesn't 
match well to the CF data model.

Therefore instead of "handing over" something to an external authority, I feel 
that in most cases it is better to import the external information to CF. This 
isn't an absolute rule, of course, but it seems fine for `grid_mapping` to me. 
However, your point is a good reason why we should make the choice of 
attributes as similar as we can to `proj4`. If we do that, it should be easy to 
import more of them, like new standard names on existing patterns, and it 
improves interoperability between conventions. If we find there is a use case 
which is *not* trivial to import, there's probably a good reason for that which 
will require some thought, like new standard names which propose new patterns.

Best wishes

Jonathan


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-589614662

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-20 Thread JimBiardCics
@JonathanGregory said
> If you have use cases for actual datasets that you want to put in CF but the 
> required projections are not supported in grid_mapping, it would be useful to 
> propose adding them to CF.

I personally have a number of cases where CF doesn't provide the projection 
used. I come back to the question of why we feel the need to re-invent the 
wheel. I believe we need to learn to coexist with other standards and 
conventions that are at least as stable and reliable as CF rather than 
replicate them.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-589108765

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-19 Thread Sean Arms
> @rschmunk and @lesserwhirls, could panoply and netcdf-java use the Java 
> [geotools](https://github.com/geotools/geotools) library to handle [CRS 
> WKT](https://docs.geotools.org/stable/userguide/library/referencing/crs.html)?
> 
> Would that be straightforward or a major effort?

It would introduce a somewhat interesting circular dependency (they are using 
netCDF-Java 4.6.11, we're on 5.2.0). I've been looking at `proj4j` to see what 
they have for parsing WKT, at which point we'd need to setup a mapping to CF 
parameters and create a netCDF-Java Projection object. We have some (what looks 
to be) contributed code that does the parsing, mapping, and projection object 
creation, but it's not very forgiving in its parsing and not super capable at 
this point.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-588525494

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-15 Thread John Graybeal
First two sentences are duplicated in the second two sentences?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-586659223

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-13 Thread Alan D. Snow
I am removing the part about the standalone WKT to be discussed in another 
issue. 

Proposed WKT string statement modifications (modifications in italics):
>There will be occasions when a given CRS property value is duplicated in both 
>a single-property grid mapping attribute and the crs_wkt attribute. In such 
>cases the onus is on data producers to ensure that the property values are 
>consistent. There will be occasions when a given CRS property value is 
>duplicated in both a single-property grid mapping attribute and the crs_wkt 
>attribute. In such cases the onus is on data producers to ensure that the 
>property values are consistent. *If both a crs_wkt and grid mapping attributes 
>exist, it is assumed that they do not conflict. As such, information from 
>either one (or both) may be used to represent the CRS of the file, recognizing 
>that the grid mapping parameters should always be completed as fully as 
>possible.* ~~However, in those situations where two values of a given property 
>are different, then the value specified by the single-property attribute shall 
>take precedence. For example, if the semi-major axis length of the ellipsoid 
>is defined by the grid mapping attribute semi_major_axis and also by the 
>crs_wkt attribute (via the WKT SPHEROID[…​] element) then the former, being 
>the more specific attribute, takes precedence. Naturally if the two values are 
>equal then no ambiguity arises.~~

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-586056569
This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.


Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-02-13 Thread Alan D. Snow
> This would be a non-trivial piece of work but until it is done I don't think 
> we can really know what we are missing in the CF attributes what WKT can 
> describe and needs to be included in use cases of CF datasets. 

@JonathanGregory, this is currently supported in `pyproj` master: 
https://github.com/pyproj4/pyproj/blob/6390041fc2bfb569e90f615adb7ba75160d41aa8/pyproj/crs/_cf1x8.py

You can see the tests that were run to check the conversion to/from the CF 
format of the projection 
[here](https://github.com/pyproj4/pyproj/blob/6390041fc2bfb569e90f615adb7ba75160d41aa8/test/crs/test_crs_cf.py).

I didn't find any parameters that weren't able to be supported by WKT. However, 
there are many projections that WKT can describe that aren't supported by CF. 
There is an extensive list 
[here](https://proj.org/operations/projections/index.html) for projections 
supported by PROJ. Only a subset is supported by CF conventions.





-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-586055272

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-21 Thread R. Schmunk
@rmendels said

> I have no idea what for example Panoply does, the Coastwatch tools, Thredds, 
> Seadas, and some others I can think of, and we should be very careful we 
> don't needlessly break things.

Panoply uses the netCDF-Java library to read datasets. When dealing with 
projected grids, it looks for the variable named by the `grid_mapping` 
attribute and the CF specified projection parameters of that variable. For the 
13 projections that Panoply supports, in 4 cases it uses projection code that 
is part of NJ but in the other 9 it uses its projection code to transform the 
grid. The reason for those 9 is that I'd already implemented them for other 
purposes, and the NJ library doesn't do the best job of performing sanity tests 
on the projection attributes that it finds in the dataset.

FWIW, I only started looking through this thread because an issue regarding WKT 
was opened at Unidata/netcdf-java#191 earlier today.


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-577009147

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-21 Thread Alan D. Snow
> I think that writing down the mapping is a necessary piece of evidence in 
> deciding about that and would therefore be a useful first step.

Here are some examples of the WKT version for the CF grid_mappings for the 
conversions:
https://pyproj4.github.io/pyproj/latest/_modules/pyproj/crs/coordinate_operation.html

This may also be useful:
https://pyproj4.github.io/pyproj/latest/build_crs.html

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-576998642

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-17 Thread Alan D. Snow
@JonathanGregory whenever you see this :smile:, I would recommend checking the 
right hand side of this issue at the top to see if your subscribed to 
notifications:
![image](https://user-images.githubusercontent.com/8699967/72623135-2e738400-390a-11ea-99ab-345ce13d5d4f.png)


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-575667642

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-17 Thread JonathanGregory
I'm not contributing much to this because GitHub is inexplicably not sending me 
the contributions to this issue. It may have decided for itself that it's 
better for all if I'm kept in the dark!

I feel that the best solution for this would be for CF to maintain a document 
which describes the mapping between CF metadata and WKT, and for conformance to 
this mapping to be checked by the CF-checker. In that way a user could be 
reasonably confident of getting the same result by reading either of them, and 
errors would be identified. I think we already have some documents somewhere 
that are relevant (prepared years ago by Etienne Tourigny).

This would be a non-trivial piece of work but until it is done I don't think we 
can really know what we are missing in the CF attributes what WKT can describe 
and needs to be included in use cases of CF datasets. It could be that CF 
`grid_mapping` attributes could eventually be replaced by WKT, as Jim would 
prefer, but I suspect that there is overlap with other parts of the CF data 
model, which would make this hard. It's certainly worth considering, but I 
think that writing down the mapping is a necessary piece of evidence in 
deciding about that and would therefore be a useful first step.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-575565767

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-14 Thread Alan D. Snow
> Are there known efforts or interest to develop some WKT-to-grid_mapping 
> translation modules?

I brought this up in the past: https://github.com/OSGeo/PROJ/issues/1193. 
However, I think it would require more interest in the community and/or funding 
to make it happen.

I have a basic implementation based on the [PROJ strings 
mappings](https://github.com/cf-convention/cf-conventions/wiki/Mapping-from-CF-Grid-Mapping-Attributes-to-CRS-WKT-Elements)
 in `pyproj`:
- https://pyproj4.github.io/pyproj/stable/api/crs.html#pyproj.crs.CRS.from_cf
- https://pyproj4.github.io/pyproj/stable/api/crs.html#pyproj.crs.CRS.to_cf

However, the mapping back and forth is imperfect and misses quite a bit. I have 
plans to update grid mappings based on WKT as that will allow a more complete 
mapping. PROJ string mappings code 
[here](https://github.com/pyproj4/pyproj/blob/67ff137f8d734fbaa4aac32363b85dd5e33dad5c/pyproj/cf1x8.py).

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-574207697

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-13 Thread Dave Allured
Moving toward WKT would be facilitated by a few software modules that interpret 
WKT and translate to familiar CF grid_mapping parameters, when reasonably 
compatible.

@snowman2 wrote:
> with the GDAL Barn changes (https://gdalbarn.com/), reading in a WKT is much 
> more practical with PROJ as a dependency. It also provides support for WKT2. 
> Additionally, GDAL can easily support the WKT form of the projection which 
> enables all the dependent software to read in the projection.

"enables all the dependent software to read" -- Which language API's are 
supported or planned for this?  Are there known efforts or interest to develop 
some WKT-to-grid_mapping translation modules?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-573995875

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-11 Thread John Graybeal
There are two perspectives in this thread (and the original WKT discussions) 
about what it means for optional 'containers' like WKT to be acknowledged as 
'valid' in CF. In one view, the acknowledgement puts some or all of the 
responsibility for validating the container's content on CF, the CF validation 
software, and the CF tool developers. In the other view, it can be treated as a 
black box, with the responsibility for correctly including WKT content, 
verifying WKT content, and using WKT content relegated to the actual WKT 
providers and users.

I think the acceptance of WKT as an 'allowed' container in those original 
proposals implicitly adopted the second view. To my understanding no tests for 
WKT content validity have been added, and tools have not been required to 
change anything. The gist of the proposal seemed in line with that view, 
because WKTs would still be optional and the CF attributes would still be 
required to the maximum extent possible. Therefore, I think the best approach 
is to modify the proposal to make it fully consistent with the second view, 
because that lets CF dynamically and quickly adapt to advanced needs of an 
important community.

> _If the CRS cannot be represented using the grid mapping parameters, using 
> only the crs_wkt attribute is considered valid._
> 
> Sorry, but to my untrained eyes this essentially means software that purports 
> to be CF compliant will have to be able to deal with WKT. It is very simple, 
> I have a transformation that can't be represented by present grid mapping 
> parameters, I use the crs_wkt attribute, based on the standard that says the 
> file is CF-compliant but a lot of software that has been the basis for 
> CF-compliance will not be able to properly read that file. I must be missing 
> something here because I don't see anyway around this. It will create 
> CF-complaint files that present software will not be able to properly read. 
> Which will mean either a lot of incompatible files or possibly a lot of work 
> for the authors of the present software that are the backbone of 
> CF-compliance.

I agree that the quoted sentence is ambiguous and inconsistent with other text. 
I'd prefer it went away; or at least be expressed as "If the CRS cannot be 
fully represented using the grid mapping parameters, the additional crs_wkt 
attribute can be used to augment the representation (while noting that support 
for reading and using the crs_wkt attribute in CF software remains entirely 
optional)."

Still, there are oodles of CF-compliant data files that present software can't 
"properly" read, because they have various optional augmentations in them not 
understood by all software. The fact this particular optional augmentation is 
mentioned explicitly does not mean everyone, or even anyone, has to support it. 
It also does not mean that any testing or conformance software *has to* support 
or test WKT, any more than allowing multiple conventions in the convention 
attribute means you have to support and test all of the conventions that might 
be referenced by that attribute.

> We would have to revise (or consider revising) CF whenever the definition of 
> WKT was amended. 

I'm not sure why. The only thing the WKT content can affect is another CF tool 
that reads WKT. All the existing tools that ignore WKT should not be impacted, 
they'll ignore WKT no matter what its definition is. Now, the tools that use 
WKT in CF might have to decide how to deal with WKT versions, but they could do 
that without ever having to require changes to the CF specification.


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-573382592

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-09 Thread Roy Mendelssohn
_If the CRS cannot be represented using the grid mapping parameters, using only 
the crs_wkt attribute is considered valid._

Sorry,  but to my untrained eyes this essentially means software that purports 
to be CF compliant will have to be able to deal with WKT.  It is very simple,  
I have a transformation that can't be represented by present grid mapping 
parameters, I use the crs_wkt attribute,  based on the standard that says the 
file is CF-compliant  but a lot of software that has been the basis for 
CF-compliance will not be able to properly read that file.  I must be missing 
something here because I don't see anyway around this.  It will create 
CF-complaint files that present software will not be able to  properly read.  
Which will mean either a lot of incompatible files or possibly a lot of work 
for the authors of the present software that are the backbone of CF-compliance. 
 

I am also concerned that not enough feedback has been coming from the authors 
of these software. Most telling was the inability of the people who have driven 
this to name such software (so that they are not aware of the possible 
implications of these changes),  and even more that this is being driven to 
benefit GDAL so that GDAL doesn't have to change  (read the original posts).  

I want to reiterate that it is not that I don't think going in this direction 
in the long-run is a good idea (that is a separate issue),  I just don't think 
the implications have been entirely thought through,  in particularly the 
ramifications for software developers who may not have the time and resources 
to deal with the changes.Which is why I keep saying we should go slow on 
this , perhaps create a lot of sample files,  create ones that use CRS that 
presently can't be properly represented,  and see what kind of havoc it does or 
does not create.  Only after testing over as many programs as possible,  then 
see how this should be worded.

  


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-572780372

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-09 Thread Alan D. Snow
Just to be clear, this proposal does not propose to remove or override the 
`grid_mapping` parameters. It's main goal is co-existence with the CRS WKT.

Proposed WKT string statement modifications (modifications in italics):
> The crs_wkt attribute is intended to act as a supplement to other 
> single-property CF grid mapping attributes (as described in Appendix F); it 
> is not intended to replace those attributes. If data producers omit the 
> single-property grid mapping attributes in favour of the compound crs_wkt 
> attribute, software which cannot interpret crs_wkt will be unable to use the 
> grid_mapping information. Therefore the CRS should be described as thoroughly 
> as possible with the single-property attributes as well as by crs_wkt. *If 
> the CRS cannot be represented using the grid mapping parameters, using only 
> the crs_wkt attribute is considered valid. *

>There will be occasions when a given CRS property value is duplicated in both 
>a single-property grid mapping attribute and the crs_wkt attribute. In such 
>cases the onus is on data producers to ensure that the property values are 
>consistent. There will be occasions when a given CRS property value is 
>duplicated in both a single-property grid mapping attribute and the crs_wkt 
>attribute. In such cases the onus is on data producers to ensure that the 
>property values are consistent. *If both a crs_wkt and grid mapping attributes 
>exist, it is assumed that they do not conflict. As such, information from 
>either one (or both) may be used to represent the CRS of the file, recognizing 
>that the grid mapping parameters should always be completed as fully as 
>possible.* ~~However, in those situations where two values of a given property 
>are different, then the value specified by the single-property attribute shall 
>take precedence. For example, if the semi-major axis length of the ellipsoid 
>is defined by the grid mapping attribute semi_major_axis and also by the 
>crs_wkt attribute (via the WKT SPHEROID[…​] element) then the former, being 
>the more specific attribute, takes precedence. Naturally if the two values are 
>equal then no ambiguity arises.~~

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-572767885
This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.


Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-09 Thread Patrick Peglar
>  Are there any applications that actively read in and use the CF grid mapping 
> parameters?

Not sure if I'm answering the right question here, but 
[Iris](https://github.com/SciTools/iris) ***definitely does*** explicitly 
interpret CF grid-mapping terms : we have explicit code for translating various 
types of grid-mapping to an [Iris 'coordinate_system']().  
Currently supporting types : 
```
albers_conical_equal_area
azimuthal_equidistant
lambert_azimuthal_equal_area
lambert_conformal_conic
lambert_cylindrical_equal_area
latitude_longitude
mercator
orthographic
polar_stereographic
rotated_latitude_longitude
stereographic
transverse_mercator
vertical_perspective
```
Most of these can also be produced as output.

For instance, we are currently working on making let Iris accept a 
geostationary grid with missing false_easting/false_northing parameters : 
https://github.com/SciTools/iris/pull/3628 

We currently don't support the WKT text, but could presumably consider this in 
future.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-572643254

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-09 Thread Roy Mendelssohn
I would suggest maybe going a little slow on this one,  because my guess is 
many people are not following this discussion,  so they will not be able to 
respond.  I have no idea what for example Panoply does,  the Coastwatch tools,  
Thredds,  Seadas,  and some others I can think of,  and we should be very 
careful we don't needlessly break things.  That is why I objected to the 
original proposal where the WKT string would take precedence.  That would 
almost require that WKT strings be supported in software.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-572637349

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-09 Thread JimBiardCics
GDAL is one more than I was aware of. I'm not aware of any others.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-572632771

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-09 Thread JimBiardCics
@snowman2 Are there any applications that actively read in and use the CF grid 
mapping parameters?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-572623255

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-09 Thread Alan D. Snow
One minor addition:
*"If the CRS cannot be represented using the grid mapping parameters, using 
only the CRS WKT is allowed. However, some applications will not be able to 
read in the CRS WKT form."*

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-572588900

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-08 Thread John Graybeal
Or to deal with the edge cases and be consistent with our expectations: 

_"If both a CRS WKT and grid mapping parameters exist, it is assumed that they 
do not conflict. As such, information from either one (or both) may be used to 
represent the CRS of the file, recognizing that the grid mapping parameters 
should always be completed as fully as possible."_

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-572287499

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-08 Thread Alan D. Snow
> Should we also add something that emphasizes the points about "graceful 
> co-habitation" ?

Are you thinking something along the lines of:

*"If both a CRS WKT and grid mapping parameters exist, it is assumed that they 
are equivalent. As such, either one may be used to represent the CRS of the 
file."*

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-572246226

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-03 Thread David Blodgett
Great strategy @JimBiardCics. Having contributed an attempted implementation to 
map CF conventions to WKT -- I know how error prone and hard it can be. Moving 
toward support of WKT as a fully fledged option within CF is unambiguously a 
good thing in my mind.

@marqh's suggested text changes make a ton of sense to me. 

Should we also add something that emphasizes the points about _"graceful 
co-habitation"_ ? 



-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-570593687

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.

Re: [CF-metadata] [cf-convention/cf-conventions] Allow CRS WKT to represent the CRS without requiring comparison with grid mapping parameters (#222)

2020-01-02 Thread JimBiardCics
A few comments on the discussion to this point. I think the discussion is 
moving in the overall right direction. If seems to me that there was confusion 
at first between implementations and uses on the one hand and design and 
conventions on the other. I think we need to seriously consider how big a job 
it would be to "re-invent the wheel" by trying to add to CF, even piecemeal, 
all the parameters needed to represent all coordinate reference systems (CRSs). 
The vast majority of us are not geodesists. We need to acknowledge that this is 
a significant discipline that we know little about, and allow the experts in 
that field to be the experts. Let's use the standards they have developed 
rather than build an inferior substitute.

CF added the ability to specify a few projected coordinate systems. We clearly 
must continue to honor those for backward compatibility purposes, but let's not 
add any new ones. I think we should encourage the use of WKT CRS declarations 
going forward and focus on what might need to be added to CF to resolve 
ambiguities that might be present. If I understood correctly, @JonathanGregory 
thought there were possible issues. I didn't see any specifics given, but I'd 
rather try to clear those up than follow a "make our own" approach any longer.

I've worked with a few data providers that attempted to add grid_mapping 
variables to their netCDF files. The majority of them botched it. They would 
have been much better off if they could have copied and pasted a WKT string 
rather than try to figure out how to read CRS definitions and map elements to 
CF grid_mapping attributes.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/222#issuecomment-570276738

This list forwards relevant notifications from Github.  It is distinct from 
cf-metad...@cgd.ucar.edu, although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
cf-metadata-unsubscribe-requ...@listserv.llnl.gov.