In complex EMF models, you often need to insert expressions, such as conditions, number calculations, or even algorithm descriptions. Understanding how to insert such expressions is useful not only to metamodel designers but to all stakeholders. This is a very common requirement, which may lead to a disastrous user experience when not addressed correctly.
I will show the different recipes we adopted throughout the years, their drawbacks and advantages.
The Xtext technology has been a game changer, allowing us to define expressions from a grammar to build a fully functional editor based on an EMF metamodel. Xtext natively works on a whole model file, so it looks like you have to choose between a model based on a classic Ecore metamodel and a model managed with Xtext. Until you scratch the surface and start playing with virtual resource and partial editors. Then, a whole new world opens up.
Attendees should have only a very basic understanding of what an Ecore metamodel is and of how to read a textual grammar (see pre-requisites).