Each InfoGrid application makes use of a single ModelBase, which stores the working Model of the application. Other names for the concept of a ModelBase used in the literature include "meta-data repository", "data dictionary" and so forth.
The ModelBase enables application developers:
- to dynamically look up model information related to a MeshObject, e.g. in order to discover the EntityTypes a MeshObject is currently blessed with and then render all discovered Properties; or to determine what source and destination EntityTypes are required for a given RelationshipType.
- to be able to rely that InfoGrid checks, at run-time, that manipulations of the MeshObjectGraph are always consistent with the working Model of the application. For example, if a Model defined that an Order must always be placed by exactly one Customer, applications are not allowed to relate a second Customer to the same Order with the Customer_Places_Order RelationshipType.