This strategy provides a compact and elegant metamodel for the units and values, and expresses well the underlying physical and mathematical principles of a dimensioned quantity represented by a value subject to chosen units.
Value properties can then be sensibly typed by either a Unit or a ValueType.
In the case where a ValueType has a Unit, the constraint still applies that the dimension of the ValueType must be the same as the dimension of the Unit.