The figure shows the containment hierarchy for instance types. In other words, what types can contain what types. The hierarchy has three levels.

The top level of the hierarchy consists of two types: OraField and OraParameter.

The second level of the hierarchy contains: OraObject, OraRef, OraCollection, OraBLOB, OraCLOB, OraBFILE, or any scalar type. Either of the two top level types can contain any of the second level types.

The third level of the hierarchy contains: OraAttribute types or element values. An OraObject or an OraRef can contain one or more OraAttributes. An OraCollection can contain values for multiple collection elements.