Web-Native Graphical EMF Model Editors
Web原生图形化EMF模型编辑器
Susanne Göbel, Ralf Lämmel
AI总结 提出纯Web框架EMFular,基于Ecore模型自动生成图形编辑器,支持EMF一致性操作与Angular扩展,实现低代码生成、高可定制与无后端部署。
详情
图形化模型编辑正从桌面应用转向基于Web的工具。我们分析了现有框架的特点,并基于此推导出一组设计原则,这些原则意味着低成本的生成、广泛的定制可能性以及所生成编辑器的直接部署。在此基础上,我们引入了EMFular,一个纯基于Web的框架,用于管理EMF模型而无需任何后端。配套的EMFular生成器将给定的Ecore模型(一个EMF元模型)映射为即用型且可定制的图形编辑器。EMFular编辑器提供“EMF一致性”,即它们不仅支持标准建模操作,如创建、检查、导航、编辑和撤销/重做,而且还以与EMF紧密对齐的方式处理包含和反向引用;它们还通过与EMF兼容的序列化/反序列化提供与现有EMF工具的互操作性。生成的编辑器是一个Angular项目,具有指定的扩展点,允许开发人员利用Angular及其生态系统的表达能力,在EMFular扩展点的指导下,定制和扩展编辑器的所有方面。我们从编辑器充分性(可用的编辑能力)、适应性(定制机制和所需工作量)以及生成的鲁棒性三个方面评估了EMFular。
Graphical model editing is shifting from desktop applications to web-based tools. We analyze the characteristics of existing frameworks and, based on this analysis, we derive a set of design principles that imply low-effort generation, extensive customization possibilities, and straightforward deployment of the resulting editors. On these grounds, we introduce EMFular, a purely web-based framework for managing EMF models without any backend. The accompanying EMFular generator maps a given Ecore model (an EMF metamodel) to a ready-to-use and ready-to-customize graphical editor. EMFular editors provide 'EMF consistency', that is, they not only support standard modeling operations such as creation, inspection, navigation, editing, and undo/redo, but they also handle containment and inverse references in close alignment with EMF; they also provide interoperability with existing EMF tooling through compatible de-/serialization. A generated editor is an Angular project with designated extension points, which allows developers to customize and extend all aspects of the editor using the expressive power of Angular and its ecosystem, guided by the extension points of EMFular. We evaluate EMFular in terms of editor adequacy (available editing capabilities), adaptability (customization mechanisms and required effort), and robustness of the generation.