The partial date/time classes in the data types specification contain three errors, previously not found due to not being compiled as part of the formal reference model. They are:
the type of the function "enclosing_interval" should be DV_INTERVAL<T> not INTERVAL<T>, in order to be compatible with other DV_ date/time types that would likely be part of processing
the attribute "magnitude" in DV_TIME has been defined as Integer, which is incompatible with the inherited magnitude - it should be Double.
the post-conditions for DV_PARTIAL_DATE.magnitude and DV_PARTIAL_TIME.magnitude are wrong. In addition, the UML diagram contains the wrong type for DV_TIME.magnitude, and DV_PARTIAL_TIME.magnitude is missing.
The partial date/time classes in the data types
specification contain three errors, previously not found due to not
being compiled as part of the formal reference model. They are:
the type of the function "enclosing_interval" should be
DV_INTERVAL<T> not INTERVAL<T>, in order to be compatible with
other DV_ date/time types that would likely be part of
processing
the attribute "magnitude" in DV_TIME has been defined as Integer,
which is incompatible with the inherited magnitude - it should
be Double.
the post-conditions for DV_PARTIAL_DATE.magnitude and
DV_PARTIAL_TIME.magnitude are wrong.
In addition, the UML diagram contains the wrong type for
DV_TIME.magnitude, and DV_PARTIAL_TIME.magnitude is missing.