separate the metamodel from the model.