Questions about combining Rings and Subtypes in nORMa
The figure below is a simple model created for testing only (using the 04/08 drop - build 1290). The model shows no errors.
(Editors Note: click on the diagram to see all of it.)
The first questions concern the legitimacy of this structure as an ORM implementation of a business rule. Given the model as shown, which (if either), of the following UofD business rules are implemented, fully or in part?
- a) A manager is someone who supervises other employees.
- b) Only managers supervise other employees.
I think some additional constraint is required to implement "Rule b"; have a suggestion?
A related question: is it legitimate to combine Ring Fact Types with Subtypes in this way?
Assuming it is legitimate (and assuming it is the best way to model an actual domain - wholly unfounded assumption), shouldn't this be easier to construct in nORMa? Selecting the Objectified Predicate always brings up the base Fact Type - rather than the OP name, in the Fact Editor. The only way I could add the rule about KeySets, was to create a unconnected Fact Type like "Temp is issued KeySet(.id)" then delete the Temp object and connect the first role to "Manager." Once done, it looks Ok in the Object Browser.
The second figure include is of the Employee table from the Relational View (I didn't include the whole RV, because other unrelated pages in this test project obscure the issue). Here giving meaningful names to the roles in the Ring Fact Type provides the only indication of instances of Employee that manage/is managed (but note that the term "Manager" is not seen in this or any other table).