Subtypes A subtype contains a set of values which represents only a subset of the values of a base type. This subtype is defined using restrictions.
Restrictions have some forms depends on the nature of the base type.
The subtype takes over all operations of the base type. The scalar subtypes may constrain the value range of a scalar type to a specified value range. An array subtype can be used to declare a constrained array by specifying index ranges for an originally unconstrained array .