The X-day calendar numbering scale

greenspun.com : LUSENET : TimeBomb 2000 (Y2000) : One Thread

X-Day

This is a proposal for adopting a standardized numbering plan for calendar calculations, sort of a Universal Time Coordinates but a number scale specifically designed for use in date calculations. This approach takes the 7-digit Julian Day number and discards the most significant (leftmost) digit (a '2'), which isn't going to change for 27 centuries. This gives a 6-digit number such as 451150 for today 1998-12-02. This six-digit number format has several benefits including taking up the same space as the more conventional formats such as 12/02/98, 981202, etc.

Another name for the Xday can be 'the Ulian date' since it's the Julian (2451150) without the leading character. A more condensed format (the Lian date) is to also drop the sixth digit (a '4'), which will not change to a 5 for 133 years. The Lian date would refer to 51150. The fifth digit will not change (45 going to 46) for 24 years and so a four-digit date number could also be used (today as 1150...the Ian date?).

Xday=Julian - 2,000,000
Xday=Lillian - 299,160
Xday=Ulian
Xday=Lian + 400,000
Xday=Ian + 450,000

In terms of new software (and maybe remediation), using the 6-digit Xday seems like a step in the right direction because it is not ambiguous and avoids field expansion. Comments...?

--------begin reference--------

XDAY

A Proposal by Bob Bemer

Use the simple XDay method to avoid Year 2000 problems with interchange of date data.

http://www.year2000.com/y2kcurrent2.html

--------begin quote--------

For day 1 of the following centuries the Julian Day (in parentheses) is: 1800 (2378497), 1900 (2415021), 2000 (2451545), 2100 (2488070) ... 2400 (2597642).

The first digit stays the same for 27 centuries, and it won't roll over from "2" to "3" for 15 more centuries. So we DON'T NEED the leading "2"! Imply it, and call the 6 remaining digits

"XDay" (eXchange Day).

May 16 of 1998 had XDay value of 450950. January 1st of 2000 (the most feared) is XDay 451545 (see the display).

       YYYYMMDD        XDAY       YYMMDD       MMDDYY        DDMMYY

       18581116       400000      581115       111558        151158
       19000101       415021      000101       010100        010100
       19431003       431001      431003       100343        031043
       19990101       451180      990101       010199        010199
       19991231       451544      991231       123199        311299
       20000101       451545      000101       010100        010100
       20230224       460000      230224       022423        240223
       21320831       500000      320931       083132        310832
       35010814       999999      010814       081401        140801

XDay has some wonderful properties, the best being that, unlike the Lilian Day that IBM provides formulas for, it can't be mistaken for any other form of date. It's unique! (XDay = LilianDay + 299160)

--------begin quote--------



-- Jon (jonmiles@pacbell.net), December 03, 1998

Answers

Isn't Bob Bemer the man who invented Cobol? Sounds like someone to pay attention to; he was one of the first to blow the siren about Y2K, back during the Nixon administration. I defer to the IT experts to evaluate the XDay proposal, however.

-- Sara Nealy (saran@ptd.net), December 03, 1998.

Its just too much of a change to use this method in existing applications. Could be built into new ones though. As long as it works more or less indefinitely it doesn't really matter which date coding you use.

-- Richard Dale (rdale@figroup.co.uk), December 03, 1998.

Moderation questions? read the FAQ