Synchronization between display objects and representation templates in graphical language construction
François Helg Fabien Rohrer
Assistant : Frédéric Fondement
Overview • François • Reminder • • • •
Goal of the project Theoretical issues Problematic Key technologies
• Fabien • • • •
What we have already done What we’re working on Problems To do
12/20/2005
2
Plan • • • • •
Reminder What we have already done What we’re working on Problems To do
12/20/2005
3
Reminder General issues • This project concentrates on defining a graphical concrete syntax for a language, if the abstract syntax is given. • Tool a generic language editor • Part of TopModL project
12/20/2005
4
Reminder Define a language • Definition : • Abstract synthax : MetaModel • Concrete synthax : Graphical templates
Reminder ProBXS • Project of Fabrice Hong (Semester Project in Winter 2004) • Concrete syntax graphical edition tool • « SVG image becomes an editing tool » • Display representation based on SVG templates • DopiDom extension (dynamical behavior) 12/20/2005
6
Reminder DoPIDom • Tool to build interactive environnements, masking the concept of application from user point of view • Based on : DOM (documents) SVG (their representation) • DoPIDom defines the concept of component & defines the behaviour that each component can have (Consumable actions or queries) • DoPIDom also defines the concept of instrument & actions they can produce 12/20/2005
7
Reminder DoPIDom
12/20/2005
8
Reminder DoPIDom
12/20/2005
9
Reminder Exemple of interaction • Change the name of a state in statechart language
12/20/2005
10
Reminder Exemple of interaction • Component « State » can consume the action « changeName » because it implements the interface « Namechangable » • The interactor produces the action by clicking on the component and changing the name. => Our task now (rising synchronization) is to imforme the model that the name changed in the graphical representation.
12/20/2005
11
Reminder Problematic • Need to keep synchronized display objects and representation templates Static synchronization
Dynamic synchronization
12/20/2005
12
Reminder Chosen technologies
ECore Kermeta Instructions
Augmented SVG 12/20/2005
13
Reminder KerMeta • What is KerMeta? • Metamodeling language • Defines • Structure of metamodel • Behavior of metamodel
• High level of abstraction • We don’t have to deal with the concept of repository • We just handle KerMeta’s object and operations.
12/20/2005
14
Switch • Fabien will continue the presentation…
12/20/2005
15
Plan • • • • •
Reminder What we have already done What we’re working on Problems To do
12/20/2005
16
Defining a new language • Definition of the language • MetaModel => • Templates =>
class Node { atribute c : color reference input : set Link[0..*]#side1 reference output : set Link[0..*]#side2 }
Kermeta2Ecore transformation
class Link { reference side1 : set Node[0..*]#input reference side2 : set Node[0..*]#output }
12/20/2005
18
Kermeta2Ecore transformation • Supported by Kermeta • In eclipse environnement
12/20/2005
19
Creating a new language MetaModel
MetaModel
Model
(.kmt)
(.ecore)
(.xmi)
require kermeta using kermeta::standard
class Node { atribute c : color reference input : set Link[0..*]#side1 reference output : set Link[0..*]#side2 }
class Link { reference side1 : set Node[0..*]#input reference side2 : set Node[0..*]#output }
12/20/2005
Kermeta
20
Creating a dynamic instance • Ecore allow to create a dynamic instance of one specific element of the metamodel • In eclipse environnement
12/20/2005
21
Creating a new language MetaModel
MetaModel
Model
(.kmt)
(.ecore)
(.xmi)
require kermeta using kermeta::standard
class Node { atribute c : color reference input : set Link[0..*]#side1 reference output : set Link[0..*]#side2 }
class Link { reference side1 : set Node[0..*]#input reference side2 : set Node[0..*]#output }
12/20/2005
Kermeta
DoPIDom
22
Handle the Model with Kermeta • One can handle the resource • Load it • Save it • Manipulate its elements (like a Dom tree) • Creating • Removing • Moving
12/20/2005
23
Plan • • • • •
Reminder What we have already done What we’re working on Problems To do
12/20/2005
24
Rising synchronization Interaction between DoPIDom & KerMeta • Call the KerMeta interpretor from DoPIDom • Handle KerMeta operations from DoPIDom • Keep synchronized graphical elements with their abstract representation
12/20/2005
25
Rising synchronization • Add Kermeta instructions into SVG templates Allow multilanguage Recover tag and attributes
Nov 25, 2005 - Augmented SVG. ⢠SVG +⦠⢠Dynamical features (Project of Fabrice). ⢠Some OCL's queries for descendent synch. ⢠+ listener on the repository.
Feb 20, 2006 - Technical implementation of the solution. ⢠Catch the semantically rich events from ProBXS. ⢠Fabien. ⢠Technical implementation of the solution.
1. Project presentation #2. Provide behaviour to XML/SVG elements ... elements. Used to translate numeric information to graphical ones. Involved Components.
I can produce short pieces of writing which ask and give opinions. I can refer to past or future events, as well as everyday activities. There may be some mistakes ...
Sep 21, 2007 - Endurance requirement: 15 minutes of stationary flight and 30 minutes of .... second selection round was performed (based on these enhanced ...
12 avr. 2016 - objet l'exploitation des gisements de phosphate en Tunisie. Date de ... humaines HSEQ Entreprise citoyenne Economie d'energie Actualités.
... typically 190 Ã 35 and to observed internal scale: coherent streak segments â¼ 6 Ã 3. 13 ... viscous dissipation and energy transfer to cross-stream small scales ...
cryptographie - la science du codage de l'information. Tous les ... la base de la technologie Proof-of-Stake (POS), c'est pourquoi son extraction s'appelle ...
If you don't like something in this book, change it. It is your creative .... stories (his best excuse to escape the wife for an evening), .... 'You know full well who they.
Jan 31, 2005 - Title : Mr. Address : B.P. 15 rue Fontaine de l'Hôpital, 1 34431 Saint Jean de Vedas France .... All theses points are beneficial for shellfish producers. Future Actions ..... needed some time to know about the project. However a ...
Jan 31, 2005 - Title : Mr. Address : B.P. 15 rue Fontaine de l Hôpital, 1 34431 Saint Jean ..... unfortunately the analysis results, known second part of January due to ... The accumulation of delays all along the project for various reasons ...
the valve body together with the valve mechanics and the Teflon gasket in the vaporizer. ... Salts are dissolved in the sample or if the sample contains materials.
method consists, for the panelist, in arranging P products on a tablecloth (60 cm x 40 cm), .... tablecloth to the average one, through a graphical representation.
restaurants de services rapide. • Accès facile à l'autoroute 35 ... and fast-food restaurants. • Easy access to Highway 35 at the center of Iberville residential area.
Avenue Barclay 5. Avenue Glencoe. Boul Laird. Cha. Avenue Willowdale. Métro de la Savane. Chemin de la Côte-des-Neiges varje de Kent. Rue de la Savanie.
information contained herein, and same is submitted subject to errors, omissions, change of price, rental or other conditions, withdrawal without notice, and to ...
Located in the vibrant Petite-Patrie borough. â« Large street front space available. Cushman & Wakefield SRI | ULC. 999, boul. de Maisonneuve O.,. Bureau 1500.
The depiction in the included photograph of any person, entity, sign, logo or property, other than Cushman & Wakefield's (C&W) client and the property offered ...
... is made to the accuracy or completeness of the information contained herein, and same is submitted subject to errors, omissions, change of price, rental or.