Statecharts: A visual formalism for complex systems
Science of Computer Programming
A software engineering experiment in software component generation
Proceedings of the 18th international conference on Software engineering
Handbook of graph grammars and computing by graph transformation: volume I. foundations
Handbook of graph grammars and computing by graph transformation: volume I. foundations
Specification of Graph Translators with Triple Graph Grammars
WG '94 Proceedings of the 20th International Workshop on Graph-Theoretic Concepts in Computer Science
IFM '02 Proceedings of the Third International Conference on Integrated Formal Methods
Guest Editors' Introduction: Model-Driven Development
IEEE Software
A framework for modeling and implementing visual notations with applications to software engineering
ACM Transactions on Software Engineering and Methodology (TOSEM)
Information Modeling and Relational Databases
Information Modeling and Relational Databases
Reconciling diagrams after executing model transformations
Proceedings of the 2006 ACM symposium on Applied computing
Metamodel-based model conformance and multiview consistency checking
ACM Transactions on Software Engineering and Methodology (TOSEM)
Mapping visual notations to MOF compliant models with QVT relations
Proceedings of the 2007 ACM symposium on Applied computing
Graphical Concrete Syntax Rendering with SVG
ECMDA-FA '08 Proceedings of the 4th European conference on Model Driven Architecture: Foundations and Applications
Guideline for the definition of EMF metamodels using an Entity-Relationship approach
Information and Software Technology
Bridging concrete and abstract syntaxes in model-driven engineering: a case of rule languages
Software—Practice & Experience
A framework for the definition of metamodels for Computer-Aided Software Engineering tools
Information and Software Technology
On the usage of concrete syntax in model transformation rules
PSI'06 Proceedings of the 6th international Andrei Ershov memorial conference on Perspectives of systems informatics
Towards the generation of a text-based IDE from a language metamodel
ECMDA-FA'07 Proceedings of the 3rd European conference on Model driven architecture-foundations and applications
Abstract syntax driven language development: defining language semantics through aspects
Proceedings of the International Workshop on Formalization of Modeling Languages
Lessons learned from building a graph transformation system
Graph transformations and model-driven engineering
Model-Driven analysis and synthesis of concrete syntax
MoDELS'06 Proceedings of the 9th international conference on Model Driven Engineering Languages and Systems
Correctly defined concrete syntax for visual modeling languages
MoDELS'06 Proceedings of the 9th international conference on Model Driven Engineering Languages and Systems
A mapping language from models to DI diagrams
MoDELS'06 Proceedings of the 9th international conference on Model Driven Engineering Languages and Systems
A formalisation of constraint-aware model transformations
FASE'10 Proceedings of the 13th international conference on Fundamental Approaches to Software Engineering
Hi-index | 0.00 |
Language-centric methodologies, triggered by the success of Domain Specific Languages, rely on precise specifications of modeling languages. While the definition of the abstract syntax is standardized by the 4-layer metamodel architecture of the OMG, most language specifications are held informally for the description of the semantics and the (graphical) concrete syntax. This paper is tackling the problem of specifying the concrete syntax of a language in a formal and non-ambiguous way. We propose to define the concrete syntax by an extension of the already existing metamodel of the abstract syntax, which describes the concepts of the language, with a second layer describing the graphical representation of concepts by visual elements. In addition, an intermediate layer defines how elements of both layers are related to each other. Unlike similar approaches that became the basis of some CASE tools, the intermediate layer is not a pure mapping from abstract to concrete syntax but connects both layers in a flexible, declarative way. We illustrate our approach with a simplified form of statecharts.