ORE Studio Technical Spaces
Table of Contents
This document is the index of ORE Studio's physical space — the concrete instantiation of the MASD technical space hierarchy across every language ecosystem the product touches. It provides the linkage between MASD's abstract concepts (TS, Part, Facet, Archetype, Profile) and the actual components, directories, templates, and ores physical-space graph nodes that implement them.
A logical entity (a value such as currency) projects simultaneously
into every enabled technical space — C++ domain + repository + Qt,
SQL DDL + trigger, CMake build target — each producing its own
physical artefacts via the facet transformation.
For the meta-model concepts behind this structure (meta-layer, meta-component, PMM, SRPP) see MASD.
Layer and component topology (system dimension)
The physical space has two orthogonal views:
- The TS→Part→Facet→Archetype dimension (codegen structure) — documented in this file and its per-TS companions.
- The Layer→Component dimension (system architecture) — documented in System Model and its sub-docs.
In MASD terms, the layers (foundation / infrastructure / domain /
application) and components (ores.refdata.api, ores.qt.refdata, etc.)
are physical-space instances of the meta-layer and meta-component concepts
from the logical space. The two views are complementary: the system model
shows who owns what; the TS model shows how it is generated.
ORE Studio technical spaces
Facet/archetype counts below are read directly off the ores physical-space
graph node docs (ores.cpp.org, ores.sql.org, ores.cmake.org,
ores.doc.org) — the generated ground truth — not hand-counted; re-derive
them the same way if this table ever needs re-verifying.
| Technical Space | Codegen | Facets | Archetypes | Detail |
|---|---|---|---|---|
| C++ | ✓ | 15* | 58* | Component, domain, enum, field-group, generator, 4× NATS, presentation, protocol, Qt, repository, service, service-app |
| SQL | ✓ | 3 | 20 | Schema DDL, service users, reference data population |
| CMake | ✓ | 2 | 7 | Component build targets (root/src/tests/modeling), service variant |
| Doc | ✓ | 4 | 28 | Agile, knowledge, modeling (entity docs), template scaffolds |
| Emacs Lisp | — | — | — | ores.lisp, ores.compass — manually authored |
| Python | — | — | — | ores.codegen — the generator itself |
| JavaScript | — | — | — | ores.org-js — agile dashboard |
| XML / FPML | — | — | — | ores.fpml — FPML financial product data |
*=ores.cpp.presentation= (2 archetypes) is functionally real — confirmed
generating <entity>_history_field_mapper.hpp/cpp — but is not listed in
ores.cpp.org's own Facets table, so it is unreachable by the graph
traversal that node doc says codegen uses (root → TS → facet →
archetype). This is a gap in the generated physical-space graph itself,
not just documentation; flagged here rather than silently omitted or
silently included in the un-starred total. Needs a fix in
ores.cpp.org (or whatever regenerates it) to add the missing row.
Assets is retired as a standalone TS — its former templates were absorbed
into ores.cpp.qt, ores.plantuml, and ores.shell; see Other Technical
Spaces § "Assets Technical Space (retired)" for where each one now lives.
Removed from this table rather than left as a row with stale counts.
Physical Metamodel in ORE Studio
The PMM is instantiated by two complementary artefacts:
- The ores physical-space graph — each facet node's Archetypes table maps a
profile name to the Mustache templates that belong to it; read directly
by
codegen/core.py(no intermediate JSON; see ORE Studio Variability Model § "The test" for thesrc/generator.py→codegen/*.pyfile split). projects/ores.codegen/library/templates/— the archetype catalogue, where each.mustachefile is one archetype within a facet. The directory layout mirrors the TS→Part→Facet hierarchy.
The literate template org files (cpp_domain.org, sql_schema.org, etc.)
are the authored sources from which the .mustache artefacts are tangled.
They document each archetype's SRPP inline, alongside the template code.
The template library overview describes the three-level literate hierarchy
(archetype ← facet doc ← group doc ← overview).
See also
- MASD — the methodology that defines TS, Part, Facet, Archetype.
- Physical Space — the MASD concept this document instantiates.
- Technical Space — the concept behind each row in the table above.
- Facet — the MASD facet concept this document instantiates.
- Variability — the MASD variability concept (features, profiles, VMM).
- Applied MASD — the applied overview, including the full ORE Studio facet catalogue with archetype counts.
- ORE Studio Variability Model — the ores physical-space graph, model types, and profile activation in ORE Studio.
- System Model — the layer/component dimension of the physical model.
- ores.codegen — the code generator that performs the M2T transformations.