OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

office message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [OASIS Issue Tracker] Commented: (OFFICE-2343) 3.3.3 Date andDateTime - 1900 as leap year



    [ http://tools.oasis-open.org/issues/browse/OFFICE-2343?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17670#action_17670 ] 

Patrick Durusau commented on OFFICE-2343:
-----------------------------------------

Good to set it for CD-2 as the current text has serious issues beyond what I noted above. 

We currently say:

****
Date is a subtype of number; the number is the number of days from a particular date called the epoch. Thus, a date when presented as a general-purpose number is also called a serial number. This specification does not specify the exact value of the epoch, but implementations shall support all dates from 1904-01-01 through 9999-12-31 (inclusive), with correct calculations.
 
Portable spreadsheet files shall not assume any particular epoch values.
 
Many applications cannot handle Date values before January 1, 1900. Some applications can handle dates for the years 1900 and on, but include a known defect: they incorrectly presume that 1900 was a leap year (1900 was not a leap year). Applications may reproduce the 1900-as-leap-year bug for compatibility purposes, but should not. Office-2343

Portable documents shall not include date calculations that require the incorrect assumption that 1900 was a leap year. Portable documents shall not assume that negative date values are impossible (many implementations use negative dates to represent dates before the epoch).  Portable documents should use the epoch date 1899-12-30 to compensate for serial numbers originating from applications that include a 1900-02-29 leap day in their calculations. 
****
Recast all this into:

Date is a subtype of number. The number of days from a date is called an epoch. Epochs that shall be supported by evaluators are from 1904-01-01 through 9999-12-31.

Evaluators may accept expressions that treat 1900 as a leap year.

Note: Some evaluators may accept negative date values to represent dates before a defined epoch. Behavior in that case is implementation dependent and reduces the interchangeability of data that depends on such behavior.

Note: Treatment of 1900 as a leap year may reduce the interchangability of data that depends on that treatment. Use of the epoch date 1899-12-30 may compensate for expressions that depend upon the use of a 1900-02-29 date. 

(I think that captures everything from the prior text.)  

> 3.3.3 Date and DateTime - 1900 as leap year 
> --------------------------------------------
>
>                 Key: OFFICE-2343
>                 URL: http://tools.oasis-open.org/issues/browse/OFFICE-2343
>             Project: OASIS Open Document Format for Office Applications (OpenDocument) TC
>          Issue Type: Bug
>          Components: OpenFormula
>    Affects Versions: ODF 1.2 Part 2 CD 1
>            Reporter: Patrick Durusau
>            Assignee: Dennis Hamilton
>             Fix For: ODF 1.2 Part 2 CD 2
>
>
> Currently we say:
> ***
> Many applications cannot handle Date values before January 1, 1900. Some applications can handle dates for the years 1900 and on, but include a known defect: they incorrectly presume that 1900 was a leap year (1900 was not a leap year). Applications may reproduce the 1900-as-leap-year bug for compatibility purposes, but should not. 
> ***
> Rob Weir suggests that we should not make editorial comments about bugs, compatibility, etc. I think that is a good point. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tools.oasis-open.org/issues/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]