Codegen terminology is inconsistent and misaligned with MASD…
Table of Contents
This page is a capture in the inbox bucket of the product backlog — a pre-sprint idea, not yet pulled into a sprint as a story.
What
Audit and correct all uses of the following terms across codegen source code,
facet_catalogue.org, templates, compass commands, task documents, and
runbooks:
| Wrong term used | Correct MASD term | Why wrong |
|---|---|---|
type (as in get_model_type, "model types") |
metatype | A type is currency. The metatype classifies it as domain_entity. Conflating the two obscures a fundamental distinction. |
stereotype |
metatype | A stereotype is a UML mechanism for attaching metadata to elements. ORE Studio doesn't use UML or stereotypes; it uses org-mode frontmatter to convey metatype information. The concept is metatype, not stereotype. |
layer (as in "C++ layer", "SQL layer") |
facet (for a named physical grouping) or technical space (for SQL/C++/Qt) | "Layer" is informal and ambiguous. Facet is the MASD term for a named grouping of archetypes within a technical space. Technical space is the MASD term for the language/platform ecosystem (C++, SQL, Qt). |
tier |
metatype group | Invented term used in task 2EA448B4 to separate domain_entity/junction from enum/field_group/etc. Should be "metatype group" or simply filter by metatype. |
profile used as synonym for facet |
keep profile where it means a named selection of facets; use facet for the grouping itself | Profile is a valid ORE Studio term but refers to a composite activation specification, not a facet. |
Additional issue: technical spaces map to specific codebase components but this
correspondence is implicit and undocumented. The SQL technical space maps to
ores.sql; the C++ refdata technical space maps to ores.refdata (split across
api/core sub-components); the Qt technical space maps to ores.qt.refdata.
Why
The existing MASD knowledge docs (doc/knowledge/masd/) and applied_masd.org
use the correct vocabulary. The codegen tooling and day-to-day tasks do not.
The mismatch creates confusion — especially the type / metatype conflation,
where get_model_type() returns what is clearly a metatype, and the task
2EA448B4 acceptance criteria uses "tier" where "metatype group" is meant.
Fixing this before the compass codegen entity task (2EA448B4) is implemented
avoids baking the wrong vocabulary into new code.
References
- Applied MASD — the canonical ORE Studio instantiation of MASD vocabulary.
- Logical Space — defines logical entity, metatype (as structural meta-type), projection.
- Facet — defines facet, archetype, SRPP, activation.
- Task: compass codegen entity sub-commands — uses "tier" and "type" incorrectly; must be fixed before implementation.
See also
- MASD — the methodology; the authoritative source for all terminology.