coreutils: Calendar date items

1 
1 29.2 Calendar date items
1 ========================
1 
1 A “calendar date item” specifies a day of the year.  It is specified
1 differently, depending on whether the month is specified numerically or
1 literally.  All these strings specify the same calendar date:
1 
1      1972-09-24     # ISO 8601.
1      72-9-24        # Assume 19xx for 69 through 99,
1                     # 20xx for 00 through 68.
1      72-09-24       # Leading zeros are ignored.
1      9/24/72        # Common U.S. writing.
1      24 September 1972
1      24 Sept 72     # September has a special abbreviation.
1      24 Sep 72      # Three-letter abbreviations always allowed.
1      Sep 24, 1972
1      24-sep-72
1      24sep72
1 
1    The year can also be omitted.  In this case, the last specified year
1 is used, or the current year if none.  For example:
1 
1      9/24
1      sep 24
1 
1    Here are the rules.
1 
1    For numeric months, the ISO 8601 format ‘YEAR-MONTH-DAY’ is allowed,
1 where YEAR is any positive number, MONTH is a number between 01 and 12,
1 and DAY is a number between 01 and 31.  A leading zero must be present
1 if a number is less than ten.  If YEAR is 68 or smaller, then 2000 is
1 added to it; otherwise, if YEAR is less than 100, then 1900 is added to
1 it.  The construct ‘MONTH/DAY/YEAR’, popular in the United States, is
1 accepted.  Also ‘MONTH/DAY’, omitting the year.
1 
1    Literal months may be spelled out in full: ‘January’, ‘February’,
1 ‘March’, ‘April’, ‘May’, ‘June’, ‘July’, ‘August’, ‘September’,
1 ‘October’, ‘November’ or ‘December’.  Literal months may be abbreviated
1 to their first three letters, possibly followed by an abbreviating dot.
1 It is also permitted to write ‘Sept’ instead of ‘September’.
1 
1    When months are written literally, the calendar date may be given as
1 any of the following:
1 
1      DAY MONTH YEAR
1      DAY MONTH
1      MONTH DAY YEAR
1      DAY-MONTH-YEAR
1 
1    Or, omitting the year:
1 
1      MONTH DAY
1