7.6. Subcategories
Subcategories are a logical construct that provides you another type of relationship (sometimes called a "Supertype" or "SubType" relationship) to work with. On the physical side of the model, a subcategory is implemented using a mix the types of relationships that I've already talked about (you'll see the specifics of that before you're done).
A subcategory deals with the situation where you have a number of what may first seem like different entities but which share some, although not all, things in common.
I think the best way to get across the concept of a subcategory is to show you one. To do this, we'll take the example of a document in a company.
A document has a number of attributes that are common to any kind of document. For example:
Title
Author
Date created
Date last modified
Storage location
I'm sure there are more. Note that I'm not saying that every document has the same title, rather that every document has a title. Every document has an author (possibly more than one actually, but, for this example, you'll assume a limit of one). Every document was created on some date. You get the picture — you're dealing with the attributes of the concept of a document, not any particular instance of a document.
But there are lots of different kinds of documents. From things like legal forms (say your mortgage documents) to office memos, to report cards — there are lots of document types. Still, each of these can still be considered to be a document — or a subcategory ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access