🤖 AI Summary
This work addresses the lack of lightweight, customizable, and easily deployable web-based solutions for graphical EMF model editing, as existing tools predominantly rely on desktop environments. The paper proposes EMFular, a novel front-end-only framework that automatically generates semantic-compliant graphical editors directly from Ecore metamodels without requiring a back-end. By integrating Angular’s front-end architecture, EMF semantics-preserving mechanisms, and standardized serialization techniques, EMFular supports full modeling operations and seamless interoperability with the EMF toolchain. High customizability is achieved through Angular extension points. Experimental results demonstrate that the generated editors exhibit strong functional completeness, adaptability, and robustness, significantly lowering the barriers to deployment and customization of EMF-based modeling in web environments.
📝 Abstract
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.