Rational Programming Patterns

Meta Entities

The Meta Entity helps you to create your own customized concepts that the metamodel does not handle in a standard manner. There are different types of Meta Entities: Meta Entity Type, User Entity, Meta Data Aggregate. When a Meta Entity instance is defined and described, it is handled as any other Pac instance. User Entities are instances of a given Meta Entity.

META ENTITY TYPE 'CR'
When a ta2 file is imported in a workspace, a project Database_Name.INTER is created automatically at the root of all projects. Thus, the project can be shared by all other projects. It contains an instance of Meta Entity Type named "CR", which is the standard structure used by all entities to add references between entities. Its description is available in the editors of all entities with the tab CR Lines. With this tab, you can add new references that are not defined in the design of entities. The contents of CR Lines in the 'INTER' project can be modified only by an administrator who can add new fields but cannot delete existing fields which are required. But it is forbidden to modify the Composition tab in the Meta Entity Type CR.
META ENTITY/USER ENTITY
You can customize the information saved in a database to adapt it to the specificity of your business by creating new entities: Meta Entities and User instances, which are the instances of Meta Entities.
You must create a Meta Entity first and then describe the structure of its User Entities in the Composition tab of the Meta Entity editor. The description of a User Entity entirely depends on the composition of the corresponding Meta Entity defined by the user. In the Meta Entity you must define User relations for the fields included in a User Entity and defined with a Reference type in the Meta Entity it is related to. User entities are managed in the same way as standard entities. You can assign them keywords and comments. For each User Entity, you can enter values in the description tab for each component entered in the associated Meta Entity.
Example: For a Meta Entity "Service" containing two Data Elements: "Type of service" and "Number of employees", you can define the User Entity "Info" which can be completed as follows: "Computing Service" and "50 Employees".
META ENTITY TYPE
You can also create Meta Entity Type instances to extend Pac standard entities and thus add descriptions to an entity Type. When a Meta Entity Type instance is created, it is associated with the type of Pac entity that you defined in the Meta Entity Type creation wizard. As a consequence, a new tab is added to the editor of the extended Pac entity. By default, it takes the label of the Meta Entity Type, or its name if no label is specified. There are as many description tabs added to the extended entity editor as Meta Entity Type instances created for this entity type.
Example: If you want to extend the description of a Program entity and if you create two Meta Entity Type instances ("Program 1" and "Program 2") which apply to the Pac Program entity, you find then in the Program editor two additional tabs ("Program 1" and "Program 2") . The descriptions are saved in the entity itself, so you do not need to create a User Entity. The tab corresponding to the extension of the entity description is the same as the description tab of a User Entity.
META DATA AGGREGATE
To create a hierarchy of data that is to be used in several Meta Entities you can create Meta Data Aggregates. These are entities that you create, define, and compose as you do for Meta Entities. When it has been defined and described, you can reuse a Meta Data Aggregate in your Meta Entities or in your Meta Entity Type. However, a Meta Data Aggregate contains a specificity, as when you create a Meta Data, a root is automatically inserted in the Composition tab of the Meta Data editor. This root is given the name of the Meta Data Aggregate by default, and it cannot be modified nor deleted.
Example of Meta Data Aggregate reuse in a Meta Entity:
  • A Meta Data Aggregate "Address"
  • A Meta Entity "Customer" with two fields "Name" and "Address"
  • And a Meta Entity "Seller" with two fields "Name" and "Address"

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)