Framework
Tutorials
Learn Swift MDE through comprehensive, interactive tutorials covering all major technologies.
Overview
Master Model-Driven Engineering with Swift through hands-on tutorials that progress from beginner to advanced topics. Each tutorial includes step-by-step instructions, complete code examples, and validation exercises.
Learning Path
Follow these tutorial series to build expertise across all Swift MDE technologies:
-
Ecore Fundamentals - Learn metamodelling and model validation
-
ATL Transformations - Master model-to-model transformations
-
MTL Code Generation - Generate code from models using templates
-
AQL Query Language - Query and navigate models effectively
-
Integrated Workflows - Combine technologies for complete MDE solutions
Topics
Ecore Metamodelling
Learn how to define a domain metamodel using Ecore by creating a simple company management system.
Learn how to create and manage XMI model instances that conform to your Ecore metamodel.
Learn how to create relationships between classes using EReference, including containment, cardinality, and bidirectional references.
Learn how to use enumerations, inheritance, and abstract classes to create sophisticated metamodels.
Learn how to convert models between JSON and XMI formats, and validate round-trip conversions.
Learn how to query and navigate models using AQL (ATLAS Query Language), including element selection, collection operations, and complex queries.
Learn how to split models across multiple files and manage cross-resource references in Swift-Ecore.
ATL Model Transformations
Learn how to transform models with the Atlas Transformation Language (ATL) using the Families to Persons example.
Master helper functions and guard conditions to write more sophisticated ATL transformations.
Learn how to manipulate collections in ATL transformations using OCL collection operations.
Explore advanced ATL rule patterns including lazy rules, called rules, and imperative sections.
Master the Object Constraint Language (OCL) for expressing complex queries and constraints in ATL transformations.
Learn techniques for debugging ATL transformations and diagnosing common transformation issues.
Master complex transformation scenarios including refining mode, multiple source/target models, and sophisticated rule coordination.
Optimise ATL transformations for better performance with large models and complex metamodels.
MTL Code Generation
Learn the basics of MTL (Model-to-Text Language) by creating your first code generation template using the OMG MOFM2T standard.
Learn how to use dynamic expressions and variables in MTL templates to generate computed values.
Learn how to use conditional statements and iteration in MTL templates.
Learn how to generate multiple output files from a single MTL template using file blocks.
Learn how to create reusable template components with queries and macros.
Learn how to load models and navigate them in MTL templates to generate code based on metamodel structure.
Learn how to preserve manual code changes across regenerations using protected areas.
Build a complete Swift code generator from the Company metamodel, applying all MTL concepts together.
AQL Query Language
Learn the fundamentals of the Acceleo Query Language (AQL) for navigating and querying models.
Master AQL’s powerful filtering and selection operations to extract specific elements from collections.
Master AQL’s collection operations for transforming and manipulating model data.
Learn how to integrate AQL queries seamlessly into MTL templates for powerful model-driven code generation.
Master advanced AQL query patterns for sophisticated model analysis and cross-model operations.
OCL Constraints
Learn to define and validate OCL constraints on Ecore models.
Integrated Workflows
Experience the full model-driven engineering workflow by building a complete system from metamodel design through code generation.
Learn how to refactor existing models and metamodels using a systematic pipeline approach.
Master cross-format model integration by connecting XMI, JSON, and native Swift data sources.
Advanced Topics
Master the classic Class2Relational transformation benchmark, a foundational example in model-driven engineering.
Learn to generate Swift code from UML class diagrams using MTL templates.