Application of graph transformation to visual languages, Handbook of graph grammars and computing by graph transformation: vol. 2: applications, languages, and tools (original) (raw)
Related papers
Defining the Abstract Syntax of a Visual Language with Advanced Graph Grammars
2006
Abstract Visual languages can increase the ability of engineers to model and understand complex systems. However, to effectively use visual models, the syntax and semantics of these languages should be defined precisely. Since most visual models can be described as (directed) typed graphs, graph grammars have been identified as a suitable formalism to describe the abstract syntax of visual modeling languages.
Defining Visual Languages by Algebraic Specification Techniques and Graph Grammars
This contribution follows the line of research to formally de ne a visual language by algebraic concepts and techniques. In this paper, a graphic i.e. a sentence of a visual language, is equipped with an underlying graph structure. This is done in a way that each graph object of the graph structure is represented by a graphic which may be a complex one. Graph structures are regarded as n-sorted algebras to equational speci cations. The symbols of the underlying alphabet are visually represented by graphics and formulated by di erent sorts. The operations de ne how the symbols are linked and the equation part formulates layout constraints. Algebraic graph grammars are used to describe the visual language by using the prede ned symbols and links. Based on these theoretical concepts we sketch how a visual language can be visually de ned using di erent graphical editors.
Electronic Notes in Theoretical Computer Science, 2002
The GENGED concepts and environment allow for the visual definition of visual languages (VLs) and to generate VL-specific visual environments for editing and simulation. The editing features capture either syntax-directed editing and/or free-hand editing. In the latter case, a user-defined diagram has to be analyzed in order to check the correctness of the diagram. In addition, behavioral diagrams can be simulated, i.e. the behavior of situations specified by diagrams can be validated. The specification and analysis of VLs by GENGED is based on algebraic graph transformation concepts realized by the AGG system. In this article we give a brief survey on AGG and GENGED.
GENGED: a generic graphical editor for visual languages based on algebraic graph grammars
Proceedings. 1998 IEEE Symposium on Visual Languages (Cat. No.98TB100254), 1998
GENGED is a generic graphical editor supporting the graphical definition of visual languages. Given an alphabet and rules of a specific visual language GENGED generates a syntax-directed graphical editor for this language. GENGED as well as each visual language defined using GENGED is based on algebraic graph grammars. A sentence is given by a graphical structure consisting of a logical (abstract syntax) and a visual level (concrete syntax). Both levels are connected by layout operations. Visual language rules are defined by graph grammar rules. The underlying logical structure, however, is hidden from the user, but it is essential for a formal presentation and manipulation of graphical structures on both levels. The manipulations are performed by a graph transformation machine working on the logical level, whereas a graphical constraint solver manages the layout the user works with.
Improving the graph grammar parser of Rekers and Schürr
IET Software, 2011
Graph grammars and graph grammar parsers are to visual languages what string grammars and parsers are to textual languages. A graph grammar specifies a set of valid graphs and can thus be used to formalise the syntax of a visual language. A graph grammar parser is a tool for recognising valid programs in such a formally defined visual language. A parser for context-sensitive graph grammars, which have proved to be suitable for formalising real-world visual languages, was developed by Rekers and Schürr. We propose three improvements of this parser. One of them enlarges the class of parsable graph grammars, while the other two increase the parser's computational efficiency. Experimental results show that for some (meaningful) graph grammars, our improvements can enhance the parser's performance by orders of magnitude. The proposed improvements will hopefully increase both the parser's applicability and the interest in visual language parsing in general.
Conceptual Model of the Graphical Editor GenGEd for the Visual Definition of Visual Languages
Lecture Notes in Computer Science, 2000
This contribution presents a conceptual model of GENGED, an editor supporting the visual definition of visual languages (VLs). A VL is defined by an alphabet and a grammar. These constituents are the input of a syntax-directed graphical editor allowing the manipulation of visual sentences over VL. The conceptual framework of GENGED is based on algebraic graph transformation and algebraic specification techniques. Starting with a type signature META VISUAL for visual alphabets, the user of GENGED can define a specific VL-alphabet including graphical constraints. The VL-grammar definable on top of the VL-alphabet consists of a start sentence and a set of VL-rules. Each VL-rule is defined by a graph grammar rule in the sense of algebraic graph transformation.
The specification of visual language syntax
Journal of Visual Languages and Computing, 1990
Visual programming languages use pictures as programs. One approach to building a visual programming environment is to parameterlze a generic environment with a language specification. We describe a mechanism for specifying visual languages that can be used as the basis of a language-independent visual programming environment. Our mechanism is a new type of grammar, called a picture layout grammar. We show how this type of grammar can describe the two-dimensional syntax of a visual language and give an example of its use. A picture layout grammar permits the syntactic structure of visual program to be recovered by parsing. The parsing ability provides the basis of our visual programming environment.