Presentation is loading. Please wait.

Presentation is loading. Please wait.

Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,

Similar presentations


Presentation on theme: "Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,"— Presentation transcript:

1 Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger, J. Schönböck, W. Schwinger Johannes Kepler University Linz, Austria M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger, J. Schönböck, W. Schwinger Johannes Kepler University Linz, Austria This work has been partly funded by the Austrian Science Fund (FWF) under grant P21374-N13.

2 2/10 Multitude of modeling tools available Seamless exchange of models essential Thus, M2M Transformations to overcome heterogeneities are needed Motivation (1/2) MotivationExampleHeterogeneitiesHomepageFuture Work Model Creation Tools Model Checking Tools Model Simulation Tools Model Transformation Tools Code Generation Tools

3 3/10 Motivation (2/2) Kind name:String Publication name:String Publication title:String 1..1 kind kind:String MM of Tool1 MM of Tool2 K1: Kind name = ‘Journal‘ P1: Publication title = ‘P1‘ kind P2: Publication title = ‘P2‘ kind K2: Kind name = ‘Conference‘ P3: Publication title = ‘P3‘ kind P1:Publication name = ‘P1‘ kind = ‘Journal‘ P2:Publication name = ‘P2‘ kind = ‘Journal‘ P3:Publication name = ‘P3‘ kind = ‘Conference‘ Exemplary Model instance of unique Possibilities for expressing the transformation: –Use a model transformation language, e.g., ATL –Use a mapping tool and generate the transformation code –Advantages Abstracts from code Reuses transformation logic through reusable components MotivationExampleHeterogeneitiesHomepageFuture Work  How to express such a transformation? Still unclear  Which kinds of heterogeneities might occur between metamodels? And thus  Which reusable components are needed? Goal of this work Analyze potential heterogeneities Build a systematic classification Provide benchmark examples wrt. expressivity for mapping tools Still unclear  Which kinds of heterogeneities might occur between metamodels? And thus  Which reusable components are needed? Goal of this work Analyze potential heterogeneities Build a systematic classification Provide benchmark examples wrt. expressivity for mapping tools

4 4/10 Heterogeneity Example Kind name:String Publication name:String Publication title:String 1..1 kind kind:String MM of Tool2 unique MM of Tool1 : EClass abstract = false name = ‘Kind‘ : EAttribute name = ‘title‘ lowerBound = 1 upperBound = 1 : EReference name = ‘kind‘ lowerBound = 1 upperBound = 1 containment = false ordered = false : EAttribute name = ‘name‘ lowerBound = 1 upperBound = 1 eStructuralFeatures eReferenceType : EClass abstract = false name = ‘Publication‘ : EAttribute name = ‘name‘ lowerBound = 1 upperBound = 1 : EAttribute name = ‘kind‘ lowerBound = 1 upperBound = 1 eStructuralFeatures : EClass abstract = false name = ‘Publication‘ eStructuralFeatures Concrete Syntax Instances of Ecore (Abstract Syntax) No heterogeneity Naming Difference Naming Difference and Context Difference Modeling Concept Difference MotivationExampleHeterogeneitiesHomepageFuture Work  Which kinds of heterogeneities do occur in this example?  Which kinds of heterogeneities might occur between Ecore-based MMs?

5 5/10 Variation Points in Ecore-based MMs EClass abstract : boolean ENamedElement name : String EClassifier … ETypedElement ordered : boolean lowerBound : int upperBound : int eStructuralFeatures 0..* EStructuralFeature … EReference containment : boolean EAttribute eReferenceType 1..1 EDataType eAttributeType 1..1 eSuperTypes 0..* … … Naming Difference Order Difference Multiplicity Difference Containment Difference Concreteness Difference Datatype Difference Context Difference Direction Difference Breadth Difference Depth Difference Inheritance Type Difference Publication name:String Paper title:String Example – Naming Difference MM of Tool1MM of Tool2 Publication kind:String Publication kind:Integer Example – Datatype Difference MM of Tool1MM of Tool2 Example – Context Difference MM of Tool1MM of Tool2 Publication name:String kind:String Publication name:String 1..1 kind Kind kind:String Example – Order Difference MM of Tool1MM of Tool2 Publication name:String 1..* auths Author name:String Publication name:String 1..* auths Author name:String ordered Example – Multiplicity Difference MM of Tool1MM of Tool2 Publication name:String 1..5 auths Author name:String Publication name:String 1..* auths Author name:String Example – Direction Difference MM of Tool1MM of Tool2 Publication name:String 1..* pubs Author name:String Publication name:String 1..* auths Author name:String Example – Containment Difference MM of Tool1MM of Tool2 Publication name:String 1..* pubs Author name:String Publication name:String 1..* pubs Author name:String Example – Concreteness Difference MM of Tool1MM of Tool2 Publication name:String Conference location:String TechReport university:String Conference location:String TechReport university:String Publication name:String Example – Inheritance Differences MM of Tool1MM of Tool2 Publication name:String Conference location:String Conference location:String TechReport university:String Springer ACM Two-Column Publication name:String  In which combinations might the heterogeneities occur? MotivationExampleHeterogeneitiesHomepageFuture Work

6 6/10 Potential Combinations of Heterogeneities Different cases can be distinguished 1) Same Ecore concepts 2) Different Ecore concepts 3) Different number of Ecore concepts 4) Additionally: valid instance set a) Different number of valid instances b) Difference in the interpretation of the instance values Syntactic Heterogeneities Semantic Heterogeneities Kind name:String Publication name:String Publication title:String 1..1 kind kind:String unique MM of Tool1MM of Tool2 Example – Kind of Concept Difference University name:String Author name:String Author name:String 1..1 uni university:String MM of Tool1MM of Tool2 Example – Number of Concepts Difference Publication name:String Journal name:String kind:String MM of Tool1 MM of Tool2 Example – Number of Instances Difference MotivationExampleHeterogeneitiesHomepageFuture Work

7 7/10 Feature-based Classification of Heterogeneities Syntactic Heterogeneity Semantic Heterogeneity Heterogeneity Naming Difference Structural Difference Disjoint Subset Source-Target-Concept Cardinality Source-Target-Concept Cardinality 1:1 n:1 1:n C2C Datatype Difference Datatype Difference Same Meta- modeling Concept Same Meta- modeling Concept Different Meta- modeling Concept Different Meta- modeling Concept A2A R2R C2A 2R R2C R2A A2C Context Difference Context Difference Multiplicity Difference Multiplicity Difference Multiplicity Difference Multiplicity Difference Context Difference Context Difference Direction Difference Direction Difference Containment Difference Containment Difference Required Feature Optional Feature XOR Features OR Features Legend Core Concept Difference Inheritance Difference I2I Same Meta- modeling Concept Same Meta- modeling Concept Different Meta- modeling Concept Different Meta- modeling Concept I2C A2I I2R C2I I2A R2I Concreteness Difference Concreteness Difference Depth Difference Depth Difference m:n Number of Instances Difference Number of Instances Difference Interpretation of Instance Values Difference Interpretation of Instance Values Difference Inheritance Type Difference Inheritance Type Difference Intersection Superset Order Difference Order Difference Breadth Difference Breadth Difference Order Difference Order Difference  Classification bases on existing work (mainly from the area of data engineering)  F. Legler and F. Naumann. A Classication of Schema Mappings and Analysis of Mapping Tools. In Proc. of BTW'07,  V. Kashyap and A. Sheth. Semantic and schematic similarities between database objects: A context-based approach. VLDB Journal, 5(4): ,  Contribution  Adaptation to the area of MDE  Concept of relationship  Concept of inheritance  Systematization by means of a feature model  Classification bases on existing work (mainly from the area of data engineering)  F. Legler and F. Naumann. A Classication of Schema Mappings and Analysis of Mapping Tools. In Proc. of BTW'07,  V. Kashyap and A. Sheth. Semantic and schematic similarities between database objects: A context-based approach. VLDB Journal, 5(4): ,  Contribution  Adaptation to the area of MDE  Concept of relationship  Concept of inheritance  Systematization by means of a feature model MotivationExampleHeterogeneitiesHomepageFuture Work

8 8/10 Benchmark Examples Should serve as expressivity benchmark for mapping tools Community is invited to contribute! MotivationExampleHeterogeneitiesHomepageFuture Work Initial set of benchmark examples Form-based entry of new examples Ratings of examples Examples are classified

9 9/10 Future Work Extend the benchmark examples to fully cover the classification Apply the benchmark examples to diverse mapping tools from the area of –Model engineering –Data engineering –Ontology engineering Extend own mapping language to provide the required expressivity MotivationExampleHeterogeneitiesHomepageFuture Work

10 10/10 Thank you for your attention! Questions?


Download ppt "Towards an Expressivity Benchmark for Mappings based on a Systematic Classification of Heterogeneities M. Wimmer, G. Kappel, Angelika Kusel, W. Retschitzegger,"

Similar presentations


Ads by Google