Recommended practice of supertype and model{2}

In the article “Recommended Subtyping practices for the Enterprise Data Model” by David Ruble, the author mentions a few practices of subtyping and models we should use in designing a database. The first deals with “multiple subtype discriminators at the same level” (Ruble 2006). In otter word, we should separate entity that have different characteristic or have it own roles. Like the example the author given (see picture 1), we could ended up having a vehicle that inherit both attribute from two different entity Passenger Vehicle and Plane, Passenger Plane. Technically, we can use this model but it will be a problem for database designer because it will take times to implement that. A solution to that is to have a subtype discriminator at the top level (see picture 2). When we have a subtype discriminator, “a member of one subtle is unlikely to migrate to become a member of another” (Ruble 2006). Therefore, we  will never see a vehicle name passenger plane; it will either be a passenger vehicle or a plane.







Second, the Party vs. Party role model. “Party is at the core of enterprise data models that have the need to recognize that the people and organizations of interest to the business play multiple roles – but remain the same individuals and organizations” (Ruble 2006). Like in the picture 3, a party consist of the people and the organization but within the organization we can separate the role of the person associate with the company into either an employee, a customer or a vendor.





Another practice is state-transition models. “State transition models are another tool that the analyst can use to show which business events or processes kick the entity from one state to the next” (Ruble 2006). This is a detailed model; it would layout the steps of what would happened as we move on to the next level.








I found this article to be relevant with what we learned this week. It reinforce the use  of generalization. Also, I found Party vs. Party Roles model is somewhat similar to Entity cluster. I do like the state-transition model because it is simple and people who do not know about database can read and understand the process.


Ruble, D. (2006, August). Recommended Subtyping Practices For The Enterprise Data Model. Retrieved from