Skip to content
🤷

Forgive us! These docs are a work in progress. Some pages may be incomplete or describe features that aren't quite finished yet. Farkitect is in early development and we don't recommend using it for real work just yet. Feel free to explore — just be aware that things are still being built.

Ecore Export Format

Farkitect exports metamodel and model content in Eclipse EMF format — an .ecore file for the metamodel definition and an .xmi file for model instances.

FileContentPurpose
.ecoreM2 metamodel as an Ecore modelMetamodel definition for Eclipse EMF
.xmiM1 model instancesModel data conforming to the .ecore metamodel

The Ecore file captures:

  • EPackage — mapped from Farkitect M2 packages
  • EClass — mapped from M2 element types (Class)
  • EAttribute — mapped from M2 properties
  • EReference — mapped from M2 relationship types
  • EEnum — mapped from M2 enumerations
  • EDataType — mapped from M2 primitive types

The XMI file contains M1 instances conforming to the .ecore metamodel:

  • Element instances with property values
  • Relationship instances with source/target references
  • Validation — load the .ecore into Eclipse EMF and validate models against it
  • Code generation — use EMF codegen tools to generate Java model classes from the .ecore
  • Transformation — use ATL, Acceleo, or other model transformation tools
  • Interoperability — exchange metamodels with Eclipse-based modelling tools (Sirius, Xtext)