A small modelling refinement could be added to the Quantity package so that the typing of the DV_ABSOLUTE_QUANTITY class is fully defined for the temporal subtypes current defined, and the model remains extensible.
- add the class DV_TEMPORAL as a subtype of DV_ABSOLUTE_QUANTITY and
parent of DV_DATE, DV_TIME, DV_DATE_TIME.
- this class has one function, diff() that redefines the result type of
the diff function from DV_ABSOLUTE_QUANTITY to be DV_DURATION.