Scaffolding
0 0 About
Scaffolding · Lesson 6 of 7

The register

Some scaffolding stays up for good. The register is one table that says, for every tile, what its number is and where it comes from. The report reads its own description from it.
Have the report open. The lessons point at real pages and tiles. The .pbix opens in Power BI Desktop; the PDF works on any device, but things like View as and the i buttons need Desktop.
00

One row per measure

The is the table DimMeasureBasis. It has 39 rows, one per measure shown on a tile, and these columns:

MeasureKey Measure ValueChainStage Unit Scope Period Source AsOf Status Explanation ExplanationFull

Here is the row for the cobalt Mine production card:

s-prod · Mine production · mine · {U} · World · 2025 USGS Mineral Commodity Summaries · Jan 2026 · reported

Predict first: Why keep every tile's description in a table, rather than type it onto each tile?

01

From a row to a Basis line

Every tile shows a grey under its title. It isn't typed on the page. A basis measure reads it from the register:

measure 'Basis ov-watch' = CALCULATE ( [Basis line], DimMeasureBasis[MeasureKey] = "ov-watch" )

There's one for every row, and two for the rows that cover both the world and the EU. Each tile's subtitle is bound to its own. Text in braces is filled in from the s: {C} is the commodity, {U} its unit.

Check it in the report: on Commodity: world, read the grey line under Mine production. Then switch the commodity to Lithium and read it again: the unit changes.

Predict first: The Mine production row has {U} as its unit, not kt. Why?

02

Four words for how sure a number is

The Status column holds one of four words. Together with the source and the date, it tells a reader how much weight a number can bear:

measuredCounted directly, like refresh times from the log.
reportedPublished by someone else, like a statistics office.
announcedPromised but not yet built, like planned sites.
assumedA scenario or a factor someone chose.

Predict first: A tile shows supply and demand to 2035 in a base-case scenario. Which status fits?

03

An explanation behind every tile

Two more columns hold text for the reader. Explanation is under 200 characters, for the on each tile. ExplanationFull says what the tile shows, how to read it, and what to watch for. The short one for the watch-list card:

Counts commodities that are both heavily imported (reliance above 80%) and hard to replace (supply risk above 3). A screening rule, not a forecast.
Check it in the report: hover over the small i button on any tile to see its short explanation. Needs Power BI Desktop, not the PDF.

Predict first: The tooltip text lives in the register, not in the button. What does that make possible?

04

A register that checks itself

The register is also shown in the report. The Data assurance page counts it with four cards:

Measures in register 39 Measures defined more than once 0 Measures resting on assumptions 6 Measures including announced sites 1
Check it in the report: open Data assurance. The four cards are in the middle of the page, above the Measure basis register table.

Predict first: "Measures defined more than once" shows 0. Good news or bad?

05

Rows for tiles not built yet

Three rows in the register describe measures whose tiles weren't built: trade measures on record, regional share of imports, and reserves by country. They weren't deleted. The query adds a column instead:

slv_DimMeasureBasis adds TileStatus: 'tile not built' for r-ev, r-reg and s-top-res, 'tile built' for every other row. Status is left as the sheet has it.

Predict first: Why keep register rows for tiles that don't exist?

06

Scaffolding that stays

The register stays up for good, because it's what makes every number explain itself. Last lesson: taking the rest of the scaffolding down, to publish the kit.

Describe every number once, in a table. Let the report read its descriptions from it. Mark the gaps instead of hiding them.

The tiles themselves are covered in Reading the Tiles.