GMTE: A Tool for Graph Transformation and Exact/Inexact Graph Matching
Multi-labelled graphs are a powerful and versatile tool for modelling real applications in diverse domains such as communication networks, social networks, and autonomic systems, among others. Due to dynamic nature of such kind of systems the structure of entities is continuously changing along the time, this because, it is possible that new entities join the system, some of them leave it or simply because the entities’ relations change. Here is where graph transformation takes an important role in order to model systems with dynamic and/or evolutive configurations. Graph transformation consists of two main tasks: graph matching and graph rewriting. At present, few graph transformation tools support multi-labelled graphs. To our knowledge, there is no tool that support inexact graph matching for the purpose of graph transformation. Also, the main problem of these tools lies on the limited expressiveness of rewriting rules used, that negatively reduces the range of application scenarios to be modelling and/or negatively increase the number of rewriting rules to be used. In this paper, we present the tool GMTE - Graph Matching and Transformation Engine. GMTE handles directed and multi-labelled graphs. In addition, to the exact graph matching, GMTE handles the inexact graph matching. The approach of rewriting rules used by GMTE combines Single PushOut rewriting rules with edNCE grammar. This combination enriches and extends the expressiveness of the graph rewriting rules. In addition, for the graph matching, GMTE uses a conditional rule schemata that supports complex comparison functions over labels. To our knowledge, GMTE is the first graph transformation tool that offers such capabilities.
KeywordsGraph Transformation Graph Match Cost Matrix Rule Application Graph Grammar
Unable to display preview. Download preview PDF.
- 1.Schürr, A., Winter, A., Zündorf, A.: The PROGRES approach: Language and environment. In: Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G. (eds.) Handbook of Graph Grammars and Computing by Graph Transformation: Applications, Languages, and Tools, vol. 3, pp. 487–550. World Scientific (1999)Google Scholar
- 5.Balasubramanian, D., Narayanan, A., van Buskirk, C.P., Karsai, G.: The graph rewriting and transformation language: Great. ECEASST 1 (2006)Google Scholar
- 7.Guennoun, K., Drira, K., Diaz, M.: A proved component-oriented approach for managins dynamic software architectures. In: Proc. 7th IASTED International Conference on Software Engineering and Application, Marina Del Rey, CA, USA (2004)Google Scholar
- 10.Rozenberg, G. (ed.): Handbook of graph grammars and computing by graph transformation: volume I. foundations. World Scientific Publishing Co., Inc., River Edge (1997)Google Scholar
- 16.Riesen, K., Neuhaus, M., Bunke, H.: Bipartite Graph Matching for Computing the Edit Distance of Graphs, pp. 1–12 (2007)Google Scholar
- 19.Fuss, C., Mosler, C., Ranger, U., Schultchen, E.: The jury is still out: A comparison of agg, fujaba, and progres. ECEASST 6 (2007)Google Scholar
- 22.Ben-Halima, R., Jmaiel, M., Drira, K.: A QoS-oriented reconfigurable middleware for self-healing Web services. In: Proceedings of the IEEE International Conference on Web Services (ICWS 2008), Beijing, China. IEEE Computer Society Press (2008)Google Scholar