What's new in Jjodel 3.0
Jjodel 3.0 introduces three domain-specific languages, a redesigned interface, and a new transformation engine. The beta is available now.
JjTL: model-to-model transformations
A new transformation language that maps source metamodel elements to target metamodel elements. Two-pass execution: first pass creates instances, second pass resolves attributes and cross-type references via trace. Supports guards with the where keyword.
JjEL: three-level expression language
Unified expression language with three abstraction levels. Built-in collections (classes, attributes, references) at L1, context variables (data, node) at L2, and raw JjOM access at L3. No more $ prefix for user features.
JjScript: metamodel manipulation
A scripting language for programmatic metamodel operations. 19 commands including forall, let, and eval. Execute sequences of operations on metamodels and models from the Console.
Redesigned UI
Progressive disclosure throughout the interface. Basic and Advanced modes in every panel. Reduced cognitive load without sacrificing functionality. New Transformation Editor for defining and executing JjTL transformations.
Megamodel view
A project-level visualization showing all metamodels, models, transformations, and their relationships (conformsTo, inputOf, outputOf, generatedBy) in a single interactive diagram.
Improved Console
Evaluate JjEL expressions interactively. Inspect model instances, query collections, navigate references. Context-aware with access to the current data object and node.
Status
Jjodel 3.0 is in beta. The core modeling infrastructure is stable. The transformation pipeline (JjTL) and expression language (JjEL) are functional with known limitations being addressed before the stable release.
Bug reports and feedback are welcome on GitHub .
Documentation
Full documentation for the new languages and features is available on the docs site.