Transformation-Based Operationalization of Graph Languages

被引:0
|
作者
Weinell, Erhard [1 ]
机构
[1] Rhein Westfal TH Aachen, Dept Comp Sci 3, D-52074 Aachen, Germany
来源
关键词
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Graph Languages' emerged during the seventies from the necessity to process data structures with complex interrelations. Nowadays, various variants of these languages can be found for querying [1][2], in-place transforming [3] [4], and translating graph structures [5] [6]. Still, new graph languages supporting different paradigms and usage scenarios are proposed regularly. In fact, languages tailored for a dedicated application domain can be restricted to a concise and clear syntax representation, thus reducing effort to learn and apply them. Effectively aiding the development of graph languages, even though considering the already existing ones, therefore remains an important working topic. Constructing specialized graph languages, considering them as special case of domain-specific modeling languages, is supported by various frameworks and so-called Meta-CASE tools, e.g. [7]. Operational implementations of these languages is usually achieved by customizing template-based code generators. However, graph languages, in contrast to purely static modeling languages, are inherently complex to implement due to the required pattern matching facility, and the possibly required non-deterministic execution engine. As alternative to the usual code generation approach, I propose a solution to implement graph languages by transformation. The approach is based on an extensible core graph language, to which rules modeled in a specialized graph language are transformed. Extensions can be added to the core language to approximate both languages's conceptual levels, and thus to narrow their "semantic gap". In contrast, a code generation module would have to span a significantly larger gap from a high-level specification language to an imperative or object-oriented programming language. A coarse-grained overview on the presented approach is given in Figure 1. Technically, this platform is built on top of the graph-oriented database DRAGOS [8]. Thanks to DRAGOS' exchangeable backends, language implementations gain access to established storage solutions like relational databases or model repositories. To construct a new graph language, developers usually build an editor based on the language's concrete syntax model, be that a textual or visual one. Based on this, a partly generic export facility transfers instances of this language, e.g. entered by the user at runtime, into the graph database as abstract syntax trees (ASTs). This intermediate storage facility decouples further processing from the actual concrete syntax and from the applied editing technology. Afterwards, as the first curved arrow suggests, the ASTs are transformed into instances of the provided core graph language, DRAGULA. This transformation, which needs to precisely capture the specialized language's intended semantics, can be modeled in a rule-based way. For this purpose, a simple uni-directional model transformation language is provided. Technically, this language's rule instances are stored in all additional repository in the database, and are transformed to the core language, too. Finally, the generated core language rules can be evaluated by the corresponding engine, thereby referring to the database's data repository. Both the rule engine and the data repository are subject to user interaction, e.g. to select rules for invocation or to directly inspect the stored graphs. This talk primarily discusses the first curved arrow, whereas the second one has been described in [9], and the core language's extensibility in [10].
引用
收藏
页码:520 / 522
页数:3
相关论文
共 50 条
  • [41] Transformation-based tectogrammatical dependency analysis of English
    Klimes, Vaclav
    TEXT, SPEECH AND DIALOGUE, PROCEEDINGS, 2007, 4629 : 15 - 22
  • [42] The numerical stability of transformation-based CT ventilation
    Castillo, Edward
    Castillo, Richard
    Vinogradskiy, Yevgeniy
    Guerrero, Thomas
    INTERNATIONAL JOURNAL OF COMPUTER ASSISTED RADIOLOGY AND SURGERY, 2017, 12 (04) : 569 - 580
  • [43] A Transformation-based implementation for CLP with qualification and proximity
    Caballero, R.
    Rodriguez-Artalejo, M.
    Romero-Diaz, C. A.
    THEORY AND PRACTICE OF LOGIC PROGRAMMING, 2014, 14 : 1 - 63
  • [44] Verifying workflow processes: a transformation-based approach
    Zha, Haiping
    van der Aalst, Wil M. P.
    Wang, Jianmin
    Wen, Lijie
    Sun, Jiaguang
    SOFTWARE AND SYSTEMS MODELING, 2011, 10 (02): : 253 - 264
  • [45] Stubby: A transformation-based optimizer for MapReduce Workflows
    Duke University, United States
    Proc. VLDB Endow., 11 (1196-1207):
  • [46] The numerical stability of transformation-based CT ventilation
    Edward Castillo
    Richard Castillo
    Yevgeniy Vinogradskiy
    Thomas Guerrero
    International Journal of Computer Assisted Radiology and Surgery, 2017, 12 : 569 - 580
  • [47] Transformation-based diagnosis of student programming errors
    Xu, SW
    Chee, YS
    PROCEEDINGS OF ICCE'98, VOL 1 - GLOBAL EDUCATION ON THE NET, 1998, : 405 - 414
  • [48] Transformation-based library adaptation for embedded systems
    Winter, Victor L.
    MametJanov, Azamat
    Morrison, Steven E.
    Mccoy, James A.
    Wickstrom, Gregory L.
    HASE 2007: 10TH IEEE HIGH ASSURANCE SYSTEMS ENGINEERING SYMPOSIUM, PROCEEDINGS, 2007, : 209 - +
  • [49] Opinion Mining by Transformation-Based Domain Adaptation
    Ormandi, Robert
    Hegedus, Istvan
    Farkas, Richard
    TEXT, SPEECH AND DIALOGUE, 2010, 6231 : 157 - +
  • [50] A new control structure for transformation-based generators
    Biggerstaff, TJ
    SOFTWARE REUSE: ADVANCES IN SOFTWARE REUSABILITY, 2000, 1844 : 1 - 19