Architecture Changes

Changes in architecture in 6.4 release.

  • Data model moved from the Meta module to the Data one.

  • Source layer refactoring:

    • Attributes. The abstractions for record attributes are moved to Core (SimpleMetaModelAttribute, ArrayMetaModelAttribute, CodeMetaModelAttribute, ComplexMetaModelAttribute) with the following hierarchy (Figure 1).

    • Attributes. Attributes are implemented for the data model: SimpleDataModelAttribute, ArrayDataModelAttribute, CodeDataModelAttribute, ComplexDataModelAttribute. They extend the abstract implementations by adding a new attribute type, a link to the lookup entity (Figure 2).

Moved attributes for records

Figure 1. Moved attributes for records

New attributes

Figure 2. New attributes

  • Objects. The AbstractMetaModelEntity object has been added to Core (Figure 3, 4).

New object

Figure 3. New object

Summary object hierarchy for the Data Model

Figure 4. Summary object hierarchy for the Data Model

  • Instance layer refactoring:

    • Attributes. Methods to work with links to lookup entities have been moved from the AttributeElement interface (located in the Core) to the DataAtributeElement interface, which inherits the AttributeElement interface (Figure 5).

    • The AbstractMetaModelAttributeImpl abstract implementation was added.

AbstractMetaModelAttributeImpl

Figure 5. AbstractMetaModelAttributeImpl

  • Objects. Methods for getting entities, loolup entities and reliations were moved from the EntityElement interface (located in the Core) to the DataEntityElement interface. The AbstractMetaModelEntityImpl abstract implementation has been added (Figure 6).

AbstractMetaModelEntityImpl

Figure 5. AbstractMetaModelEntityImpl

Also see: Modular architecture