Issue 17427: Confusing text for Gregorian calendar (date-time-ftf) Source: NIST (Mr. Edward J. Barkmeyer, edbark(at)nist.gov) Nature: Uncategorized Issue Severity: Summary: It is not clear what list the text bullets following the diagram in 12.3.1 are members of, and they are not sentences. Further, they have the pattern: "Gregorian year coordinate composed of a Gregorian year, for example 2010", but coordinates are defined to 'indicate' time points. They are not "composed of" time points in any sense. On the other hand, a 'G. year month coordinate' is composed of two time coordinates, but not two time points. The definition of 'Gregorian year coordinate' is: "absolute atomic time coordinate that indicates a Gregorian year that has the index equal to the index of the Gregorian year coordinate". The term 'Gregorian year coordinate' is being used in its own definition. The definition should read: "absolute atomic time coordinate that indicates a Gregorian year". (There are no other time coordinates that indicate Gregorian year time points.) There is a related Necessity: Each Gregorian year coordinate indicates the Gregorian year that has an index that is equal to the index of the Gregorian year coordinate. This pattern also applies to G. day of month, G. day of year coordinates, and hour, minute, second coordinates. It applies to numeric 'Gregorian month coordinates', but the time coordinate "January" does not have an index, per se. "January" is a term for the time point, but not an index (integer). The UML model (Figure 12.3) makes 'atomic time coordinate has index' a derived relationship, but that is false, given the intent: the index of the time coordinate is used to identify the time point, not taken from the identified time point. And in that case, the non-derived 'index' property is 0..1. The definition of 'Gregorian year month coordinate' misuses the verb concept 'compound time coordinate combines atomic time coordinate': "Definition: absolute compound time coordinate that combines the set of {a Gregorian year coordinate, a Gregorian month coordinate} and indicates the Gregorian month that..." A 'set' is not an 'atomic time coordinate' and cannot play that role. What is intended is: "Definition: absolute compound time coordinate that combines a Gregorian year coordinate and that combines a Gregorian month coordinate and that indicates a Gregorian month." That is sufficiently delimiting. The structural rule that determines which month it indicates can be stated as a separate Necessity. This "combines the set of" pattern is used in every compound time coordinate definition in 12.3. Note also that the formal statement of these definitions/necessities suffers from the lack of a basic arithmetic vocabulary (in Annex D?). Elsewhere DTV just says the arithmetic expressions are described in English or mathematical notations. If the arithmetic expressions are removed from the definitions, it becomes easier to do that. The mathematical formulations can be stated in CLIF and OCL. Resolution: Revised Text: Actions taken: June 14, 2012: received issue Discussion: End of Annotations:===== te: Thu, 14 Jun 2012 18:28:23 -0400 From: Ed Barkmeyer Reply-To: Organization: NIST User-Agent: Thunderbird 2.0.0.23 (Windows/20090812) To: "issues@omg.org" Subject: DTV Issue: Confusing text for Gregorian calendar X-NISTMEL-MailScanner-Information: Please contact postmaster@mel.nist.gov for more information X-NISTMEL-MailScanner-ID: q5EMST58019969 X-NISTMEL-MailScanner: Found to be clean X-NISTMEL-MailScanner-SpamCheck: X-NISTMEL-MailScanner-From: edbark@nist.gov X-NISTMEL-MailScanner-Watermark: 1340317711.35@LEQtJWvZKNKMfADYKNY1hA X-Spam-Status: No X-MIME-Autoconverted: from quoted-printable to 8bit by amethyst.omg.org id q5EMSrkM022210 Specification: Date Time Vocabulary Version: Beta-1 Title: Confusing text for Gregorian calendar Source: Ed Barkmeyer, NIST, edbark@nist.gov Summary: It is not clear what list the text bullets following the diagram in 12.3.1 are members of, and they are not sentences. Further, they have the pattern: "Gregorian year coordinate composed of a Gregorian year, for example 2010", but coordinates are defined to 'indicate' time points. They are not "composed of" time points in any sense. On the other hand, a 'G. year month coordinate' is composed of two time coordinates, but not two time points. The definition of 'Gregorian year coordinate' is: "absolute atomic time coordinate that indicates a Gregorian year that has the index equal to the index of the Gregorian year coordinate". The term 'Gregorian year coordinate' is being used in its own definition. The definition should read: "absolute atomic time coordinate that indicates a Gregorian year". (There are no other time coordinates that indicate Gregorian year time points.) There is a related Necessity: Each Gregorian year coordinate indicates the Gregorian year that has an index that is equal to the index of the Gregorian year coordinate. This pattern also applies to G. day of month, G. day of year coordinates, and hour, minute, second coordinates. It applies to numeric 'Gregorian month coordinates', but the time coordinate "January" does not have an index, per se. "January" is a term for the time point, but not an index (integer). The UML model (Figure 12.3) makes 'atomic time coordinate has index' a derived relationship, but that is false, given the intent: the index of the time coordinate is used to identify the time point, not taken from the identified time point. And in that case, the non-derived 'index' property is 0..1. The definition of 'Gregorian year month coordinate' misuses the verb concept 'compound time coordinate combines atomic time coordinate': "Definition: absolute compound time coordinate that combines the set of {a Gregorian year coordinate, a Gregorian month coordinate} and indicates the Gregorian month that..." A 'set' is not an 'atomic time coordinate' and cannot play that role. What is intended is: "Definition: absolute compound time coordinate that combines a Gregorian year coordinate and that combines a Gregorian month coordinate and that indicates a Gregorian month." That is sufficiently delimiting. The structural rule that determines which month it indicates can be stated as a separate Necessity. This "combines the set of" pattern is used in every compound time coordinate definition in 12.3. Note also that the formal statement of these definitions/necessities suffers from the lack of a basic arithmetic vocabulary (in Annex D?). Elsewhere DTV just says the arithmetic expressions are described in English or mathematical notations. If the arithmetic expressions are removed from the definitions, it becomes easier to do that. The mathematical formulations can be stated in CLIF and OCL. To: date-time-ftf@omg.org Subject: Date-Time Issue 17427 - Confusing text for Gregorian calendar X-KeepSent: DC8404F7:6E70CD37-85257A58:000DE33C; type=4; name=$KeepSent X-Mailer: Lotus Notes Release 8.5.3 September 15, 2011 From: Mark H Linehan Date: Sat, 11 Aug 2012 22:32:46 -0400 X-MIMETrack: Serialize by Router on D01ML604/01/M/IBM(Release 8.5.3FP2IF1|July 25, 2012) at 08/11/2012 22:32:48 X-Content-Scanned: Fidelis XPS MAILER x-cbid: 12081202-5930-0000-0000-00000AC52235 Proposed resolution: -------------------------------- Mark H. Linehan STSM, IBM Research Date-Time Issue 17427 - Confusing text for Gregorian calendar.doc Disposition: Resolved OMG Issue No: 17427 Title: Confusing text for Gregorian calendar Source: Ed Barkmeyer, NIST, edbark@nist.gov Summary: It is not clear what list the text bullets following the diagram in 12.3.1 are members of, and they are not sentences. Further, they have the pattern: "Gregorian year coordinate composed of a Gregorian year, for example 2010", but coordinates are defined to 'indicate' time points. They are not "composed of" time points in any sense. On the other hand, a 'G. year month coordinate' is composed of two time coordinates, but not two time points. The definition of 'Gregorian year coordinate' is: "absolute atomic time coordinate that indicates a Gregorian year that has the index equal to the index of the Gregorian year coordinate". The term 'Gregorian year coordinate' is being used in its own definition. The definition should read: "absolute atomic time coordinate that indicates a Gregorian year". (There are no other time coordinates that indicate Gregorian year time points.) There is a related Necessity: Each Gregorian year coordinate indicates the Gregorian year that has an index that is equal to the index of the Gregorian year coordinate. This pattern also applies to G. day of month, G. day of year coordinates, and hour, minute, second coordinates. It applies to numeric 'Gregorian month coordinates', but the time coordinate "January" does not have an index, per se. "January" is a term for the time point, but not an index (integer). The UML model (Figure 12.3) makes 'atomic time coordinate has index' a derived relationship, but that is false, given the intent: the index of the time coordinate is used to identify the time point, not taken from the identified time point. And in that case, the non-derived 'index' property is 0..1. The definition of 'Gregorian year month coordinate' misuses the verb concept 'compound time coordinate combines atomic time coordinate': "Definition: absolute compound time coordinate that combines the set of {a Gregorian year coordinate, a Gregorian month coordinate} and indicates the Gregorian month that..." A 'set' is not an 'atomic time coordinate' and cannot play that role. What is intended is: "Definition: absolute compound time coordinate that combines a Gregorian year coordinate and that combines a Gregorian month coordinate and that indicates a Gregorian month." That is sufficiently delimiting. The structural rule that determines which month it indicates can be stated as a separate Necessity. This "combines the set of" pattern is used in every compound time coordinate definition in 12.3. Note also that the formal statement of these definitions/necessities suffers from the lack of a basic arithmetic vocabulary (in Annex D?). Elsewhere DTV just says the arithmetic expressions are described in English or mathematical notations. If the arithmetic expressions are removed from the definitions, it becomes easier to do that. The mathematical formulations can be stated in CLIF and OCL. Resolution: Clauses references in this second are to the beta-2 specification. The lists of Gregorian calendar, week calendar, and time of day time coordinates are revised to make them clearer and more formally linked to the glossary entries. The glossary entries themselves are revised along the lines suggested in the summary. .January. is a term for a time point on the Gregorian year of months scale. That time point does have an index on that scale. Hence the construction .index of January. is valid. The use of ordinary arithmetic, unstyled, is described in clause 5.1 and continues with this resolution. Revised Text: All references are to the beta-2 specification. In clause 11.6.1, replace the following text after figure 11.7: . Gregorian year coordinate composed of a Gregorian year, for example "2010" . Gregorian month coordinate composed of a Gregorian month, for example "January" . Gregorian day of year coordinate composed of a Gregorian day of year, for example "Gregorian day of year 360" . Gregorian day of month coordinate composed of a Gregorian day of month, for example "Gregorian day of month 14" . Gregorian year month coordinate composed of a Gregorian year and a Gregorian month of year, for example "July 2010" . Gregorian year month day coordinate composed of a Gregorian year, a Gregorian month of year, and a Gregorian day of month, for example "9 July 2010" . Gregorian year day coordinate composed of a Gregorian year and a Gregorian day of year, for example "2010 day 33" . Gregorian month day coordinate composed of a Gregorian month of year and a Gregorian day of month, for example "9 July" . with: . A Gregorian year coordinate indicates a Gregorian year, for example "2010" . A gregorian month coordinate indicates a Gregorian month, for example "January" . A Gregorian day of year coordinate indicates a Gregorian day of year, for example "Gregorian day of year 360" . A Gregorian day of month coordinate indicates a Gregorian day of month, for example "Gregorian day of month 14" . A Gregorian year month coordinate combines a Gregorian year and a Gregorian month of year to indicate a Gregorian month, for example "July 2010" . A Gregorian year month day coordinate combines a Gregorian year, a Gregorian month of year, and a Gregorian day of month to indicate a Gregorian day, for example "9 July 2010" . A Gregorian year day coordinate combines a Gregorian year and a Gregorian day of year to indicate a Gregorian day, for example "2010 day 33" . A Gregorian month day coordinate combines a Gregorian month of year and a Gregorian day of month to indicate a time set, for example "9 July" In clause 11.6.1, replace the Definition of .Gregorian year coordinate., which reads: Definition: absolute atomic time coordinate that indicates a Gregorian year that has the index equal to the index of the Gregorian year coordinate . with: Definition: absolute atomic time coordinate that indicates a Gregorian year Necessity: Each Gregorian year coordinate indicates a Gregorian year that has an index equal to the index of the Gregorian year coordinate. Description: A Gregorian year coordinate directly gives the Gregorian year number. In clause 11.6.1, replace the Definition of .Gregorian month coordinate., which reads: Definition: relative atomic time coordinate that indicates a Gregorian month of year that has the index equal to the index of the Gregorian month coordinate . with: Definition: relative atomic time coordinate that indicates a Gregorian month of year Necessity: Each Gregorian month coordinate indicates a Gregorian month of year that has an index equal to the index of the Gregorian month coordinate. Description: A Gregorian month coordinate directly gives the index of a calendar month within a calendar year. In clause 11.6.1, replace the Definition of .Gregorian day of year coordinate., which reads: Definition: relative atomic time coordinate that indicates a Gregorian day of year that has the index equal to the index of the Gregorian day of year coordinate . with: Definition: relative atomic time coordinate that indicates a Gregorian day of year Necessity: Each Gregorian day of year coordinate indicates a Gregorian day of year that has an index equal to the index of the Gregorian day of year coordinate. Description: A Gregorian day of year coordinate directly gives the index of a calendar day within a calendar year. In clause 11.6.1, replace the Definition of .Gregorian day of month coordinate., which reads: Definition: relative atomic time coordinate that indicates a Gregorian day of month that has the index equal to the index of the Gregorian day of month coordinate . with: Definition: relative atomic time coordinate that indicates a Gregorian day of month Necessity: Each Gregorian day of month coordinate indicates a Gregorian day of month that has an index equal to the index of the Gregorian day of month coordinate. Description: A Gregorian day of month coordinate directly gives the index of a calendar day within a calendar month. In clause 11.6.1, replace the Definition of .Gregorian year month coordinate., which reads: Definition: absolute compound time coordinate that combines the set of {a Gregorian year coordinate, a Gregorian month coordinate} and indicates the Gregorian month that has index 12 times (the index of the Gregorian year coordinate minus 1) plus (the index of the Gregorian month coordinate minus 1) . with: Definition: absolute compound time coordinate that combines a Gregorian year coordinate and that combines a Gregorian month coordinate and that indicates a Gregorian month Necessity: Each Gregorian year month coordinate indicates a Gregorian month that has index 12 times (the index of the Gregorian year coordinate minus 1) plus (the index of the Gregorian month coordinate minus 1). Description: The Gregorian year coordinate and the Gregorian month coordinate of the Gregorian year month coordinate jointly identify the Gregorian month on the infinite Gregorian months scale. In clause 11.6.1, replace the Definition of .Gregorian year month day coordinate., which reads: Definition: absolute compound time coordinate that combines the set of {a Gregorian year coordinate, a Gregorian month coordinate, a Gregorian day of month coordinate} and indicates the Gregorian day that has starting day of the Gregorian year indicated by the Gregorian year coordinate, plus the value taken from the table of calendar days at the start of each month (below) as indexed by the index of the Gregorian month coordinate and whether the Gregorian year coordinate indicates a leap year, plus the index of the Gregorian day of month coordinate . with: Definition: absolute compound time coordinate that combines a Gregorian year coordinate and that combines a Gregorian month coordinate and that combines a Gregorian day of month coordinate, and indicates a Gregorian day Necessity: Each Gregorian year month date coordinate indicates the Gregorian day that has starting day of the Gregorian year indicated by the Gregorian year coordinate, plus the value taken from the table of calendar days at the start of each month (below) as indexed by the index of the Gregorian month coordinate and whether the Gregorian year coordinate indicates a leap year, plus the index of the Gregorian day of month coordinate. Description: The index of the Gregorian day on the Gregorian days scale is computed from the three components of the Gregorian year coordinate. In clause 11.6.1, replace the Definition of .Gregorian year day coordinate., which reads: Definition: absolute compound time coordinate that combines the set of {a Gregorian year coordinate, a Gregorian day of year coordinate} and indicates the Gregorian day that has starting day of the Gregorian year indicated by the Gregorian year coordinate, plus the index of the Gregorian day of year coordinate . with: Definition: absolute compound time coordinate that combines a Gregorian year coordinate and that combines a Gregorian day of year coordinate and that indicates a Gregorian day Necessity: Each Gregorian day year coordinate indicates a Gregorian day that has the index of the starting day of the Gregorian year indicated by the Gregorian year coordinate, plus the index of the Gregorian day of year coordinate. Description: A Gregorian day year coordinate combines a Gregorian year coordinate and a Gregorian day of year coordinate to identify a particular Gregorian day. At the beginning of clause 12.3.1, replace this bullet list: . Day of week coordinate composed of a day of week, for example "Tuesday" . Week of year coordinate composed of a week number, for example "week 15" . Week day coordinate composed of a week of year coordinate and a day of week, for example "Tuesday week 15" . Year week coordinate composed of a Gregorian year and a week of year coordinate, for example "2010 week 15". . Year week day coordinate composed of a Gregorian year, a week of year coordinate, and a day of week, for example "Tuesday 2010 week 15". . with: . A day of week coordinate indicates a day of week, for example "Tuesday" . A week of year coordinate indicates a week of year, for example "week 15" . A week day coordinate combines a week of year coordinate and a day of week to indicate a weekday of year, for example "Tuesday week 15" . A year week coordinate combines a Gregorian year and a week of year coordinate to indicate a calendar week, for example "2010 week 15". . A year week day coordinate combines a Gregorian year, a week of year coordinate, and a day of week to indicate a calendar day, for example "Tuesday 2010 week 15". In clause 12.3.1, replace the Definition of .day of week coordinate., which reads: Definition: relative atomic time coordinate that indicates a day of week that has the index equal to the index of the day of week coordinate . with: Definition: relative atomic time coordinate that indicates a day of week Necessity: Each day of week coordinate indicates a day of week that has the index equal to the index of the day of week coordinate. Description: A day of week coordinate directly identifies a day of week time point. In clause 12.3.1, replace the two Definitions of .week of year coordinate., which read: Definition: relative atomic time coordinate that indicates a week of year that has the index equal to the index of the week of year coordinate Definition: number which identifies a calendar week within its calendar year according to the rule that the first calendar week of a calendar year is that one which includes the first Thursday of that calendar year and that the last calendar week of a calendar year is the calendar week immediately preceding the first calendar week of the next calendar year . with: Definition: relative atomic time coordinate that indicates a week of year Necessity: Each relative atomic time coordinate indicates a week of year that has an index equal to the index of the week of year coordinate. Description: A week of year coordinate gives the number of a calendar week within a calendar year. Definition: number which identifies a calendar week within its calendar year according to the rule that the first calendar week of a calendar year is that one which includes the first Thursday of that calendar year and that the last calendar week of a calendar year is the calendar week immediately preceding the first calendar week of the next calendar year In clause 12.3.1, replace the Definition of .week day coordinate., which reads: Definition: relative compound time coordinate that combines the set of {a week of year coordinate, a day of week coordinate}, and indicates a weekday of year that has index equal to (7 * (index of the week of year coordinate . 1)) + the index of the day of week coordinate - 1 . with: Definition: relative compound time coordinate that combines a week of year coordinate and that combines a day of week coordinate and that indicates a weekday of year Necessity: Each week day coordinate indicates a weekday of year that has index equal to (7 * (index of the week of year coordinate . 1)) + the index of the day of week coordinate . 1. Description: A week day coordinate combines a week of year and a day of week to identify a weekday of year, a calendar day within a year period. Note that the year period may not be coextensive with a calendar year because the first week of year may start up to 3 calendar days before the first calendar day of a calendar year. In clause 12.3.1, replace the Definition of .year week coordinate., which reads: Definition: absolute compound time coordinate that combines the set of {a Gregorian year coordinate, a week of year coordinate}, and indicates a time period from the starting weekday of the Gregorian year indicated by the Gregorian year coordinate + (7 * (the index of the week of year coordinate . 1)) to the starting weekday of the Gregorian year indicated by the Gregorian year coordinate + (7 * (the index of the week of year coordinate)) . with: Definition: absolute compound time coordinate that combines a Gregorian year coordinate and that combines a week of year coordinate, and that indicates a time point sequence that is on the Gregorian days scale Necessity: Each year week coordinate indicates a time point sequence that is on the Gregorian days scale and that is from the index of the starting weekday of the Gregorian year indicated by the Gregorian year coordinate + (7 * (the index of the week of year coordinate . 1)) to the starting weekday of the Gregorian year indicated by the Gregorian year coordinate + (7 * (the index of the week of year coordinate)). Description: A year week coordinate is interpreted as a time point sequence of Gregorian days so that such a coordinate can be compared with, for example, a Gregorian year month day coordinate. In clause 12.3.1, replace the Definition of .year week day coordinate., which reads: Definition: absolute compound time coordinate that combines the set of {a Gregorian year coordinate, a week of year coordinate, a day of week coordinate }, and indicates the Gregorian day that is the starting week day of the Gregorian year indicated by the Gregorian year coordinate, plus (7 * (index of the week of year coordinate . 1) + index of the day of week coordinate - 1 . with: Definition: absolute compound time coordinate that combines a Gregorian year coordinate and that combines a week of year coordinate and that combines a day of week coordinate, and that indicates a Gregorian day Necessity: Each year week day coordinate indicates a Gregorian day that is the index of the starting week day of the Gregorian year indicated by the Gregorian year coordinate, plus (7 * (index of the week of year coordinate . 1) + index of the day of week coordinate . 1. Description: A year week day coordinate indicates a calendar day by a combination of a Gregorian year coordinate, a week of year coordinate, and a day of week coordinate. At the start of clause 13.3, replace this bullet list: . hour coordinate, composed of an hour of day, for example "hour 10" or "10 a.m." . minute coordinate, composed of a minute of hour, for example "minute 33" . second coordinate, composed of a second of minute, for example "second 27" . hour minute coordinate, composed of an hour of day and a minute of hour, for example "10:33" . hour minute second coordinate, composed of an hour of day, a minute of hour, and a second of minute, for example "10:33:27 . with: . An hour coordinate indicates an hour of day, for example "hour 10" or "10 a.m." . A minute coordinate indicates a minute of hour, for example "minute 33" . A second coordinate indicates a second of minute, for example "second 27" . An hour minute coordinate combines an hour of day and a minute of hour to indicate a minute of day, for example "10:33" . An hour minute second coordinate combines an hour of day, a minute of hour, and a second of minute to indicate a second of day, for example "10:33:27 In clause 13.3, replace the Definition of .hour coordinate., which reads: Definition: relative atomic time coordinate that indicates the hour of day that has the index equal to the index of the hour coordinate . with: Definition: relative atomic time coordinate that indicates an hour of day Necessity: Each hour coordinate indicates an hour of day that has the index equal to the index of the hour coordinate. Description: An hour coordinate directly indicates an hour of day. In clause 13.3, replace the Definition of .minute coordinate., which reads: Definition: relative atomic time coordinate that indicates the minute-of-hour that has the index equal to the index of the minute coordinate . with: Definition: relative atomic time coordinate that indicates a minute-of-hour Necessity: Each minute coordinate indicates a minute-of-hour that has the index equal to the index of the minute coordinate. Description: A minute coordinate directly indicates a minute of hour. In clause 13.3, replace the Definition of .second coordinate., which reads: Definition: relative atomic time coordinate that indicates a second of minute that has the index equal to the index of the second coordinate . with: Definition: relative atomic time coordinate that indicates a second of minute Necessity: Each second coordinate indicates a second of minute that has the index equal to the index of the second coordinate. In clause 13.3, replace the Definition of .hour minute coordinate., which reads: Definition: relative compound time coordinate that combines the set of {an hour coordinate, a minute coordinate} and indicates the minute of day that has index 60 times the index of the hour coordinate plus the index of the minute coordinate . with: Definition: relative compound time coordinate that combines an hour coordinate and that combines a minute coordinate, and that indicates a minute of day Necessity: Each hour minute coordinate indicates a minute of day that has index 60 times the index of the hour coordinate plus the index of the minute coordinate. Description: An hour minute coordinate combines an hour coordinate and a minute coordinate to indicate a minute of day. In clause 13.3, replace the Definition of .hour minute second coordinate., which reads: Definition: relative compound time coordinate that combines the set of {an hour coordinate, a minute coordinate, a second coordinate}, and indicates the second of day that has index 3 600 times the index of the hour coordinate plus 60 times the index of the minute coordinate plus the index of the second coordinate . with: Definition: relative compound time coordinate that combines an hour coordinate and that combines a minute coordinate and that combines a second coordinate, and that indicates a second of day Necessity: Each hour minute second coordinate indicates a second of day that has index 3 600 times the index of the hour coordinate plus 60 times the index of the minute coordinate plus the index of the second coordinate. Disposition: Resolved