A type-specific data pointer may only contain the address of a data description of the same type. It may only be defined within a type description. The use of type-specific data pointers is important in supporting the security of types. It prevents data of one type being handled like data of another type.
This integrity is especially important for strongly typed data items. The address of a strongly typed data item is regarded as a type-specific pointer. Consequently it can only be assigned to a pointer which refers to the same type.
Furthermore, a type-specific pointer can only be used to address an elementary item which is specified with the BASED clause with the same type. By the same token, the address of a strongly types elementary item which is specified with the BASED clause can only be set to the address of an elementary item of the same type. As a result, existing restrictions which force the integrity of strongly typed data items cannot be bypassed by using addresses, pointers and data items with the BASED clause.