Limit assumed_value to C_PRIMITIVE_OBJECT


The attribute "assumed_value" from C_DEFINED_OBJECT cannot be sensibly implemented in the subclass C_COMPLEX_OBJECT. The only two subtypes that support "assumed_value" are C_DOMAIN_TYPE and C_PRIMITIVE_OBJECT. In the specs, the text says "Assumed values are definable at the leaf level only, which appears to be adequate for all purposes
described to date; accordingly, they appear in descendants of C_PRIMITIVE and also C_DOMAIN_TYPE."

Does this suggest that perhaps C_COMPLEX_OBJECT should really inherit directly from C_OBJECT instead of C_DEFINED_OBJECT or move the attribute "assumed_value" to yet another abstract class "C_LEAF_TYPE"?


Thomas Beale
November 14, 2015, 5:31 PM

Changes made to AOM 14 Jan 2013.

Thomas Beale
May 16, 2016, 2:20 PM

Done in 2013


Rong Chen

Raised By

Rong Chen


Affects versions