A General Architecture for Client-Agnostic Hybrid Model Editors as a Service

10/21/2022
by   Liam Walsh, et al.
0

In this paper, we propose a general architecture for designing language servers for hybrid modeling languages, that is, modeling languages that contain both textual and graphical representations. The architecture consists of a textual language server, a graphical language server, and a client that communicates with the two servers. The servers are implemented using the Language Server Protocol (LSP) and the Graphical Language Server Protocol (GLSP) and are based on a shared abstract syntax of the hybrid language. This means that only static resources need to be common between the graphical and textual language servers. The servers' separation allows each to be developed and maintained independently, while also enabling forward-compatibility with their respective dependencies. We describe a prototype implementation of our architecture in the form of a hybrid editor for the UML-RT language. The evaluation of the architecture via this prototype gives us useful insight into further generalization of the architecture and the way it is used. We then sketch a suitable extension of the architecture to enable support for multiple diagram types and, thus, multiple graphical views.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset