I\'m designing this collection of classes and abstract (MustInherit) classes…
It's probably not the answer you want to hear, but the best way to avoid logical inconsistencies, you really want to look at database normalisation