ANNEX B
The Definition of Year 2000 Conformity Prepared
by British Standards Institute (Document Ref: DISC PD2000-1)
"Year 2000 Conformity shall mean that neither
performance nor functionality is affected by dates prior to, during
and after the Year 2000"
Rule 1
"No value for current date will cause any interruption
in operation"
- This rule is sometimes referred to as General
Integrity;
- If this requirement is satisfied, roll-over between
all significant time demarcations will be performed correctly;
- Current Date refers
to today's date as known to the equipment or software.
Rule 2
"Date functionality must behave consistently
for dates prior to, during and after year 2000"
- This rule is sometimes referred to as Date
Integrity;
- This rule means that all equipment and software
must calculate, manipulate, and represent dates correctly for
the purpose for which they were intended;
- The meaning of functionality includes
both processes and the results of these processes;
- If desired, a reference point for date values
and calculations may be added by organisations: eg as defined
by the Gregorian calender;
- No equipment or software shall use particular
date values for special meanings; eg "99" to signify
"no end value", or "end of file".
Rule 3
"In all interfaces and data storages, the century
in any date must be specified either explicitly or by unambiguous
algorithms or inferencing rules"
- This rule is sometimes known as explicit/implicit
century;
- It covers two general approaches:
a) explicit representation of the year
in dates: eg 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 Service) should have precedence.
b) the use of inferencing rules: e.g.
two-digit years with a greater value 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.
Rule 4
"Year 2000 must be recognised as a leap year"
- The year 2000 is a leap year, whereas the years
1800 and 1900 were not. Hence for proper compliance there must
be rollover from 28-02-2000 to 29-02-2000 (and subsequently to
01-03-2000), and from 28-02-1900 to 01-03-1900.
General Notes
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 the feasible
life-span of equipment or products and/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.
NB This material may be freely copied provided
that the source is acknowledged (BSI-DISC), and it is reproduced
in full.
|