V for Visualization in Viatra: The Good-old Integration of Graphical and Textual Representations

November 15, 2016     Dr. Zoltán Ujhelyi   Dr. István Ráth   Ádám Lengyel   Dr. Ákos Horváth       Share

As one of the enabler technology for many model-based tools (e.g., Capella, IncA, EMDW etc.) within the Eclipse platform and beyond. Viatra the unique reactive and event-driven model transformation platform has finally broken the barriers of its Xtext based textual specification language and now provides a full featured visual representation of its query definitions using Sirius.

Our talk focuses on the experience we have gained during the development of two different approaches for our visual representation. The first approach followed the traditional rule of thumb to have a separate Ecore metamodel specifically designed for the graphical representation while the second one focused on to reuse the Xtext-based metamodel and specify the editor directly on top of it.

  • What level of reusability is possible from an Xtext based tooling for a Sirius based visualization, especially for model validation?
  • Which parts of the Sirius editor specification become more complicated when using an Xtext based metamodel (e.g., model manipulation operations, navigation, traceability)?
  • How to ensure the semantical equivalence of a textual and a graphical representation?
  • How to handle the different editing strategies of Sirius and Xtext (transactional editing domains compared to complete reparsing)?

The result presented in this talk is the outcome of a cooperation between IncQuery Labs and Thales.