Subject: Re: ISO 8601 anyone?? - Or just who is this Gregory guy,and why is there a calendar named after him?
Brian Hayes' problem that he's trying to solve by breaking apart date components involves "... date-time values that have implied values. For example, we might write on a paper document 'April 2001' with some implied notion of end-of-month or begining-of-month. Or, what is the standard for encoding a date time for a contract ending on April 30, 2001?" ISO 8601 provides the complete basic calendar month format CCYY-MM, so 2001-04 would be used for April 2001. Was Brian sending out that huge copy of ISO 8601 so someone else could look it up for him? In the W3C Schema you could use the gYearMonth datatype, which "represents a specific gregorian month in a specific gregorian year," and has the ISO 8601 lexical form of CCYY-MM. Finally, Ian Galpin "[notices] that all discussions of date here have always assumed usage of the Gregorian Calendar without question. Are there other people on the other side of the world devising systems based on one of the many other calendar systems still in common usage? If so, there are problems looming..." It's a conspiracy. I've attached some background on the Gregorian Calendar from an old e-mail posted to EDI-L. Sometimes the Gregorian calendar is said to measure years of what's politely called the "Common" era. Have people already forgotten that this Gregory guy was the pope? The calendar is now so ubiquitous that we sometimes overlook how culturally laden it is, marking the years since the Christ event, when - in orthodox Christology - the Word became flesh. I predicted that someone would object to this cultural centrism as long ago as July 2000; see http://lists.ebxml.org/archives/ebxml-core/200007/msg00002.html. Congratulations, Ian. William J. Kammerer FORESIGHT Corp. 4950 Blazer Pkwy. Dublin, OH USA 43017-3305 +1 614 791-1600 Visit FORESIGHT Corp. at http://www.foresightcorp.com/ "accelerating time-to-trade"
- From: "William J. Kammerer" <email@example.com>
- To: <EDI-L@UCCVMA.UCOP.EDU>
- Date: Wed, 8 Jul 1998 14:06:13 -0400Alex Wolff said: "I am concerned with the fact that many companies are fixing the Y2K issues but completely neglecting the Y10K issue. Why not fix both right now? 9999 seems so far away, and most of us will probably not be around by then, but think of all the poor EDI analyst who will be cursing their predecessors." C'mon, Alex, surely you must be kidding? Any human artifact which lasts 8000 years would be considered well-designed. Cities, writing and agriculture probably started no more than 8000 Years ago, so accommodating the next 8000 years is probably sufficient! On MVS mainframes, I always preferred the SAS programming system (http://www.sas.com/), so I'm used to keeping my dates as an integer number of days since Jan 1, 1960. The formatting routines, further, were good for dates from Jan 1, 1582 till 20,000A.D. (Dates before 1960 were represented as negative numbers). The 1582 date is not really a magic number, but rather the date Pope Gregory XIII took 10 days out of the Christian calendar to correct a build up of days (which accounts for the rule that every century year - except those divisible by 400, like 2000A.D. - is not considered a leap year). Since Queen Elizabeth didn't like Catholics much, England didn't adopt this new Papist custom much later till 1752. Thus, providing date functions (like formatting and difference calculation) to span the time before the Gregorian calendar would probably have been a waste of time for SAS. I also like dates which naturally extended the YY parts (of YYMMDD or YYDDD formats) by treating the YY portion as the number of years since 1900A.D. Thus, the dates used internally in IBM's MVS (such as SMF and RMF records) were extended to YYYYDDD long ago, where YYYY as 0100 simply means 100 years since 1900, or 2000A.D. A similar technique has always been used to represent readable dates in FORESIGHT's SEF files, for example: 06/04/96:10:59:48 looks like it is non-Y2k compliant, but in 2000A.D., the date-time stamps will appear something like 06/04/100:10:59:48, where the 100 is number of years since 1900. Internally, all of our date-time values have been kept as the number of seconds elapsed since midnight (00:00:00), January 1, 1970 (the standard DOS/ Windows/UNIX time_t). This runs out of room in 2038, I think, but I'll be retired and gone. William J. Kammerer FORESIGHT Corp. 6543E Commerce Pkwy. Dublin, OH USA 43017-3221 (614) 791-1600 (voice) (614) 791-1609 (fax) e-mail: firstname.lastname@example.org Visit FORESIGHT Corp., the world's leading supplier of EDI productivity tools, at http://www.foresight-edi.com/
Powered by eList eXpress LLC