The above graphic clarifies the principle of extending the visibility of package elements over several levels.
P1 and
P2 are two main packages. The object IF_1 (from the sub-package P1_2) is
passed up to the interface I1 (of the main package P1) using the package
interface I2_3 through I1_2. This makes it visible in P2.
Conversely, the element FM_1 is only added to the package interface I2_1, so
it is not passed up to the next level. This means that its visibility is not
extended any further; it is limited to subpackage P1_1. In contrast, TAB_1
cannot be seen outside P1_2, since it has not been added to any of its package
interfaces.