in OCL expressions, and not the meta-classes related 
to these meta-classes just because the related meta-
classes do not appear in the OCL expressions. Arnor 
Solberg et al. point out the importance of pruning 
metamodels from the aspects of model-driven 
development and aspect-oriented modeling (2009), 
but do not further give solutions. Jung Ho Bae et al., 
propose an algorithm for pruning small metamodels 
for seven types of UML diagrams (2008), and their 
algorithm does not consider packages and OCL 
expressions in UML metamodel and optional 
parameters. 
For the comprehension and maintenance of 
metamodels, Strüber et al., present a tool that 
supports the decomposition of a meta-model into 
clusters of metamodel elements (Daniel et al., 2013). 
They apply clustering algorithms to obtain segments 
of metamodels, and our algorithm is for extracting 
the needed submetamodels that are complete in 
syntax and semantics according to the definition 
relations between metaclasses. 
The static slicing technologies of class models 
are similar to ours. Jaiprakash et al. present an 
algorithm for static slicing of UML architecture 
models (2009), and their slicing criterion only 
consists of one class and one message. Huzefa Kagdi 
et al., propose an idea to enrich slicing criterion 
(2005), and only defines several concepts for 
context-free slicing of single UML class model. 
Fangjun et al propose a slicing algorithm for class 
diagrams (2004), and their algorithm is designed for 
dependence analysis for class diagrams by simply 
finding all relevant classes for a given class. Arnaud 
et al. present a language to build model slicers 
(2011), which can extract model slices from domain-
specific models, and the built slicers can take 
dependent path length, optional classes, and optional 
properties as input, but do not take into account 
OCL expressions and packages, and thus their work 
is unsuited to prune metamodels. 
5 CONCLUSIONS 
The metamodels are important information sources 
with their own characteristics, and one only needs 
parts of the large and complex metamodels in many 
cases. According to the characteristics, the paper 
presents an approach to automatically bi-
directionally extract needed part from a metamodel 
like UML by parsing network structure of packages 
and calculating metaclass models. Moreover, a 
pruned metamodel complies with its initial 
metamodel, and its size is agilely controlled with 
input options. The approach can service to a variety 
of applications that need to prune metamodels. 
ACKNOWLEDGEMENTS 
The work supported by the National Natural Science 
Foundation of China (No. 61672046). 
REFERENCES 
Arnaud Blouin et al. (2011) ‘Modeling Model Slicers’, 
MoDELS, LNCS 6981, 62-76. 
Arnor Solberg, Robert France, and Raghu Reddy. (2005) 
‘Navigating the MetaMuddle’. In: Proceedings of the 
4th Workshop in Software Engineering and 
Application, Jamaica, 2005, 315-321.  
Brian Henderson-Sellers. (2005) ‘UML– the Good, the 
Bad or the Ugly? Perspectives from a panel of 
experts’, Software System Model, 2005(4), 4–13. 
Daniel Strüber,Matthias Selter, and Gabriele Taentzer. 
(2013) ‘A Tool support for clustering large meta-
models’. Proceeding. In: Proceedings of the Workshop 
on scalability in model driven engineering, NY, USA 
,2013. ACM New York, 1-4. 
Dori Dov. (2002) ‘Why significant UML change is 
unlikely’,  Communications of the ACM, 45(11), 82–
85. 
Fangjun W. and Tong Y. (2004) ‘Dependence analysis for 
UML class diagrams’, Journal of Electronics, 2004, 
21(3), 249–254. 
Flatscher RG. (2002) ‘Metamodeling in EIA/CDIF – 
Meta-metamodel and Metamodels’ ACM Trans. 
Modeling and Computer Simulation, 12(4), 322–342. 
Frédéric Fondement, Pierre-Alain Muller, Laurent Thiry, 
Brice Wittmann, and Germain Forestier. (2013) ‘Big 
Metamodels Are Evil’. Model-Driven Engineering 
Languages and Systems, Lecture Notes in Computer 
Science, Volume 8107, 2013,138-153. 
Huzefa Kagdi, Jonathan I. Maletic, Andrew Sutton. (2005) 
‘Context-Free Slicing of UML Class Models’. In: 
Proceedings of the IEEE International Conference on 
Software Maintenance. Washington, 2005,635 – 638. 
Jaiprakash T. Lallchandani and R.Mall. (2009) ‘Static 
Slicing of UML Architectural Models’, Journal of 
Object Technology, Vol. 8(1), 159-188. 
Jiang Yangbing, Weizhong Shao, Lu Zhang, Zhiyi Ma, 
Haohai Ma. (2004) ‘On the Classification of UML’s 
Meta Model Extension Mechanism’, Lecture Notes in 
Computer Science,3273, 54-68. 
Jung Ho Bae, Heung Seok Chae. (2008). ‘UMLSlicer: A 
Tool for Modularizing the UML Metamodel using 
Slicing’.  In: Proceedings of the IEEE 8th 
International Conference on Computer and 
Information Technology, Sydney, 2008,772–777. 
Ma Zhiyi, Xiao He, Chao Liu. (2013) ‘Assessing the 
quality of metamodels’, Frontiers of Computer