Smalltalk: subclassing subtyping is-a
Journal of Object-Oriented Programming
A Theory of Objects
From EDOC Components to CCM Components: A Precise Mapping Specification
FASE '02 Proceedings of the 5th International Conference on Fundamental Approaches to Software Engineering
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Transformation: The Missing Link of MDA
ICGT '02 Proceedings of the First International Conference on Graph Transformation
A type system for object models
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Model-Based Test Driven Development of the Tefkat Model-Transformation Engine
ISSRE '04 Proceedings of the 15th International Symposium on Software Reliability Engineering
Model bus: towards the interoperability of modelling tools
MDAFA'03 Proceedings of the 2003 European conference on Model Driven Architecture: foundations and Applications
Automatic Generation and Evolution of Model Transformations Using Ontology Engineering Space
Journal on Data Semantics XI
Building abstractions in class models: formal concept analysis in a model-driven approach
MoDELS'06 Proceedings of the 9th international conference on Model Driven Engineering Languages and Systems
Typing model transformations using tracts
ICMT'12 Proceedings of the 5th international conference on Theory and Practice of Model Transformations
Hi-index | 0.00 |
Where object-oriented languages deal with objects as described by classes, model-driven development uses models, as graphs of interconnected objects, described by metamodels. A number of new languages have been and continue to be developed for this model-based paradigm, both for model transformation and for general programming using models. Many of these use single-object approaches to typing, derived from solutions found in object-oriented systems, while others use metamodels as model types, but without a clear notion of polymorphism. Both of these approaches lead to brittle and overly restrictive reuse characteristics. In this paper we propose a simple extension to object-oriented typing to better cater for a model-oriented context, including a simple strategy for typing models as a collection of interconnected objects. Using a simple example we show how this extended approach permits more flexible reuse, while preserving type safety.