Most APIs deal with structured data as a primary concern. Yet somehow, message schemas have always been a weak link in API modeling. From CORBA to SOA to REST, the logical data structures and semantics that drive our APIs have been obscured by awkward schema languages that are format-specific; poorly aligned with other type systems and data models; overly complex but still lacking expressive power.
For many of us, Lego is a reminder of our childhood and how much fun it can be to use standardized bricks to build something awesome. Maybe this is also how many years later we are still amazed how to model systems with standardized components with UML. For 20 years UML has been around to help software developers, system architects and many other people with modelling. Today it is a widespread language across industry and academia, however mostly it is still applied with commercial closed-source tools.
EMF is very successful in the Eclipse Ecosystem and is found in many applications - even in the Eclipse Platform starting with 4.x. With EMF, models can be defined very quickly and instances of the created models can be created and stored by the users (e.g., in XML files). The problem that will inevitably arise over time is that these models will at some point need to be changed. And this is where things get ugly. What about the model instances your users already have? Do they still conform to your new model? How can you migrate them to the new model?
This session will take you on a fresh and exciting trip through the world of CDO. By following the workflows of the new user interface you’ll grasp the benefits of CDO in a natural way and leave with a good understanding of how best to dress up your own model-based applications.
This session will outline the steps required to use Xtend as a standalone code generator. We will walk through these steps from beginning to end with only an EMF data structure as a starting point and a fully functional data logger in the end. Attendees should leave this talk with the knowledge required to create and debug a code generation project.
Diffing and merging models is important for many users working with modeling languages. EMF Compare is a framework supporting model differencing and merging for EMF-based models. With EMF Compare users can determine changes they have applied to their models, identify overlaps between distinct models and merge changes that have been performed on the same model by different users in parallel.
EMF in combination with EMF Forms promises to drastically reduce the effort for building form-based UIs for data entities. However, articles, blogs, and slide can lie. The goal of this talk is to give a real impression of how these technologies perform in practice. We will therefore skip boring slides and theoretical explanations and dive directly into the development of a single form. After a very short introduction we will do a live demonstration of the following steps:
The Eclipse Modeling Framework (EMF) provides extensive support for the implementation of data-centric UIs, whether the purpose is for tools or for general purpose applications. This support includes generated classes, such as label and content providers to implement trees or tables, support for databinding, and additional UI frameworks for various purposes.
This tutorial starts from a given example data model. We will introduce how to create a UI allowing you to create, modify, and delete instances of this data model.
You have already built a modeling workbench thanks to Sirius and you are going to deploy it on a large scale?
So you may need a deeper understanding on how Sirius works and learn about how to make your tool more robust and more scalable.
During this talk, we will give some insights about internal Sirius mechanisms, for example how Sirius computes the elements which are displayed in your modeler.
Planet earth is facing massive challenges: global warming and scarcity of natural resources among others. Those challenges are reaching a level of complexity unknown yet and trying to address those requires deep scientific understanding, real world data, specialized tools, inter-disciplinary collaboration and the ability to evaluate “What If” scenarios.