British Standards Institution Definitions
A Definition of Year 2000 Conformity Requirements
This document addresses what is commonly known as Year 2000 conformity (also sometimes known as century or millennium compliance). It provides a definition of this expression and requirements that must be satisfied in equipment and products which use dates and times.
It has been prepared by British Standards Institution committee BDD/1/-/3 in response to demand from UK industry, commerce and the public sector. It is the result of work from the following bodies whose contributions are gratefully acknowledged: BT, Cap Gemini, CCTA, Coopers & Lybrand, Halberstam Elias, ICL, National Health Service, National Westminster Bank.
BSI-DISC would also like to thank the following organizations for their support and encouragement in the development of this definition: taskforce 2000, 2003, Barclays Bank, British Airways, Cambridgeshire County Council, Computer Software Services Association, Department of Health, Ernst & Young, Federation of Small Businesses, IBM, ICI, National Power, Paymaster Agency, Prudential Assurance, Reuters, Tesco Stores.
While every care has been taken in developing this document, the contributing organizations accept no liability for any loss or damage caused, arising directly or indirectly, in connection with reliance on its contents except to the extent that such liability may not be excluded at law. Independent legal advice should be sought by any person or organization intending to enter into a contractual commitment relating to Year 2000 conformity requirements.
This entire document or the definition section may be freely copied provided that the text is reproduced in full, the source acknowledged and the reference number of the document is quoted.
Year 2000 conformity shall mean that neither performance nor functionality is affected by dates prior to, during and after the year 2000. In particular:
- No value for current date will cause any interruption in operation.
- Date-based functionality must behave consistently for dates prior to, during and after year 2000.
- In all interfaces and data storage, the century in any date must be specified either explicitly or by unambiguous algorithms or inferencing rules
- Year 2000 must be recognized as a leap year.
Amplification of The Definition and Rules
Problems can arise from some means of representing dates in computer equipment and products and from date-logic embedded in purchased goods or services, as the year 2000 approaches and during and after that year. As a result, equipment or products, including embedded control logic, may fail completely, malfunction or cause data to be corrupted.
To avoid such problems, organizations must check, and modify if necessary, internally produced equipment and products and similarly check externally supplied equipment and products with their suppliers. The purpose of this document is to allow such checks to be made on a basis of common understanding.
Where checks are made with external suppliers, care should be taken to distinguish between claims of conformity and the ability to demonstrate conformity.
- 1.1 This rule is sometimes known as general integrity.
- 1.2 If this requirement is satisfied, roll-over between all significant time demarcations (e.g. days, months, years, centuries) will be performed correctly.
- 1.3 Current date means today's date as known to the equipment or product.
- 2.1 This rule is sometimes known as date integrity.
- 2.2 This rule means that all equipment and products must calculate, manipulate and represent dates correctly for the purposes for which they were intended.
- 2.3 The meaning of functionality includes both processes and the results of those processes.
- 2.4 If desired, a reference point for date values and calculations may be added by organisations; e.g. as defined by the Gregorian calendar.
- 2.5 No equipment or product shall use particular date values for special meanings; e.g. "99" to signify "no end value" or "end of file" or "00" to mean "not applicable" or "beginning of file".
- 3.1 This rule is sometimes known as explicit/implicit century.
- 3.2 It covers two general approaches:
- (a) explicit representation of the year in dates: e.g. by using four digits or by including a century indicator. In this case, a reference may be inserted (e.g. 4-digit years as allowed by ISO standard 8601:1988) and it may be necessary to allow for exceptions where domain-specific standards (e.g. standards relating to Electronic Data Interchange, Automatic Teller Machines or Bankers Automated Clearing Services) should have precedence.
- (b) the use of inferencing rules: e.g. two-digit years with a value greater than 50 imply 19xx, those with a value equal to or less than 50 imply 20xx. Rules for century inferencing as a whole must apply to all contexts in which the date is used, although different inferencing rules may apply to different date sets.
For Rules 1 and 2 in particular, organisations may wish to specify allowable ranges for values of current date and dates to be manipulated. The ranges may relate to one or more of the feasible life-span of equipment or products or the span of dates required to be represented by the organisation's business processes. Tests for specifically critical dates may also be added (e.g. for leap years, end of year, etc). Organisations may wish to append additional material in support of local requirements.
Where the term century is used, clear distinction should be made between the "value" denoting the century (e.g. 20th) and its representation in dates (e.g. 19xx) & similarly, 21st and 20xx.