Structured Metadata
The MDDE metadata model

Structure and logic, as data you can query.

A data platform’s structure and transformation logic are data, not code. Entities, mappings, filters, time policies, rules, lineage — and even the generated SQL — live as rows in one metamodel. 268 tables. 16 subject areas. Every question about the platform becomes a SQL query instead of an archaeology project.

structure · movement · meaning · AI-readable — in one model
Explore the 16 areas Read the articles
An entity-relationship schema of many connected tables. Four are highlighted in blue as the central hubs, chained model -> layer -> entity -> attribute, with dozens of other tables hanging off them — suggesting a large 268-table metadata model.

The idea in one paragraph

MDDE’s bet: a data platform’s structure and transformation logic are data. Entities, attributes, mappings, filters, time policies, rules and the generated SQL live as rows in a metamodel — and the platform artifacts (DDL, dbt, pipelines, documentation, diagrams) are generated views of that metadata.

The 268 tables are the price of making every question — lineage, impact, quality, history, who-decided-what — a query instead of guesswork. This model exists to show that each table earns its price. It even documents itself: the reference docs, DDL and diagrams are generated from the metamodel database. A metadata framework whose own documentation is hand-maintained would be a contradiction.

Four hubs everything hangs off: modellayerentityattribute. From there: mappings (the SELECT as data), filters, time, rules, lineage, governance and knowledge.

A metadata database store on the left, with blue arrows fanning out to a set of generated output files on the right — DDL, dbt, pipelines, documentation and diagrams, all generated views of the metadata.
Metadata is the source. The platform artifacts — DDL, dbt, pipelines, docs, diagrams — are generated views of it.

The model — 16 subject areas

Every table assigned to exactly one area; 268 base tables classified core / optional, hub / sub / satellite.

Core structural model 21

The irreducible kernel: model → layer → entity → attribute, plus keys, identifiers, inheritance, domains and subject areas as first-class citizens.

Transformation logic 30

A SQL query as a structured object: FROM/JOIN, SELECT list, WHERE, GROUP BY, windows, functions and filters — each clause its own table. Impact analysis becomes a query.

Temporality & time 7

Time reified, not hidden in SQL: reusable time profiles, point-in-time generation, timeline consolidation, materialized temporal filters.

Source integration & mastering 16

MDM as data: contributors with trust scores, key harmonization, probabilistic matching, golden records with survivorship audit — which value won and why.

Data Vault & imports 11

Ingest an existing Data Vault and reason about it — or migrate away: detected hubs/links/satellites, plan-execute-verify migration, effectivity and multi-active patterns.

Business modeling front-ends 13

BEAM modelstorming and FCO-IM fact-oriented modeling, implemented as data — with requirements-to-implementation traceability a document can never give you.

Discovery & reverse engineering 19

Reconstruct a model from legacy SQL: mined keys and relationships with confidence and review, lineage, complexity, safe-restructuring proposals with regression tests.

Rules, quality & testing 28

Rules as data (AnaCredit-grade), contracts, gates, tests, incidents, anomalies and a quality score with a time axis. The area that’s seen the most real use.

Reconciliation & comparison 9

Prove new equals old: source-vs-target and query-pair comparison with per-column tolerance and row-level evidence — the trail auditors want.

Runs, generation & observability 26

Everything the engine does, recorded as data: runs, SQL generation and patches, table/column profiling, load history, freshness, metrics and alerts.

Versioning, change & environments 28

Metadata change governed like data change: per-object version snapshots, field-level audit, environments, releases and git-style merge for metadata.

Orchestration & delivery 6

The model generates its own pipelines: DAG, tasks, dependencies and schedules — plus delivery expectations for ‘delivery is late’ alerting.

Governance, collaboration & knowledge 30

The people-and-meaning layer: glossary, synonyms, ownership, tags, data mesh, access control, verified query-to-SQL pairs — the seed of a semantic layer.

Work management 8

A lightweight tracker embedded in the metamodel, so work links to the exact entity it concerns instead of a disconnected ticket system.

Import/export bridges 15

Bridges to DBML, PowerDesigner, Unity Catalog and Power BI — down to individual visuals, so BI lineage reaches into the report.

Diagramming & presentation 5

Diagrams are views of the model, never the model itself: definitions, placed symbols, reusable styles and user templates with a render history.

Totals: 16 areas · 268 base tables (+4 views) · every table placed on column evidence.

Articles

The thinking behind the model — structure, metadata organization, and why a solid model is what AI actually needs.

Metadata First

Before tags, before search: the organization of metadata. Structure, maps of content, and sidecars — so both you and the AI can find your way. (in progress)

A Data Model Is Structured Business Knowledge

A model isn’t a diagram of tables. It’s business knowledge, made explicit and queryable. (draft)

Build the Structure and AI Can Use It

AI doesn’t need more prose. It needs a solid, readable model. Build the structure, and the AI can use it. (draft)

Inmon Named the ELDM. Here’s One That Runs

The enterprise logical data model, not as a wall poster — as a metamodel that generates real artifacts. (draft)

Articles publish on Structure Beats Magic and Medium. This section links the metadata pieces as they go live.

Where this fits

This model is the substance under Breakthrough Modeling — the new way of modeling that unites structure, movement, meaning and AI in one model. MDDE (model-driven data engineering) is the generation side; this metamodel is what it generates from.

See the breakthrough → Start with the method