LLM-driven code generation for bidirectional and incremental EMF model transformations
BXAgent is an LLM-driven code generator that automatically produces fully functional Java classes for bidirectional, incremental, and synchronizing EMF model transformations from two Ecore metamodels and a natural-language mapping description.
BXAgent employs a five-stage pipeline comprising metamodel parsing, LLM-based mapping extraction, bidirectionality checking, template-driven code generation, and an optional LLM-based compilation repair loop. The generated transformation code supports batch execution, incremental change propagation in both directions, and a novel fingerprint-based synchronization algorithm that handles concurrent modifications, conflict resolution, and fuzzy matching of independently created objects.
BXAgent was applied to the revised Families-to-Persons (F2P) benchmark of TTC 2026, which extends the classic case with 13 concurrent test cases and 3 round-trip cases in addition to the original 34 batch and incremental tests. BXAgent passes 46 out of 50 tests, including all four genuine conflict cases.
Related publications
(Buchmann, 2026) — BXAgent: LLM-Driven Code Generation for Bidirectional and Incremental EMF Model Transformations
(Buchmann, 2026) — Let the Agent Sync: LLM-Driven Code Generation for the Families to Persons Case
@inproceedings{Buchmann2026,author={Buchmann, Thomas},editor={Khelladi, Djamel Eddine and Challita, Stéphane and Messe, Nan and Tehrani, Sobhan Yassipour and Hussein, Shirin and Rahimi, Shekoufeh and Behr, Nicolas and Dumbrava, Sefania and Atkinson, Colin and Kaushik, Minakshi and Lange, Arne and Weber, Thomas and Chen, Boqi and Cicchetti, Antonio and Clarisó, Robert and Rubei, Riccardo and Greiner, Sandra and Hinkel, Georg and Calvar, Théo Le},title={{BXAgent: LLM-Driven Code Generation for Bidirectional and Incremental EMF Model Transformations}},booktitle={{Joint Proceedings of the STAF 2026 Workshops: AgileMDE, GCM, ICMM, LLM4SE, TTC}},series={{CEUR} Workshop Proceedings},volume={},publisher={CEUR-WS.org},year={2026},url={}}
STAF Workshops
Let the Agent Sync: LLM-Driven Code Generation for the Families to Persons Case
Thomas Buchmann
In Joint Proceedings of the STAF 2026 Workshops: AgileMDE, GCM, ICMM, LLM4SE, TTC, 2026
We present BXAgent, a tool that automatically generates Java code for bidirectional model transformations between EMF/Ecore metamodels from a natural-language description. Given two .ecore files and a short textual specification, an LLM-backed pipeline produces a single Java class that supports (i) batch transformations in both directions, (ii) incremental synchronisation after single-sided edits, and (iii) concurrent synchronisation (csync) when both models are edited independently. Unlike conventional bx tools that require a formal specification in a dedicated transformation language (e.g. TGGs or lenses), BXAgent’s only user-facing input is natural language. The generated code is deterministic and stable: because the transformation logic is produced by a fixed FreeMarker template, repeated runs yield identical output for the same mapping specification. We applied BXAgent to the revised Families-to-Persons (F2P) benchmark of TTC 2026, which extends the classic case with 13 concurrent test cases and 3 round-trip cases in addition to the original 34 batch and incremental tests. BXAgent passes 46 out of 50 tests, including all four genuine conflict cases. We describe the tool architecture, the generated synchronisation algorithm, our conflict resolution strategy, and discuss the four failing cases together with their root causes.
@inproceedings{Buchmann2026a,author={Buchmann, Thomas},editor={Khelladi, Djamel Eddine and Challita, Stéphane and Messe, Nan and Tehrani, Sobhan Yassipour and Hussein, Shirin and Rahimi, Shekoufeh and Behr, Nicolas and Dumbrava, Sefania and Atkinson, Colin and Kaushik, Minakshi and Lange, Arne and Weber, Thomas and Chen, Boqi and Cicchetti, Antonio and Clarisó, Robert and Rubei, Riccardo and Greiner, Sandra and Hinkel, Georg and Calvar, Théo Le},title={{Let the Agent Sync: LLM-Driven Code Generation for the Families to Persons Case}},booktitle={{Joint Proceedings of the STAF 2026 Workshops: AgileMDE, GCM, ICMM, LLM4SE, TTC}},series={{CEUR} Workshop Proceedings},volume={},publisher={CEUR-WS.org},year={2026},url={}}
STAF Workshops
The Families to Persons Case — Revisited
Anthony Anjorin and Thomas Buchmann
In Joint Proceedings of the STAF 2026 Workshops: AgileMDE, GCM, ICMM, LLM4SE, TTC, 2026
@inproceedings{AnjorinTTC26,author={Anjorin, Anthony and Buchmann, Thomas},editor={Khelladi, Djamel Eddine and Challita, Stéphane and Messe, Nan and Tehrani, Sobhan Yassipour and Hussein, Shirin and Rahimi, Shekoufeh and Behr, Nicolas and Dumbrava, Sefania and Atkinson, Colin and Kaushik, Minakshi and Lange, Arne and Weber, Thomas and Chen, Boqi and Cicchetti, Antonio and Clarisó, Robert and Rubei, Riccardo and Greiner, Sandra and Hinkel, Georg and Calvar, Théo Le},title={The Families to Persons Case --- Revisited},booktitle={{Joint Proceedings of the STAF 2026 Workshops: AgileMDE, GCM, ICMM, LLM4SE, TTC}},series={{CEUR} Workshop Proceedings},volume={},publisher={CEUR-WS.org},year={2026},url={}}