Comparison of the classical and the proposed modeling approach. A) Classical OO-class model of different kinds of molecules. B) Model of different kinds of molecules following the proposed approach. On top, the class model with typed class Molecule and its type definition class MoleculeType. At the bottom, the object model that defines concrete kinds of molecules, instances of MoleculeType. They are used by instances of the typed class Molecule.