W3C home > Mailing lists > Public > www-xml-schema-comments@w3.org > October to December 2002

RE: 24:00:00 allowed or not

From: Schluter, Paul (MED, GEMS-IT) <Paul.Schluter@med.ge.com>
Date: Mon, 16 Dec 2002 07:52:33 -0700
Message-Id: <>
To: W3C XML Schema Comments list <www-xml-schema-comments@w3.org>

Thursday, December 12, 2002,


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)

LEAP SECOND INSERTION  (+ last minute has 61 seconds)

LEAP SECOND DELETION  (- last minute has 59 seconds)
   [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
   NOTE A positive leap second is inserted between 23:59:59Z and
   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

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.


Paul Schluter

Date: Tue, 23 Apr 2002 06:40:06 -0700
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.

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

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:08:59 UTC