Ambiguity and ORM2 (Object-Role Modeling v2)
ORM2 is a type of fact-based modelling
2023–03–18 — Resubmitted in full, with further notes for genuine researchers. Original of this article at 2023–03–01 on GitHub: here
ORM2 (Object-Role Modeling v2) is a type of fact-based modeling, which is a type of concept Role Modeling is a graphical language.
The short answer to the question posed in the title of this article is:
“Yes, under certain circumstances, sentences of ORM2 can be constructed, the interpretation of which are ambiguous”.
This might be contrary to marketing material you have read on Object-Role Modeling, or indeed contrary to academic papers published on Object-Role Modeling and by journals of varying reputation.
Things are not entirely lost for the application or utility of the ORM notation, only to any claim to the efficacy of ORM under the formalisation of ORM. It would be dishonest for my company to produce ORM based software without having first disclosed the limitations of ORM outside of software.
Consider the following ORM2 diagram:
The symbol in the middle of the diagram is a Join Subset Constraint. It looks like this: