Eclipse Modeling Framework
Encyclopedia
Eclipse Modeling Framework (EMF) is an Eclipse
-based modeling framework
and code generation
facility for building tools and other applications based on a structured data model. From a model specification described in XMI, EMF provides tools and runtime support to produce a set of Java classes for the model, a set of adapter classes that enable viewing and command-based editing of the model, and a basic editor. Models can be specified using annotated Java
, UML
, XML
documents, or modeling tools, then imported into EMF. Most important of all, EMF provides the foundation for interoperability with other EMF-based tools and applications.
Eclipse (software)
Eclipse is a multi-language software development environment comprising an integrated development environment and an extensible plug-in system...
-based modeling framework
Model-driven architecture
Model-driven architecture is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture is a kind of domain engineering, and supports model-driven engineering of...
and code generation
Automatic programming
In computer science, the term automatic programming identifies a type of computer programming in which some mechanism generates a computer program to allow human programmers to write the code at a higher abstraction level....
facility for building tools and other applications based on a structured data model. From a model specification described in XMI, EMF provides tools and runtime support to produce a set of Java classes for the model, a set of adapter classes that enable viewing and command-based editing of the model, and a basic editor. Models can be specified using annotated Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
, UML
Unified Modeling Language
Unified Modeling Language is a standardized general-purpose modeling language in the field of object-oriented software engineering. The standard is managed, and was created, by the Object Management Group...
, XML
XML
Extensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....
documents, or modeling tools, then imported into EMF. Most important of all, EMF provides the foundation for interoperability with other EMF-based tools and applications.
See also
- Connected Data ObjectsConnected Data ObjectsCDO is a free implementation of a Distributed Shared Model on top of the Eclipse Modeling Framework .With CDO, programmers can easily enhance existing EMF models in such a way that they can be stored and subsequently maintained in a central model repository...
(CDO), a free implementation of a Distributed Shared Model on top of EMF - Model-driven architectureModel-driven architectureModel-driven architecture is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture is a kind of domain engineering, and supports model-driven engineering of...
- Generic Eclipse Modeling SystemGeneric Eclipse Modeling SystemGeneric Eclipse Modeling System is a configurable toolkit for creating domain-specific modeling and program synthesis environments for Eclipse...
(GEMS) - Graphical Modeling FrameworkGraphical Modeling FrameworkThe Graphical Modeling Framework is a framework within the Eclipse platform. It provides a generative component and runtime infrastructure for developing graphical editors based on the Eclipse Modeling Framework and Graphical Editing Framework...
(GMF) - List of EMF based software
- ATLATLAS Transformation LanguageATL is a model transformation language and toolkit developed and maintained by OBEO and AtlanMod. It was initiated by the team...
(A Model Transformation Language) - AcceleoAcceleoAcceleo is an open source code generator of the Eclipse Foundation that allow people to use a model driven approach to build application from models. It is an implementation of the standard from the Object Management Group for model to text transformation named MOFM2T.- Early versions :The project...
(A code generator using EMF models in input)