Types can have modifiers such as limited, abstract, private etc. Private types can only be accessed and limited types can only be modified or copied within the scope of the package that defines them.[16] Ada 95 adds additional features for object-oriented extension of types.