Dear @davidhassell and @JonathanGregory,

I'm not afraid of UGRID getting too little traction as it has already received 
quite some uptake outside CF, but always formulated as closely linked to CF. 
However, it would definitely be good to discuss the different use cases for 
pure CF and CF extended with UGRID somewhere clearly in the CF document.

### Governance

I agree on the need for governance documents when UGRID wouldn't be integrated. 
Regarding the comment made by @erget, I do understand the need for the 
statement "Final acceptance will always rely on the completion of changes to 
the UGRID conventions, which is at the discretion of the UGRID community." 
since one community can never decide what another community must do, but I also 
agree that your progress shouldn't be limited by another slower community. 
That's exactly the same reason -- but looking from the other side -- why some 
may prefer to keep UGRID as a lean and mean separate convention instead of 
moving it into the bigger CF community. The CF community can always decide at 
any time to take all the UGRID ideas and merge them into the CF docs (the 
reverse is extremely unlikely), but my expectation is that as long as the main 
contributers for the two conventions don't change significantly we'll be able 
to work out a shared path forward. We can ask developers from the other 
convention to evaluate proposed modifications if we expect that such changes 
may cause incompatibilities. If such incompatibilities are detected only in 
hindsight due to misjudgement then it's in our shared interest and 
collaboration to resolve them as soon as possible -- most likely by the 
community that caused the incompatibility in the first place, but the two 
communities may decide otherwise in collaboration. If desirable changes in one 
convention would require changes in the other convention, then we can propose 
such changes to the other community and discuss them together as part of the 
shared interests. The second community may accept those adjustments, or propose 
an alternative. If none of the alternatives is acceptable for both communities 
... then it would be time to merge the last set of accepted UGRID conventions 
into CF. Someone else may be able to capture this approach in a more formal way.

### cf_role

Regarding the usage of ``cf_role`` I agree that the ``face_node_connectivity`` 
role and similar connectivity roles could be dropped since their purpose and 
meaning should be clear from the corresponding attribute names pointing to 
them, and most UGRID implementations will probably not check them anyway. 
However, I'm hesitant about dropping the role ``mesh_topology`` since I expect 
that this will break most if not all current UGRID readers. Your reasoning that 
one could follow the ``mesh`` attributes on the data variables to identify the 
mesh(es) in the file works in many cases, but wouldn't work if there is only a 
mesh in the file and no data variable (except for the node, edge and face 
coordinates) which may or may not refer back to the mesh container variable 
depending on your philosophy (UGRID doesn't specify whether that is allowed, 
required or optional). In regular CF the mesh is also only implied by the 
auxiliary coordinates listed on the data variable (or the dimensions used), so 
that pathway would indeed be consitent but we do have use cases with only mesh 
and node coordinates on the file. If we must drop the use of ``cf_role`` for CF 
compatibility, I would be in favour of introducing a new attribute called 
``mesh_type`` or ``grid_type`` to replace it ... the only allowed value would 
initially be ``ugrid``, but ...

### sgrid

... it could be extended with ``sgrid`` for staggered structured meshes (see 
decription of the [SGRID conventions](https://github.com/sgrid/sgrid)). The 
style of attribute was copied from the ``geometry_type`` attribute introduced 
for the geometry container variable.

### conformance

Reading through the UGRID conventions document, I realize that we have 
sometimes used the word "should" when we actually intended "must", but overall 
we tried to be very explicit about required and optional attributes so writing 
down the conformance requirements in a form consistent with [these CF 
pages](http://cfconventions.org/requirements-and-recommendations.html) should 
be fairly straightforward.

Best regards,

Bert

-- 
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/153#issuecomment-703858946
This list forwards relevant notifications from Github.  It is distinct from 
[email protected], 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 
[email protected].

Reply via email to