Dear @davidhassell et al.

I will produce some text synthesising the comments made since the current pull 
request was written.

Since then, the preamble on calendars has been modified as a result of the 
agreement of [issue 313 on leap 
seconds](https://urldefense.us/v3/__https://github.com/cf-convention/cf-conventions/issues/313__;!!G2kpM7uM-TzIFchu!hNmSuU0DWLy_8sqlcYG1nx1NoiUIbDqVJOR8JamqGY_PO0xlJtiwaumFGng6rW7uwu7zW4esenQ$
 ). As a result, I suggest that the new sentence from [the pull request of this 
issue](https://urldefense.us/v3/__https://github.com/cf-convention/cf-conventions/pull/315__;!!G2kpM7uM-TzIFchu!hNmSuU0DWLy_8sqlcYG1nx1NoiUIbDqVJOR8JamqGY_PO0xlJtiwaumFGng6rW7uwu7zVTXPbRU$
 ) should go in a different place. Below I reproduce the new text from [the 
working 
draft](https://urldefense.us/v3/__http://cfconventions.org/cf-conventions/cf-conventions.html__;!!G2kpM7uM-TzIFchu!hNmSuU0DWLy_8sqlcYG1nx1NoiUIbDqVJOR8JamqGY_PO0xlJtiwaumFGng6rW7uwu7z1Bmn4gE$
 ), because I think it's useful in spelling out what "calendar" means in CF. I 
have inserted the extra sentence in **bold** where I'd suggest putting it.

Cheers

Jonathan

### 4.4.1 Calendar

A date/time is the set of numbers which together identify an instant of time, 
namely its year, month, day, hour, minute and second, where the second may have 
a fraction but the others are all integer. A time coordinate value represents a 
date/time. In order to calculate a time coordinate value from a date/time, or 
the reverse, one must know the `units` attribute of the time coordinate 
variable (containing the time unit of the coordinate values and the reference 
date/time) and the calendar. The choice of calendar defines the set of dates 
(year-month-day combinations) which are permitted, and therefore it specifies 
the number of days between the times of `0:0:0` (midnight) on any two dates. 
**Date/times which are not permitted in a given calendar are prohibited in both 
the encoded time coordinate values, and in the reference date/time string.**

When a time coordinate value is calculated from a date/time, or the reverse, it 
is assumed that the coordinate value increases by exactly 60 seconds from the 
start of any minute (identified by year, month, day, hour, minute, all being 
integers) to the start of the next minute, with no leap seconds, in all CF 
calendars. This assumption has various consequences when real-world date/times 
from calendars which do contain leap seconds (such as UTC) are stored in time 
coordinate variables:

* Any date/times between the end of the 60th second of the last minute of one 
hour and the start of the first second of the next hour cannot be represented 
by time coordinates e.g. `2016-12-31 23:59:60.5` cannot be represented.

* A time coordinate value must not be interpreted as representing a date/time 
in the excluded range. For instance, `60 seconds after 23:59` means `00:00` on 
the next day.

* A date/time in the excluded range must not be used as a reference date/time 
e.g. `seconds since 2016-12-31 23:59:60` is not a permitted value for `units`.

* It is important to realise that a time coordinate value does not necessarily 
exactly equal the actual length of the interval of time between the reference 
date/time and the date/time it represents.

It is recommended that the calendar be specified by the `calendar` attribute of 
the time coordinate variable. The values currently defined for `calendar` are:

[... to be continued]

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://urldefense.us/v3/__https://github.com/cf-convention/cf-conventions/issues/298*issuecomment-865112544__;Iw!!G2kpM7uM-TzIFchu!hNmSuU0DWLy_8sqlcYG1nx1NoiUIbDqVJOR8JamqGY_PO0xlJtiwaumFGng6rW7uwu7zRjBvXNc$
 
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.

Reply via email to