RE: 24:00:00 allowed or not

Thursday, December 12, 2002,

Ashok,

You are absolutely correct, and that was something I realized
right after I sent you the email.  We want to use "24:00:00"
strictly as an alternative representation for "00:00:00".
We should encode the (positive) leap second as "60", as in
"23:59:60" (Zulu).

This is supported by the ISO 8601 time-date standard.  I've
included the ISO 8601 definitions for a 'leap second' and
'time of day' below, which is consistent with above proposal.

Here are examples of the various 'leap-second' transitions
that would occur in the Zulu (GMT 00:00) time zone:

NO LEAP SECOND ADJUSTMENT  (last minute has 60 seconds)
   2001-06-30T23:59:58Z
   2001-06-30T23:59:59Z
   2001-07-01T00:00:00Z
   2001-07-01T00:00:01Z

LEAP SECOND INSERTION  (+ last minute has 61 seconds)
   1998-12-31T23:59:58Z
   1998-12-31T23:59:59Z
   1998-12-31T23:59:60Z
   1999-01-01T00:00:00Z
   1999-01-01T00:00:01Z

LEAP SECOND DELETION  (- last minute has 59 seconds)
   XXXX-06-30T23:59:58Z
   XXXX-07-01T00:00:00Z
   XXXX-07-01T00:00:01Z
   [Note: this has never happened!]

It should be noted that the leap-second is declared at
midnight in the "Z" (GMT) timezone and is applied to all
other timezones at that single instant of time.  Thus,
the (inserted) leap-second indicator of "60" would
appear at civil (local) times different than midnight.

So, at Chicago O'Hare airport, we would have an ISO 8601
formatted timestamp of "1998-12-31T17:59:60-6:00" (CST)
for the leap second insertion that occurred on December
31, 1998.

I hope this helps.  I believe it is important to have the
option of expressing leap-seconds so that we can ensure
a rigorous 1:1 mapping between and XML/UTC timestamps and
NTP or equivalent timestamps that utilize a strictly
isochronous seconds counter.

Best regards,

Paul Schluter

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

 >From ISO8601:2000(E)

3.25  [definition of] second, leap
   Intentional time step of one second used to adjust UTC to ensure
   approximate agreement with UT1 (a time scale based on the rotation
   of the Earth); an inserted second is called positive leap second
   and an omitted second is called negative leap second (see ITU-R
Rec.TF.460-5)
   NOTE A positive leap second is inserted between 23:59:59Z and
24:00:00Z
   and can be represented as 23:59:60Z.
   Negative leap seconds are achieved by the omission of 23:59:59Z.
   Insertion or omission takes place as determined by IERS,
   normally on June 30th or December 31st, but if necessary
   on March 31st or September 30th.

5.3 Time of the day
   As this International Standard is based on the 24-hour timekeeping
   system that is now in common use, hours are represented by two digits
   from [00] to [24], minutes are represented by two digits from [00]
   to [59], and seconds are represented by two digits from [00] to [60].
   For most purposes, times will be represented by four digits [hhmm].
   The representation of the hour by [24] is only allowed to indicate
   midnight, see 5.3.2.
   The representation of the second by [60] is only allowed to indicate
   the positive leap second or a time-point within that second.

===========================================================

-----Original Message-----
From: Ashok Malhotra [mailto:ashokma@microsoft.com]
Sent: Thursday, December 12, 2002 7:16 AM
To: Schluter, Paul (MED, GEMS-IT); W3C XML Schema Comments list
Subject: RE: 24:00:00 allowed or not


Paul:
As the attached note says 24:00:00 is allowed.  But it also says that
it is an alternate representation for 00:00:00 (of the following day).
This is not what you want.  In the presence of a leap second you want
24:00:00 to be the final second of the current day and 00:00:00 the
following second of the next day.  We need to craft some careful wording
to cover this situation.

All the best, Ashok

===========================================================

-----Original Message-----
From: Schluter, Paul (MED, GEMS-IT) [mailto:Paul.Schluter@med.ge.com]
Sent: Wednesday, December 11, 2002 4:59 PM
To: W3C XML Schema Comments list
Subject: RE: 24:00:00 allowed or not

Wednesday, December 11, 2002,

Ashok and James,

I noticed this thread in the W3C email archives regarding
whether 24:00:00 should be allowed or not.  It _must_ be
allowed, because the time "24:00:00" can actually exist
when a leap-second is inserted at midnight.

Leap-second insertion typically occurs every 18 months or
so, principally to account for the gradual slowing of the
earth's rotation over time (roughly 1.7 msec/day/century).
Leap seconds are supported by NTP (RFC-1305) and SNTP (RFC-2030)
and are recognized in numerous other areas such as astronomy
where accurate timekeeping is required.

Regards,

Paul Schluter


===========================================================
Date: Tue, 23 Apr 2002 06:40:06 -0700
Message-ID:
<E5B814702B65CB4DA51644580E4853FB019EEB02@red-msg-12.redmond.corp.micros
oft.com>
From: "Ashok Malhotra" <ashokma@microsoft.com>
To: "James Clark" <jjc@jclark.com>, <www-xml-schema-comments@w3.org>
Subject: RE: 24:00:00 allowed or not?

24:00:00 is allowed.  It is an alternate representation for 00:00:00

All the best, Ashok
===========================================================


-----Original Message-----
From: James Clark [mailto:jjc@jclark.com]
Sent: Tuesday, April 23, 2002 6:19 AM
To: www-xml-schema-comments@w3.org
Subject: 24:00:00 allowed or not?

ISO 8601 section 5.3.2 allows 24:00:00 as a representation of midnight.
Appendix D of XML Schema Part 2 says that the hh field runs between 0
and  23, but there is no mention of 24:00:00's not being allowed as a
difference  between XML Schema and ISO 8601.  I'm left uncertain as to
whether 24:00:00 is allowed or not.

James 

Received on Monday, 16 December 2002 09:53:44 UTC