Variability Profiles

Table of Contents

1. Summary

A profile (ORE Studio Variability Model § "Profiles: naming a recurring configuration point") is a named, reusable bundle of variability-feature values a model file binds to instead of authoring each feature individually — guaranteeing a fixed, known-good combination with no ad hoc variation. Each profile is its own document, anchored to a real commissioned entity, with a literal Feature | Value assignments table any future parser can read directly. This page is the routing index; each row below links to the full profile doc. Not exhaustive by design — a profile is added only once a combination recurs across more than one entity, never invented in the abstract.

2. Profiles

Profile Reference entity Description
Simple lookup country Text natural key, tenant-scoped, standard presentation tier, no relationships.
FK-scoped child book UUID surrogate key, tenant+workspace scope, basic presentation tier, explorer-child of a parent entity.
Self-referencing hierarchy counterparty UUID surrogate key, standard presentation tier, self-referencing has_parent_id tree.
Fully-featured lookup currency Text natural key, rich presentation tier: CSV/XML import-export, version navigation.
UUID surrogate lookup dataset_bundle UUID surrogate key, tenant-scoped, standard presentation tier, no relationships – the UUID-keyed counterpart to Simple lookup.
Read-only time-series market_observation No UI, TimescaleDB hypertable, write-heavy measurement stream.
Workspace-scoped lookup cds_convention Text natural key, tenant+workspace scope, standard presentation tier.
Tenant-scoped junction currency_calendar Plain many-to-many association, tenant-scoped, no UI surface. The one profile anchored to the junction metatype rather than domain_entity.
UUID-identified lookup pricing_model_config UUID surrogate key, tenant scope, standard presentation tier, no parent or workspace. The UUID-keyed counterpart of simple-lookup.
Artefact staging only lei_entity Enablement-only: no main table, only the artefact/staging table. Carries no feature Assignments – bind it alongside a shape profile (:profile: simple-lookup, artefact-staging-only), not in place of one.
Trading instrument equity_position_instrument Flat ORE instrument sub-type: identity + audit field groups, tenant+workspace scope, party_id from session, no UI surface.
Trading record trade Transactional trading data rather than reference data: tenant+workspace scope and the generated eventing test, leaving party derivation and struct composition to the model.
Table-less record diff_span Never stored, only carried: a payload type with no table, no key, no repository, no service and no subject. The C++ domain class and its TypeScript twin, and nothing else.
Read-only current-state login_info One row per key and no history, written by the system and read over the wire: list, get and get_many, with no write verb and no version read.

3. See also

Emacs 29.3 (Org mode 9.6.15)