Thanks for explaining "uncorrected GPS", Jim. The CF `calendar` attribute specifies (a) the interpretation of the reference timestamp in the `units`, (b) the rules for converting between timestamps and time coordinates. Because of (a), I agree that TAI, GPS and Loran-C are all different calendars, although they use the same rules (Gregorian calendar, no leap seconds). They differ by a constant number of seconds, as Jim has explained. I don't think it's redundant to distinguish these calendars.
If the use-case originally was for GPS, we should certainly support that one. TAI has often been mentioned in this discussion, and seems reasonable to include. Loran-C hasn't been mentioned before, as far as I remember. Do we know whether anyone wants to use it with CF-netCDF? If not, I don't think we should add it. We should wait until someone asks. Those who are writing new datasets with the new CF standard using metrical UTC time with leap seconds should use the new gregorian UTC calendar (whatever we call it). I believe we agree on that. My opinion is that those who write new datasets with the new CF standard where they convert UTC timestamps to time coordinates *without* allowing for leap seconds (the naive algorithm) should continue to call it `gregorian`. The interpretation of the timestamps as being in the Gregorian calendar, and the rules for conversion, are the same as for the model metrical Gregorian calendar, so it makes sense to call them the same. If `calendar="gregorian"`, the reference timestamp in the `units` must not have 60 for the seconds, even when that would be legal as a UTC timestamp. This does change the interpretation of `gregorian` but I don't think it's backwards incompatible. The change is simply to remove an ambiguity. It would be reasonable to apply the same interpretation to existing `gregorian` data i.e. decode it without leap seconds. In most cases, that would be correct, but we can't be sure about it. In future, however, we will know for sure, because `gregorian` will not be used for the case where leap seconds have been allowed for. -- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/cf-convention/cf-conventions/issues/148#issuecomment-436596583