Subject: Question about PDB header dates - Y2K

From: [email-masked] (Joe M Leonard)
Date: Thu, 6 May 1999 12:23:03 -0400

Folks,

It seems that the PDB file header has dates in the form:

DD-MMM-YY

So, what should the date be next year - DD-MMM-00 or will
the new custodians switch to DD-MMM-2000?  Inquiring minds
(who have to take care of I/O routines) want to know...

Thanks in advance!

Joe Leonard
[email-masked]

---

From: Andrew Dalke <[email-masked]>
Date: Fri, 07 May 1999 13:48:36 -0600

Joe M Leonard <[email-masked]>
> (who have to take care of I/O routines) want to know...

(I've cc'ed this reply to the PDB-L mailing list as well since
that's the more appropriate venue.)

I believe the proper treatment is to rollover to 00, since
the date is a fixed format with two years for the year.

  30-DEC-99 31-DEC-99 01-JAN-00  02-JAN-00   (rollover)

In this case, you would have to know that the earliest PDB
record is the obsolete "1B5C" from 10-AUG-72.  This is
conviently close to the unix/posix 0 date of Jan. 1, 1970 so
you can map:
  70-99 --> 1970-1999
  00-69 --> 2000-2069

and after that hope that everyone has migrated to mmCIF or CML
or some other more exensible file format.

  However, looking at the format definition, every card which
uses a "Date" type (HEADER, OBSLTE, REVDAT, and SPRSDE) contains
at least two unused characters afterwards, so there is the
backwards compatible *possible* solution of using:

  DD-MMM-YYCC

where the "CC" represent something like a century.  There are
two solutions here, the perl way, where the year written is the
real year - 1900 (so 2000 is "100"), and the Javascript way,
where the sequence of years is 98, 99, 2000, 2001.

So the date could be represented as:

  30-DEC-99 31-DEC-99 01-JAN-001  02-JAN-001  (the perl way)
  30-DEC-99 31-DEC-99 01-JAN-0020 02-JAN-0020 (the javascript way)

I've not heard the official PDB policy to this regard, but I'll bet
they've decided to do the rollover solution.  In any case, they'll
have to change their format definition for "Date" listed  at
   http://www.rcsb.org/pdb/docs/format/pdbguide2.2/part_85.html   
which currently says:

| Date     A 9 character string in the form dd-mmm-yy where DD is the
|          day of the month, zero-filled on the left (e.g., 04); MMM is
|          the common English 3-letter abbreviation of the month; and
|          YY is a year in the 20th century.

Hopefully along with this fix they will address the format definition
problems listed in the mailing list thread starting with:
   http://www.pdb.bnl.gov/hypermail/1074.html

						Andrew Dalke
						[email-masked]