The definition of date normalization is rather loose. I think you want to say something like this; "if month is greater than 12, then month-12 shall be added to the first month in the year specified.", etc. The problem with how it is stated is that "that" does not refer to anything in "that number of months".

Clarify the definition of date normalization.

DATE Part 4, Section 3.17.7.74

te

Proposed Disposition of DIS 29500 Comment GR-0110 (Modified: 2007-11-30) We agree that the definition of normalization to handle out-of-range input values for DATE was inadequate. The following changes will be made to Part 4, §3.17.7.74 page 2,600, line 7 through page 2,601, line 9: 3.17.7.74 DATE Arguments: Name Type Description year month number A month, truncated to integer, that together with year and day specifies the date whose serial value is to be computed. If month is in the range 1­12, the month shall be interpreted as month. If month is less than 1 or greater than 12, the month shall be interpreted as the normalized value (see below) of month, and the year shall be adjusted accordingly. month shall be interpreted as the number of months relative to the final month of the year prior to the specified year. day number A day, truncated to integer, that together with month and year specifies the date whose serial value is to be computed. If day is in the allowable range of days for the month, the day shall be interpreted as day. If day is less than 1 or greater than the number of days in the given month, the day shall be interpreted as the normalized (see below) of day, and the year and month shall be adjusted accordingly. day shall be interpreted as the number of days relative to the last day of the month (and its associated year) prior to the month (and its associated year) as determined from month and year (see below). The value of month or day in a year-month-day argument triplet can be out of range. month is simply an instance of counting a given number of months, minus one, relative to January of the year specified, using the Gregorian calendar [ISO 8601]. This calendar defines that there are 12 months in a year, and that when counting forward, the month following December of one year is January of the following year, and when counting backward, the month preceding January of one year is December of the previous year. Likewise, day is simply an instance of counting a given number of days, minus one, relative to the first day of the adjusted month, using the Gregorian calendar. This calendar defines the number of days in each month, and that when counting forward, the day following the final day of one month is the first day of the following month, and when counting backward, the day preceding the first day of one month is the final day of the previous month. [Example: The year-month-day argument triplets (2007, 12,32), (2007,13,1), and (2008,1,1) all result in the same serial date. end example] [Note: One way to handle out-of-range values for month or day is as follows: Compute yearAdjust = INT((month - 1)/12) Compute adjustedMonth = month - (yearAdjust * 12) Compute adjustedYear = year + yearAdjust. A serialDateBase can now be computed for the first day of the adjustedYear and adjustedMonth. Finally, compute the serial date for the full triplet by adding (day-1) to this serialDateBase. end note] Month and/or day normalization occurs when month and/or day is outside the range 1­12 and 1­number-of-days-in-the-given-month, respectively. Specifically, if month is greater than 12, that number of months shall be added to the first month in the year specified. If month is less than 1, the magnitude of that number of months, plus 1, is subtracted from the first month in the year specified. If day is greater than the number of days in the month specified, that number of days is added to the first day in the month specified. If day is less than 1, the magnitude of that number of months, plus 1, is subtracted from the first day in the month specified. If both month and day in the same date are normalized, month is normalized first. Return Type and Value: number ­ The serial value for the given date. Similar Comments: CO-0178 , GB-0391 , US-0190

Tag and Go

No Comments

Leave a comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

  • Argentina (1)
  • Australia (30)
  • Austria (1)
  • Belgium (1)
  • Brazil (64)
  • Bulgaria (3)
  • Canada (79)
  • Chile (217)
  • China (1)
  • Colombia (237)
  • Czech Republic (75)
  • Denmark (168)
  • Ecma (76)
  • Ecuador (1)
  • Finland (15)
  • France (592)
  • Germany (162)
  • Ghana (12)
  • Greece (113)
  • India (82)
  • Iran (58)
  • Ireland (12)
  • Israel (33)
  • Italy (2)
  • Japan (82)
  • Jordan (1)
  • Kenya (81)
  • Malaysia (23)
  • Malta (5)
  • Mexico (7)
  • New Zealand (54)
  • Norway (12)
  • Peru (10)
  • Philippines (7)
  • Poland (4)
  • Portugal (118)
  • Singapore (2)
  • South Africa (17)
  • South Korea (25)
  • Spain (1)
  • Switzerland (19)
  • Thailand (1)
  • Tunisia (3)
  • Turkey (1)
  • UK (635)
  • Uruguay (18)
  • USA (288)
  • Venezuela (73)