NOF Metamodel
Here you see the NOF Metamodel.

It displays the three main entities in the Metamodel
- ObjectSubClasses
- These hold the properties of the data model.
- They can be reused inside the model (as you see ObjectSubClass1 appears two times)
- SubClassesBags
- The purpose of SubClassesBags is to bundle ObjectSubClasses together.
- Object instances are always created from a SubClassesBag. When an instance is created, it will contain the properties of all the ObjectSubClasses in the Bag.
- SubClassesBags cannot be reused. One SubClassesBag exists in exactly one ObjectClass.
- SubClassesBags are aware of the sum of the properties of the ObjectSubclasses they contain.
- ObjectClasses
- ObjectClasses contain one or more SubClassesBags.
- An ObjectClass is aware of those properties common to every SubClassesBag it contains.