SStarkExecutive Cockpit

Ontology & Data Mesh

The logical layer that lets a half-integrated roll-up still answer one question consistently — model once, federate the data, generate insights anyway.

The Stark Group · FY26 (modeled)
Luxury to-the-trade — designers & architects only (no retail)
670 employees · 12+ US sites · 8 countries
🧩 Operate the houses & showroomsStep 1 of 7 · the mesh & data products behind itCompany HierarchyAll journeys
🌐 Enterprise 360 modules· on Ontology & MeshBrowse all 31 views ▾
● LiveBuilt forTechnology / Data· integrate logically, not physicallyCFO / FP&A· one number across many ledgersIntegration PMO· insight before full migration

Stark can't wait for every acquired house's ERP to migrate before it gets answers. The fix isn't one warehouse — it's a shared ontology (so everyone means the same thing) over a data mesh (each house owns its data as a product), with a semantic layer that federates them. Insights generate today; they just carry a confidence flag where a house isn't integrated.

Data backing: Stark entity ontology · knowledge graph · semantic layer · brand · site · org
Shared meaning (T-Box)

The Stark entity ontology — what the words mean

Ten classes everything maps to. The Showroom is the keystone: it's where house, leader, entity and geography reconcile.

The house
Company1
The Stark Group (the house)
operates ▾ / owns ▾
The 'who' — accountability & ownership
Product House5
Carpet · Rugs · Fabrics · …
House / Brand (Legal Entity)8
acquired / merged brands
Leader (Person)16
org / accountability
sells through ▾ (house → showroom)
The keystone
Showroom12
the reconciliation point
located in / serves / crafts ▾
The 'what & where' — supply & demand
Region6
geographic rollup
Designer Account10+
to-the-trade accounts served
Order3.2k
active orders / pieces in production
Product / Collection48k+
SKUs in the PIM catalog
Atelier / Supplier6
mills · ateliers · fibre / hides
Relationships (predicates)
Stark operates Product HouseStark owns House / BrandHouse rolls up to Product HouseHouse sells through ShowroomLeader accountable for Product House / HouseShowroom located in RegionShowroom serves Designer AccountDesigner Account places OrderOrder is for Product / CollectionAtelier / Supplier crafts / supplies Order
Federate, don't centralize

Each house is a data product on the mesh

92% of revenue is already showroom-grain actual; the rest is read in place from legacy systems and reconciled — no big-bang migration required.

Stark Carpet (core)
Carpet & Broadloom · domain data product
Actuals
data quality / grain91%
Scalamandré
Fabrics & Textiles · domain data product
Allocated
data quality / grain74%
Stark Studio Rugs
Custom Rugs · domain data product
Actuals
data quality / grain78%
Old World Weavers
Fabrics & Textiles · domain data product
Actuals
data quality / grain72%
Hinson
Fabrics & Textiles · domain data product
Actuals
data quality / grain95%
Grey Watkins
Wallcoverings & Trimmings · domain data product
Actuals
data quality / grain95%
Ashley Stark Home
Furniture, Hides & Lighting · domain data product
Allocated
data quality / grain75%
Fort Street Studio
Custom Rugs · domain data product
Region-only
data quality / grain45%
8 house data products (above)
Federated semantic layer
entity resolution · canonical metrics · grain tags
Consumers
Story · Briefing · 360s · Simulator
Defined once, computed everywhere

Governed metrics — the logical layer

Every metric has one definition and a grain. The layer federates it across integrated and legacy domains, flagging where a value is allocated.

MetricDefinitionGrainHow it federates across houses
RevenueΣ recognized revenueshowroom · orderactuals where integrated; allocated from area where not
Adjusted EBITDArevenue − COGS − SG&A (+ add-backs)house · entityentity P&L normalized to one chart of accounts
Repeat-designer revenuespend from retained trade accountsaccountfrom CRM/order systems across all houses
Repeat-designer mixrepeat revenue ÷ revenuehousefederated — same formula, many sources
DSOAR ÷ revenue × 365entity · showroomlegacy entities measured at area grain, flagged
Gross margin(revenue − COGS) ÷ revenueorder · housemapped via canonical cost categories
Designer-account retentionexpansion − attrition on baseaccountresolved across duplicate account records
The payoff

How insights generate before integration finishes

1 · Resolve

Entity resolution matches legacy entity / brand / showroom codes to one canonical node — so Scalamandré's data lines up with everything else.

2 · Federate

Query reads each house's data product in place; the semantic layer maps native fields to canonical metrics.

3 · Allocate + flag

Where a house reports at area level, the engine disaggregates to showroom on learned drivers and marks it an estimate with a confidence band.

4 · Reconcile

Allocated parts must tie back to the source total; anomalies and duplicate accounts/suppliers across houses are surfaced.

This is not theoretical — it's how this cockpit already works. The Story, Briefing and 360 views read the same governed metrics over integrated and non-integrated houses alike; 92% of the numbers are showroom-grain actuals and the balance is area-allocated and labelled. As each house integrates, its data product's grain rises and estimates flip to actuals — the mesh closes itself.