Object-Role Modeling and the 21st Century
Object-Role Modeling (ORM) is a amalgamous conceptual modelling system used for various tasks including database design, capturing business rules and developing ontologies. In some guises, ORM is used to express the logical construction of a conceptual model ranging over a Universe-of-Discourse. In this article we explore how modern-day Object-Role Modeling differs from the NIAM conceptual modelling methodology from which it is derived.
The Object-Role Modeling Triumvirate
Object-Role Modeling is broken down into a triumvirate of conceptually unified parts that allow ORM to express the structure of a Universe-of-Discourse in a manner that aims to be as unambiguous as possible.
These parts are:
- The graphical notation of Object-Role Modeling;
- Natural language extrapolation of logical constructs expressed by an overall Object-Role Model, called ‘verbalisations’; and
- The software driven data populated metamodel of an Object-Role Model that acts as a glue that ties the graphical notation to the natural language verbalisations.
NB While graphical ORM diagrams and natural language verbalisations can exist in isolation, it can be shown that in some circumstances graphical ORM diagrams can be ambiguous, and verbalisations are quite often generated from a software driven data populated metamodel of an Object-Role Model (3 above).
Together, these three parts constitute and Object-Role Model as it is used in modern-day application.
The reasons why the three parts must be considered together as the package that expresses what Object-Role Modeling is today are:
- Standing and considered alone, graphical Object-Role Models cannot be considered formal or expressing logical formality, because:
a) Graphical system are not considered formal systems of logic;
b) Graphical ORM models can be constructed which are ambiguous;
c) Graphical Object-Role Modeling constructs of ORMv2 (called ‘ORM’) have no universally consistent homomorphic mapping to a system or theory of logic (e.g. KL under finite model theory as…