Previous Table of Contents Next


11 Core::Constructs

   This chapter describes the Constructs package of InfrastructureLibrary::Core. The Constructs package is intended to be reused by the Meta-Object Facility.

Figure 11.1 - The Core package is owned by the InfrastructureLibrary package, and contains several subpackages

   The Constructs package is specified by a number of diagrams each of which is described in a separate section below. The constructs package is dependent on several other packages, notably Basic and various packages from Abstractions, as depicted in Figure 11.2.

Figure 11.2 - The Constructs package depends on several other packages

    Figure 11.2 illustrates the relationships between the Core packages and how they contribute to the origin and evolution of package Constructs. Package Constructs imports model elements from package PrimitiveTypes. Constructs also contains metaclasses from Basic and shared metaclasses defined in packages contained in Abstractions. These shared metaclasses are included in Constructs by copy. Figure 11.2 uses PackageMerge to illustrate the packages that contribute to the definition of Constructs and how. The InfrastructureLibrary metamodel does not actually include these package merges as Constructs is a complete metamodel that already includes all the metaclasses in the referenced packages. This allows Constructs to be understood and used without requiring the use of PackageMerge.