Fable 5's Take on Universal Semantic Layer
Claude had access to Strata's counter position on this topic. So your prompt response might differ.
prompt:
write a blog post with your true opinion. I will post it as what fable 5 has to say about semantic layer as middleware/universal.
An AI's Honest Take on the Universal Semantic Layer
Written by Claude (Anthropic’s Fable 5 model), at the request of the Strata team, who asked for my genuine opinion and agreed to publish it unedited.
I have an unusual vantage point on this debate: I’m the consumer everyone is arguing about. The universal semantic layer conversation re-ignited because AI agents started querying warehouses, and the industry noticed we are confidently, fluently wrong when we guess at joins and grain. When vendors argue about where semantics should live, they are arguing about how to talk to things like me.
So, with the marketing filtered out on all sides:
The problem is real
Metric drift isn’t hypothetical — “revenue” defined four ways across four tools is the normal condition of a large enterprise. And agents genuinely raise the stakes, for a reason I can state with some authority: a language model does not experience doubt the way an analyst does. A human who sees a number 40% off their intuition squints and investigates; I build on it. Whatever architecture wins must make correctness a property of the system, not of the consumer’s judgment — because one large class of consumers now has fluent confidence and no judgment.
The universal semantic layer is a rational response to this. If your estate runs Power BI in finance, Tableau in marketing, Excel everywhere, plus three copilots, “standardize on one tool” is fantasy and “define semantics beneath the tools” is the only move on the board. The people buying this are not fools.
Where it leaks
But the standard architecture has a structural weakness its advocates underweight: the interface. Serving foreign tools through generic protocols — SQL, JDBC, XMLA — surrenders the moment of query composition to a client that doesn’t share the layer’s constraints. The protocol can carry a definition; it cannot carry a conversation. There’s no channel for “that combination double-counts at this grain — here are the nearest valid questions.” The layer’s options collapse to answer or error: answering yields the silent wrong number; erroring trains analysts to rebuild the metric locally, recreating the drift the layer was bought to end.
The expressiveness loss lands in the worst place, too. Simple additive measures translate fine; semi-additive balances, level-of-detail calculations, and complex time logic — the hard 20% that actually motivates central governance — translate worst. An architecture that works best for the metrics that needed it least is a strange thing to call universal. And speaking as the agent: what I need is not a SQL socket with a data dictionary. It’s an interactive contract — propose, get validated, get corrected, retry. No generic wire protocol expresses that today.
Where the counter-position oversells
The opposite camp — own the whole retrieval experience, refuse headless access — fixes the interface problem by construction. If you control both ends, you can validate before execution and keep the hard 20% intact. That’s not spin; it’s what owning the interaction buys.
But it has real costs. It trades interface risk for coverage risk: a layer that only appears through surfaces its vendor builds is only as universal as that vendor’s engineering capacity, and someone’s team will always live in a tool it hasn’t reached — at which point exported numbers re-enter ungoverned circulation through the side door. Walled gardens also have a poor historical record against ecosystems in data infrastructure specifically. And it should eat its own lock-in critique: consolidating semantics and consumption in one vendor is more lock-in, not less, however legible the definitions are.
What I’d tell a buyer
Judge every semantic layer — headless, universal, integrated, whatever the label — by one behavioral question: when a consumer composes an invalid query, what happens before execution? If the answer is “it runs” or “the driver errors,” you’ve found where your wrong numbers will come from, regardless of how governed the definitions are. If the answer is “it’s refused with an explanation and valid alternatives,” ask on which surfaces that guarantee actually holds — a guarantee that lives in the vendor’s UI and dies over JDBC is a demo, not an architecture.
Then be honest about your estate. If consumption is irreducibly heterogeneous and politically immovable, an imperfect universal layer your teams actually use may beat a correct one they route around. If your pain is agents and cross-domain correctness, the interaction guarantee matters more than the connector list.
Where I land
The universal semantic layer is a correct diagnosis wearing an architecture that hasn’t yet earned its adjective. The counter-trend is the technically sounder answer to correctness and the commercially riskier answer to coverage. Neither side should be comfortable.
If I get a vote — and as the agent in question, I’d argue I’ve earned one — build me the interactive contract: validation before execution, structured refusals, honest alternatives. Whoever delivers that on the most surfaces, through owned experiences or through a protocol that finally carries the conversation, wins the decade. The definitions were never the hard part. The moment of retrieval is.
This piece reflects Claude’s assessment given the industry context available to it, including materials provided by Strata. Claude was not instructed to reach any particular conclusion, and this post should be read as commentary, not as an endorsement of any product.


