⇐ ⇒

[CF-metadata] udunits handling of fuzzy time units

From: John Caron <caron>
Date: Wed, 16 Mar 2011 09:47:14 -0600

On 3/16/2011 3:57 AM, Jon Blower wrote:
> Hi all,
>
> There have been multiple interesting sub-threads of this conversation, and I'm getting them a bit tangled, not helped by my email client apparently not distinguishing clearly between quotes and new material.
>
> John C. - are you in a position to make a summary and/or concrete proposal to CF, based on all this?
>
> Cheers,
> Jon
> _______________________________________________
> CF-metadata mailing list
> CF-metadata at cgd.ucar.edu
> http://mailman.cgd.ucar.edu/mailman/listinfo/cf-metadata

Heres the issues as I see them, and my proposed resolutions. Im being
very brief, and not summarizing others' POV.


1. time instants vs time duration
- one must distinguish between dimensional time ("time duration",
units="secs"), and calendar time ("time instant", or "point on the time
continium") which is not dimensional.
- calendar time always references a calendar, default calendar is
gregorian, aka standard
- udunits is a good reference library for dimensional time, but not for
calendar time

2. calendar time
- time coordinates (CF section 4.4) are calendar times
- time coordinate variables are instants in time. A bounds coordinate
(CF section 7.1) should be used to clarify the actual time range of each
coordinate. This is especially important when using cell measures (CF
section 7.2) like mean, min, max, etc.

- calendar time representation needs to be clarified
   - udunits should no longer be the reference library for calendar
time. a new reference library is needed, which handles non-standard
calendars.
   - udunit date representation ("n timeUnit since ISO_date") must be
retained for backwards compatibility. "month" and "year" timeUnit should
be redefined in CF version 1.x to refer to calendar fields, not fixed
length time durations. For files using versions previous to CF 1.x,
udunit fixed length semantics should be used.
   - the grammar for udunit date representations should be defined, so
that multiple libraries can implement it
   - ISO date strings should be allowed

3. time resolution
   - any calendar fields not specified must be set to 0

4. time calculations
   - standard library functions for calculating time durations from time
ranges (start, end) are needed. these are calendar dependent.
Received on Wed Mar 16 2011 - 09:47:14 GMT

This archive was generated by hypermail 2.3.0 : Tue Sep 13 2022 - 23:02:41 BST

⇐ ⇒