-
Notifications
You must be signed in to change notification settings - Fork 0
Home
samatstarion edited this page Aug 7, 2026
·
2 revisions
Background and design documentation for Auriga, the .NET library suite for reading, manipulating and serializing Eclipse Capella™ models. For installation, usage examples and the package overview, see the repository README — this wiki holds the deeper design and validation record behind it.
- Project Context — the original design conversation: scope, prior art (py-capellambse, the Capella sources), and the phased plan the project followed
-
Metamodel Inventory — the Capella
.ecore/.genmodelfiles, the inter-package dependency graph, and the v1 code-generation scope -
Sirius Metamodel Inventory — the same inventory for the Sirius/GMF diagramming
.ecorefiles behind the.airdrepresentation model - Arcadia Notes — the layer, allocation, realization, and containment conventions the public API must respect
- ECoreNetto Validation — proof that ECoreNetto loads the full Capella metamodel with fully resolved references
- Sirius ECoreNetto Validation — the same proof for the Sirius/GMF metamodel
-
Codegen Design — how the vendored
.ecorefiles become the committed C# object model: the pipeline, the Handlebars templates, and the naming rules -
Metamodel Report — building and hosting the browsable metamodel HTML report (
Auriga.CodeGenerator, with Docker build scripts) - model-inspection.txt — the full ECoreNetto model-inspector report referenced from Codegen Design
-
Fragment Loading — how a model split across
.capellafragmentfiles is loaded and its cross-fragmenthrefs resolved -
Xmi Writer — serializing the object graph back to Capella-faithful XMI (
Auriga.Xmi), fragment layout, and the fidelity model - Validation — the round-trip validation harness, per-model results, and exactly how out-of-scope content (other versions, add-on viewpoints, diagrams) is handled
-
Aird — the two parallel trees an
.airdcarries, how they pair into the intermediate diagram model, and what the rendering does and does not promise
-
Query Extensions — the
Auriga.ExtensionsLINQ query set for functions, components, ports, exchanges, and cross-layer allocation/realization -
Containment List — the non-bypassable
Collection<T>-based containment collection and its exclusive-ownership (reject-not-steal) semantics
Project background
Metamodel & design
- Metamodel Inventory
- Sirius Metamodel Inventory
- Arcadia Notes
- ECoreNetto Validation
- Sirius ECoreNetto Validation
Code generation
Reading & writing models
Diagrams
API