I'm just looking for some help on mapping a certain relationship for a simple DB I'm working on.
My problem is that I have one entity that has to have a relationship with one of two other entities. It must be one and cannot be both. And for the life of me I can't figure out how to map this relationship effectively.
I have the entities Class, Professor and Tutor. A Class must be taught by either a Professor or a Tutor. But cannot be taught by both.
A Professor or Tutor may not teach any classes at all or may teach more than one.
So to back up a bit, any good reason why you consider Professor and Tutor as two distinct entities, rather than a single entity with a non-key attribute to indicate whether they are a Professor or a Tutor?
Yeah, I'm using sub types elsewhere in my design, but I don't think I can use it here.
My specific situation is that I have a product entity that has to have an owner, either a company, or a individual. Companies and Individuals have no common attributes so I can't specialise them from one entity. And they are both used in other relationships (example there is also a Manufactures relationship between product and company).
I'm guessing there isn't a simple way to do what I asked and have an or relationship?