Describir: Representation of metamodels using inductive types in a type-theoretic framework for MDE