Large and complex meta-models such as those of Uml and its profiles are growing due to modelling and inter-operability needs of numerous\ud
stakeholders. The complexity of such meta-models has led to coining\ud
of the term meta-muddle. Individual users often exercise only a small\ud
view of a meta-muddle for tasks ranging from model creation to construction\ud
of model transformations. What is the effective meta-model that represents\ud
this view? We present a flexible meta-model pruning algorithm and\ud
tool to extract effective meta-models from a meta-muddle. We use\ud
the notion of model typing for meta-models to verify that the algorithm\ud
generates a super-type of the large meta-model representing the meta-muddle.\ud
This implies that all programs written using the effective meta-model\ud
will work for the meta-muddle hence preserving backward compatibility.\ud
All instances of the effective meta-model are also instances of the\ud
meta-muddle. We illustrate how pruning the original Uml metamodel\ud
produces different effective meta-models