Towards a Comparative Analysis of
Meta-Metamodels
Heiko Kern
University of Leipzig
11th Domain-Specific Modeling Workshop
October 23, 2011, Portland, Oregon
Motivation
• There are many meta-modeling languagesCurrent Situation
11th Domain-Specific Modeling Workshop 2011
2
• Choice of a suitable meta-modeling language
• Model interoperabilityProblem
• Comparison of meta-modeling languagesSolution
Design of the Comparison
11th Domain-Specific Modeling Workshop 2011
3
 Objectives of the study
What are typical concepts in meta-modeling languages?
What are the properties of these meta-modeling concepts?
 Selection of meta-metamodels
Meta-modeling approach
 Heavyweight
 3-Level model hierarchy
Concrete syntax: graphical syntax with textual annotation
Available as tool
for (i=0; i<10; i++) {
doSomething();
} buySomething()
age
gender
Customer
Model
Meta-model
Meta-metamodel
Language
Meta-language
Meta-Metamodels under StudyARIS
MSDSLTools
Ecore
MSVisio
GME
GOPPRR
11th Domain-Specific Modeling Workshop 2011
4
ObjDefType
CxnDefType
Attribute
source
1..*
1..*
target
1..*
1..* attributes
*
*
attributes*
*
Model
*
*
attributes
ObjOccType
(Symbol)
CxnOccType
symbols* *
source
1..*
1..*
target
1..*
1..*
11
definition occurance
connections
*
*
*
*
connections
* *objects
assignment
* *
1..*1..*
symbols
EClass
EReference
EAttribute
1
*
eReferenceType
EStructuralFeature
*
eStructural
Features
eSuperTypes
*
EPackage
* eClassifiers
Paradigm
Atom
Connection
FCO
Model
ReferenceSet
*
models
*
fco
Connection Role
1..*
member
*
*
refer
Attribute
*
attributes
sub
*
*
inheritance
NamedDomainElement
DomainRole
DomainClass
DomainProperty
DomainRelationship
*
property
1
*
superclass
1 *
rolesPlayed
rolePlayer
1
source
1
target
Language
*
1
Stencil
isConnection : boolean
Master*
masters
Property
*
properties
Concept
Property
**
properties
Relationship
Role
Object
bindings
1
*
1
*
relation
roles
*
*
objects
* *
** roles
*
*
objects
relations
*
*
connections
1
*
Graph
NonProperty
Binding
Connection
*
ancestor
1
Port
ports *
*
*
decomposition
explosion
*
*
explosion **
*
*
explosion
Some Modeling Concepts by Example
11th Domain-Specific Modeling Workshop 2011
5
Object
OUTINOUTIN
RelationRole RolePort Port
Model
Object A Object B
Attribute value
First Class Metamodeling Concepts
 All meta-metamodels support object type, relation type, and attribute
 |Concepts|: GOPPRR = GME > MS DSL Tools > ARIS > Ecore = MS Visio
11th Domain-Specific Modeling Workshop 2011
6
ARIS Ecore GOPPRR GME
MS
DSL Tools
MS Visio
Object type
ObjDefType,
ObjOccType
EClass Object type
Atom, Model,
Set
Domain Class Master
Relation
type
CxnDefType,
CxnOccType
EReference
Relation
type,
Collection
Connection,
Set,
Reference
Domain
Relationship
Master
Role type - - Role type
Connection
Role
Domain Role -
Port type - - Port type
Reference
Port
- -
Attribute Attribute EAttribute Property Attribute
Domain
Property
Property
Model type Model type - Graph type Model - -
Relationship Type
11th Domain-Specific Modeling Workshop 2011
7
ARIS Ecore GOPPRR GME
MS
DSL Tools
MS Visio
Arity Binary Binary N-ary Binary Binary Binary
Multiplicity
Default
(0..n)
Yes Yes Yes Yes
Default
(0..n)
Object-Set Yes No Yes No No No
Inverse No Yes No No No No
Composition No Yes No Yes Yes No
Relationship
Dependency
Method EClass Project Paradigm Domain Class Stencil
Role
Dependency
- - Project Connection
Domain
Relationship
-
Relationship Type
 Reference-Relation
 Object-Relation
 Role-Relation
 Set-Relation
 GOPPRR > GME > MS DSL Tools > ARIS > Ecore > MS Visio
11th Domain-Specific Modeling Workshop 2011
8
ARIS
Ecore
GOPPRR
GME
MSDSL
Tools
MSVisio
Refer-
ence
X X X
Binary
object
X X X X (X)
Set X X
Role X X X
N-ary
object
X
O1 O2
R O2O1
R
O3O1
O4O2
...
...
R Ro2Ro1 O2O1
R
O1
O2
O3
O4
Binary
N-ary
Attribute
11th Domain-Specific Modeling Workshop 2011
9
ARIS Ecore GOPPRR GME
MS
DSL Tools
MS Visio
Multiplicity
Single-
value
Multi-
value
Multi-value Single-
value
Single-value
Multi-
value
Unique - Yes Yes - - No
Ordered - Yes No - - Yes
Default value No Yes Yes Yes Yes Yes
Dependency Method EClass Project Paradigm
Domain
Class,
Domain
Relationship
Master
Attributable object Yes Yes Yes Yes Yes Yes
Attributable
relationship
Yes No Yes Yes Yes Yes
Attributable role - - Yes No No No
Attributable port - - Yes No No No
Attributable model Yes - Yes Yes - -
Simple datatype Yes Yes Yes Yes Yes Yes
Metamodel element
datatype
No No Yes No No No
Other
11th Domain-Specific Modeling Workshop 2011
10
ARIS Ecore GOPPRR GME
MS
DSL Tools
MS Visio
Inheritance No Multiple Single Multiple Single No
Object - Yes Yes Yes Yes -
Relationship - No Yes Yes No -
Role - - Yes No No -
Port - - Yes No - -
Model - - Yes Yes - -
Links to sub
model types
Yes - Yes Yes - -
Grouping
Method,
Model
EPackage
Project,
Graph
Folder,
Paradigm
Language,
Namespace
Stencil
Constraint
language
No OCL proprietary OCL dialect
Programming
language
No
Conclusion and Future Work
 Comparison of six meta-metamodels
 Definition of comparison criteria
 ARIS, Ecore, GOPPRR, GME, MS DSL Tool, MS Visio
 Some observations
 Object type, relation type, and attribute are core concepts
 There are different realizations of relation type
 No extraordinary concepts such as clabjects
 Some (unproved) statements
 GOPPRR and GME has a great practical expressiveness
 Visio has a limited practical expressiveness
 Future Work
 Improvement of the comparison
 Comparison criteria
 More meta-metamodels
 Modeling space: MOFv1.4, KM3, ADONIS
 Other spaces: XML Schema, OWL, Grammarware
 Model interoperability
 Transformation between meta-modeling concepts
11th Domain-Specific Modeling Workshop 2011
11
Quellen
Essen, 25.05.2011
12
Thank you for your
attention.

Comparison of Meta-Modeling Languages

  • 1.
    Towards a ComparativeAnalysis of Meta-Metamodels Heiko Kern University of Leipzig 11th Domain-Specific Modeling Workshop October 23, 2011, Portland, Oregon
  • 2.
    Motivation • There aremany meta-modeling languagesCurrent Situation 11th Domain-Specific Modeling Workshop 2011 2 • Choice of a suitable meta-modeling language • Model interoperabilityProblem • Comparison of meta-modeling languagesSolution
  • 3.
    Design of theComparison 11th Domain-Specific Modeling Workshop 2011 3  Objectives of the study What are typical concepts in meta-modeling languages? What are the properties of these meta-modeling concepts?  Selection of meta-metamodels Meta-modeling approach  Heavyweight  3-Level model hierarchy Concrete syntax: graphical syntax with textual annotation Available as tool for (i=0; i<10; i++) { doSomething(); } buySomething() age gender Customer Model Meta-model Meta-metamodel Language Meta-language
  • 4.
    Meta-Metamodels under StudyARIS MSDSLTools Ecore MSVisio GME GOPPRR 11thDomain-Specific Modeling Workshop 2011 4 ObjDefType CxnDefType Attribute source 1..* 1..* target 1..* 1..* attributes * * attributes* * Model * * attributes ObjOccType (Symbol) CxnOccType symbols* * source 1..* 1..* target 1..* 1..* 11 definition occurance connections * * * * connections * *objects assignment * * 1..*1..* symbols EClass EReference EAttribute 1 * eReferenceType EStructuralFeature * eStructural Features eSuperTypes * EPackage * eClassifiers Paradigm Atom Connection FCO Model ReferenceSet * models * fco Connection Role 1..* member * * refer Attribute * attributes sub * * inheritance NamedDomainElement DomainRole DomainClass DomainProperty DomainRelationship * property 1 * superclass 1 * rolesPlayed rolePlayer 1 source 1 target Language * 1 Stencil isConnection : boolean Master* masters Property * properties Concept Property ** properties Relationship Role Object bindings 1 * 1 * relation roles * * objects * * ** roles * * objects relations * * connections 1 * Graph NonProperty Binding Connection * ancestor 1 Port ports * * * decomposition explosion * * explosion ** * * explosion
  • 5.
    Some Modeling Conceptsby Example 11th Domain-Specific Modeling Workshop 2011 5 Object OUTINOUTIN RelationRole RolePort Port Model Object A Object B Attribute value
  • 6.
    First Class MetamodelingConcepts  All meta-metamodels support object type, relation type, and attribute  |Concepts|: GOPPRR = GME > MS DSL Tools > ARIS > Ecore = MS Visio 11th Domain-Specific Modeling Workshop 2011 6 ARIS Ecore GOPPRR GME MS DSL Tools MS Visio Object type ObjDefType, ObjOccType EClass Object type Atom, Model, Set Domain Class Master Relation type CxnDefType, CxnOccType EReference Relation type, Collection Connection, Set, Reference Domain Relationship Master Role type - - Role type Connection Role Domain Role - Port type - - Port type Reference Port - - Attribute Attribute EAttribute Property Attribute Domain Property Property Model type Model type - Graph type Model - -
  • 7.
    Relationship Type 11th Domain-SpecificModeling Workshop 2011 7 ARIS Ecore GOPPRR GME MS DSL Tools MS Visio Arity Binary Binary N-ary Binary Binary Binary Multiplicity Default (0..n) Yes Yes Yes Yes Default (0..n) Object-Set Yes No Yes No No No Inverse No Yes No No No No Composition No Yes No Yes Yes No Relationship Dependency Method EClass Project Paradigm Domain Class Stencil Role Dependency - - Project Connection Domain Relationship -
  • 8.
    Relationship Type  Reference-Relation Object-Relation  Role-Relation  Set-Relation  GOPPRR > GME > MS DSL Tools > ARIS > Ecore > MS Visio 11th Domain-Specific Modeling Workshop 2011 8 ARIS Ecore GOPPRR GME MSDSL Tools MSVisio Refer- ence X X X Binary object X X X X (X) Set X X Role X X X N-ary object X O1 O2 R O2O1 R O3O1 O4O2 ... ... R Ro2Ro1 O2O1 R O1 O2 O3 O4 Binary N-ary
  • 9.
    Attribute 11th Domain-Specific ModelingWorkshop 2011 9 ARIS Ecore GOPPRR GME MS DSL Tools MS Visio Multiplicity Single- value Multi- value Multi-value Single- value Single-value Multi- value Unique - Yes Yes - - No Ordered - Yes No - - Yes Default value No Yes Yes Yes Yes Yes Dependency Method EClass Project Paradigm Domain Class, Domain Relationship Master Attributable object Yes Yes Yes Yes Yes Yes Attributable relationship Yes No Yes Yes Yes Yes Attributable role - - Yes No No No Attributable port - - Yes No No No Attributable model Yes - Yes Yes - - Simple datatype Yes Yes Yes Yes Yes Yes Metamodel element datatype No No Yes No No No
  • 10.
    Other 11th Domain-Specific ModelingWorkshop 2011 10 ARIS Ecore GOPPRR GME MS DSL Tools MS Visio Inheritance No Multiple Single Multiple Single No Object - Yes Yes Yes Yes - Relationship - No Yes Yes No - Role - - Yes No No - Port - - Yes No - - Model - - Yes Yes - - Links to sub model types Yes - Yes Yes - - Grouping Method, Model EPackage Project, Graph Folder, Paradigm Language, Namespace Stencil Constraint language No OCL proprietary OCL dialect Programming language No
  • 11.
    Conclusion and FutureWork  Comparison of six meta-metamodels  Definition of comparison criteria  ARIS, Ecore, GOPPRR, GME, MS DSL Tool, MS Visio  Some observations  Object type, relation type, and attribute are core concepts  There are different realizations of relation type  No extraordinary concepts such as clabjects  Some (unproved) statements  GOPPRR and GME has a great practical expressiveness  Visio has a limited practical expressiveness  Future Work  Improvement of the comparison  Comparison criteria  More meta-metamodels  Modeling space: MOFv1.4, KM3, ADONIS  Other spaces: XML Schema, OWL, Grammarware  Model interoperability  Transformation between meta-modeling concepts 11th Domain-Specific Modeling Workshop 2011 11
  • 12.

Editor's Notes

  • #4 Lightweight: Extension or modification of an already existing modeling language Heavyweight: Definition of a completely new language through a meta-modeling language