I used Prof Widom's example to create an object-role model (see below). I hope that you agree that the ORM approach is much simpler than the functional dependency procedure described by Prof Widom. (Especially since NORMA gives you and "instant" relational schema in 5NF)
Glossing over the fact that your model does not capture the requirements described in those videos (that is not important in the context of the present discussion), certainly the generated “Relational View” is not even in 2NF (that's a consequence of a defect in your ORM model, i.e., redundant facts).
I cannot comment on whether or how much ORM is better than something else, because I have not used it much yet. One thing I can say so far is that I am disappointed (but not surprised) by the ORM-to-Relational mapping performed by NORMA. This is a topic for a different thread, though.
However, where the join path is ambiguous (i.e. there are many possible join paths for the constraint), one needs to specify the intended join path explicitly.
Sure.
The task of adding a "Role Path Editor" to NORMA for VS2017 is on my "TO DO" list.
Great!
It would be very helpful if you could provide some detail about what you would like a Role Path Editor to do and how you would like it to work.
I haven't thought much about it (if you haven't come out with a solution in ten years, I guess that it is not a trivial issue), but I think that what is missing is the possibility to “project” a path to some roles. Ideally, this should work automatically if possible, i.e., after one has chosen the “source” roles 1,2,3,…,N along a path and the “target” roles A,B for a certain constraint, NORMA should be able to project the join of 1,2,…,N to A,B if there is only one role among 1,…,N which is compatible with A and only one role which is compatible with B. If automatic inference is not possible then there should be a mechanism to associate each target role with one of the source roles in the join path.
In this website, we use the term "conceptual model" within the universe of discourse called "object-role modeling"
Just to be clear, I was not passing judgment, just stressing that your definition is scoped, as you have pointed out.