The enterprise ontology that models everything ships nothing. Grow shared meaning one high-value use case at a time — and leave batch_id alone.

The standard objection to semantic work is that it takes years before anyone benefits, and the standard version of the work earns that objection. Model every concept in the organisation, agree every definition, and only then deliver something: slow, complex, and hard to finish before the sponsor loses patience. The failure is not the ambition but the sequencing.
The alternative starts from a business problem worth solving and models only what that problem needs. Customer 360 requires Customer, Account, Order, Invoice. The next use case — customer risk — needs Customer again, plus RiskRating and Exposure. The one after that reuses Customer a third time. Shared meaning accumulates as a consequence of delivering value, rather than as a precondition for it, and the concepts that get reused most are exactly the ones that deserved modelling first.
The corresponding discipline is knowing what to leave alone, and it is the harder half. Not everything needs deep semantic modelling: created_timestamp, batch_id, row_hash, temporary_code are plumbing, and giving them the treatment reserved for business concepts is how a programme drowns in its own thoroughness. The test is whether ambiguity here creates business risk — if three people would agree without being told, the term does not need governing.
What makes the incremental route work rather than merely feel better is designing for growth from the start: versioned definitions, named owners, change control, and a rule that new work reuses existing concepts before inventing new ones. Without that, incremental delivery produces a pile of local models. With it, the same increments compound into a coherent foundation — which is the thing the big-bang approach promised and could not deliver.