Presentation is loading. Please wait.

Presentation is loading. Please wait.

TextBe Project and Issues JGS. Current Pipeline Implementation T2M Parser Generator Kit (EMFText) EMF model of BT (‘.bt’) M2M Atlas Transformation Language.

Similar presentations


Presentation on theme: "TextBe Project and Issues JGS. Current Pipeline Implementation T2M Parser Generator Kit (EMFText) EMF model of BT (‘.bt’) M2M Atlas Transformation Language."— Presentation transcript:

1 TextBe Project and Issues JGS

2 Current Pipeline Implementation T2M Parser Generator Kit (EMFText) EMF model of BT (‘.bt’) M2M Atlas Transformation Language (ATL) EMF model of Graphviz (never stored) M2T Java Emitter Templates 2 (JET2) Graphviz source code (‘.dot’) T2G Graphviz Visualisation Compiler (dot) Standard Vector Graphics format (SVG) G2G SVG Display Component (Apache Batik) Eclipse Standard Windowing Toolkit (SWT) embedded viewer

3 Challenges T2M Parser Generator Kit (EMFText) EMF model of BT (‘.bt’) M2M Atlas Transformation Language (ATL) EMF model of Graphviz (never stored) M2T Java Emitter Templates 2 (JET2) Graphviz source code (‘.dot’) T2G Graphviz Visualisation Compiler (dot) Standard Vector Graphics format (SVG) G2G SVG Display Component (Apache Batik) Eclipse SWT embedded viewer External Process Bad Threading Weak Metamodel

4 Other Issues Complex Installation Difficult Manual Build

5 Problems IssueConsequenceTo Address… Difficult to InstallHard to start usingInstallation Package Difficult to BuildHard to start improvingBuild Process ThreadingUnreliable FunctionReplace Batik External ProcessUnreliable FunctionReplace Graphviz Weak MetamodelHard to integrate/reuseReplace Meta model

6 Batik / Graphviz Create.dot Eclipse Convert to SVG Pass to viewer Eclipse Generate Image Display Image Eclipse

7 Revised Design BT Model T2M Model DOT M2T DOT Zest T2G

8 Current Pipeline Implementation T2M Parser Generator Kit (EMFText) EMF model of BT (‘.bt’) M2M Atlas Transformation Language (ATL) EMF model of Graphviz (never stored) M2T Java Emitter Templates 2 (JET2) Graphviz source code (‘.dot’) T2G Graphviz Visualisation Compiler (dot) Standard Vector Graphics format (SVG) G2G SVG Display Component (Apache Batik) Eclipse Standard Windowing Toolkit (SWT) embedded viewer

9 Dot4zest … as it should be

10 HTML labels

11 State #1 (3) l -> •'*' r (3) l -> '*' •r (4) l -> •'n' (5) r -> •l

12 Challenges T2M Parser Generator Kit (EMFText) EMF model of BT (‘.bt’) M2M Atlas Transformation Language (ATL) EMF model of Graphviz (never stored) M2T Java Emitter Templates 2 (JET2) Graphviz source code (‘.dot’) T2G Graphviz Visualisation Compiler (dot) Standard Vector Graphics format (SVG) G2G SVG Display Component (Apache Batik) Eclipse SWT embedded viewer External Process Bad Threading

13 Batik Squiggle Embedded Description ‘Eclipse SVG Plugin’: “The project goal is to develop an Eclipse plugin for the Apache SVG framework 'Batik'. The plugin adds editors, views and wizards to deal with scaleable vector graphics.” SVG Browser does not work ID: 1187629 If I right-click on an SVG file within Eclipse, and choose "Open With > SVG Browser", nothing visible happens in Eclipse. Running Eclipse from the command line, I see the following trace: java.lang.Error at org.apache.batik.util.ApplicationSecurityEnfo rcer.setDevBase(Unknown Source)

14 The Revised Design Strikes Back BT Model T2M Model Zest M2T

15 Solution Components IFigureProvider – Interface defined by Zest (actually GEF) – Generates structured nodes Visitor – Generated by Ecore by default – Follows the containment structure, unless advised to to do things differently

16 Custom Figure for BT

17

18

19

20

21

22 Revised Model

23

24

25

26

27

28 BT Semantic Mysteries ItemIssue RelationsWhat are they? What is their structure? What are their arguments? The source code has some sort of path notation, but the documentation does not define it. Component Sets What are they? What legal behaviors can they exhibit? (Type?) NOPsIs there such a thing as a ‘non-behaviour’? (The example source code has it!) Variable Binding Is there such a thing as a “Behavior Match” (The example source code has it!)

29 Linked Projects Semantic Checker – Written in C++ (Version??? Interface???) – Semantic Check through Graph Grammar Reduction – Recommendation: Re-implement using VIATRA Animator – Script-based decoration of dot file with colors – Limitations: No semantic checks, disconnected from model – Recommendation: Implement a BT VM using an execution instance model. – Then add painter to new GEF visualizer Visual Debugger – Hooks are added to SVG via Java-Script injection – Limitations: Brittle, potentially not portable, security issues – Recommendation: Implement as hooks into GEF visualizer or using Eclipse debugger infrastructure.


Download ppt "TextBe Project and Issues JGS. Current Pipeline Implementation T2M Parser Generator Kit (EMFText) EMF model of BT (‘.bt’) M2M Atlas Transformation Language."

Similar presentations


Ads by Google