Data modeling · conceptual · logical · physical · semantic

A logical model is not a semantic model.

Conceptual, logical, physical — three levels of one design, each a step closer to a database. The semantic model looks like it belongs on that ladder, sitting beside the logical model. It doesn’t. It answers a different question, under different rules, and mistaking one for the other quietly wrecks a knowledge graph.

Written for Data architects Ontologists who cross the line between database and meaning

Three levels of one design

Data modeling has taught the same three levels for half a century, since the ANSI/SPARC architecture of 1975. You start abstract and refine toward storage: a conceptual model of business concepts, a logical model that commits to a structure, and a physical model that lands it on a particular database. Each level answers “how do we store this?” at a finer grain than the last.

Then knowledge graphs arrived with a semantic model — also technology-independent, also drawn as boxes-and-lines of entities and relationships — and it was natural to file it on the same ladder, as a slightly fancier logical model. That instinct is the single most expensive mistake in enterprise semantics. The semantic model is not a fourth rung on the storage ladder. It is a different ladder entirely, leaning against a different wall.

The distinction in one breath

A logical model tells a database how to store rows. A semantic model tells the world what the rows mean. One is a design for a container; the other is a theory of the domain. They are not the same artifact at two resolutions.

THE CLASSIC STACK

Conceptual, logical, physical

The three levels form one lineage. Each is a refinement of the one above, and every step trades abstraction for implementation detail — moving from what the business means toward how a specific engine stores it.

Conceptual for business stakeholders What concepts exist, and how they relate — Policy, Coverage, Claim, Party — in plain business terms. No keys, no data types, no technology. “A Policy provides one or more Coverages; a Claim is filed against a Policy.”
↓  add structure & keys  ↓
Logical for data architects The structure, committed to a paradigm (almost always relational) but independent of any product. Adds attributes, primary and foreign keys, normalization, generic data types; resolves many-to-many into junction tables.
↓  bind to a product  ↓
Physical for DBAs The same structure, on a specific DBMS. Vendor data types (VARCHAR(50), NUMBER(10,2)), indexes, partitions, tablespaces, constraints, tuning. Shaped as much by performance as by meaning.

Watch what happens to the shape as you descend. The conceptual model says a policy involves several parties. The logical model, to store that many-to-many without redundancy, invents a Policy_Party junction table with a role_code column — a table that corresponds to nothing in the business, a pure artifact of normalization. The physical model then indexes it. By the bottom of the stack, the structure serves storage, and the original meaning is an inference you make from column names.

 Logical (relational)Physical (a DBMS)
The policyPolicy(policy_id PK, policy_number, effective_date…)CREATE TABLE POLICY (POLICY_ID NUMBER PK, POLICY_NUMBER VARCHAR2(30)…)
A coverageCoverage(coverage_id PK, policy_id FK…)… POLICY_ID NUMBER REFERENCES POLICY, INDEX ix_cov_policy
Parties on a policyPolicy_Party(policy_id FK, party_id FK, role_code)composite PK, bitmap index on ROLE_CODE, partitioned by region

The lineage: conceptual → logical → physical is top-down database design. One system, closed world, growing more concrete and more storage-driven at every step. Nothing on this ladder is about sharing meaning — that was never its job.

SEMANTIC THE FOURTH KIND

The semantic model answers a different question

A semantic model — an ontology — also has “entities” and “relationships,” and it too is drawn as boxes and lines. That surface resemblance is exactly what fools people. Underneath, almost every commitment is different, because it exists for a different reason: not to store data in one system, but to state what that data means in a way any system, and a reasoner, can share.

Where they part waysLogical data modelSemantic model (ontology)
Answers the questionhow do we structure this to store it?what does this mean, sharably and formally?
Independent ofa DBMS — but bound to the relational paradigmstore, application and paradigm
World assumptionclosed world; unique namesopen world; no unique-name assumption
A missing fact isNULL — known to be emptyunknown — not false
Identity isa local key (unique within a table)a global IRI (unique on the web)
Shape is driven bynormalization & storage integritythe domain’s conceptual structure
A relationship isa foreign key or junction tablea first-class property (inverse, transitive, chains)
Meaning livesimplicitly, in names & conventionexplicitly, in axioms a reasoner reads
Derives new facts?no — it constrains, never infersyes — entailment
Scopeone application / databaseshared across the enterprise; federatable
It is fundamentallya design for a containera theory of the domain

The two deepest differences drive all the others. First, the world assumption. A relational schema is complete for its scope — if the row isn’t there, the fact is false. An ontology assumes the opposite: anyone can add a fact later, so absence means “not known,” never “not true.” That is what lets ontologies merge and federate; it is also why they cannot, on their own, reject incomplete data. Second, identity. A primary key of 42 is meaningless outside its table; an IRI like https://data.chubb.com/resource/party/42 means the same thing everywhere. Global identity is the whole basis of integration — and a thing a logical model, by design, never provides.

“Then a semantic model is just the conceptual model?” Closer — both are about meaning and independent of technology — but still no. A conceptual model is an informal sketch for one project, its semantics carried in prose and diagrams. An ontology is formal (logic a machine reasons over), global (IRIs), open-world, and built to be reused across the enterprise. It is the conceptual model’s ambition made rigorous, shareable and executable — not a redrawing of the logical schema.

ONE RELATIONSHIP, TWO WORLDS

The parties on a policy

Take the single fact that a policy involves several parties, each in a role. Watch how the logical model and the semantic model render it — and why the difference is meaning, not syntax.

Logical — storage shape

  • A junction table Policy_Party(policy_id, party_id, role_code) exists only to resolve a many-to-many without redundancy.
  • role_code is an opaque string; what “UW” or “03” means lives in a code sheet, not the schema.
  • Identity is local: party_id 42 is unknowable outside this database.
  • The table is a fact of the relational paradigm, not of insurance.

Semantic — domain shape

  • The party-in-a-role is reified as a thing: agr:hasPartyInRole → agr:PartyInRole, a first-class individual.
  • The role is a defined concept with formal semantics, reused across policies and claims — not a loose code.
  • Every party and role carries a global IRI; the same underwriter is the same node in any system.
  • The structure mirrors the domain: a party plays a role in an agreement.
# LOGICAL — a junction table, an artifact of normalization
TABLE Policy_Party ( policy_id FK, party_id FK, role_code )   # meaning is in the codes

# SEMANTIC — the relationship carries its own meaning, with global identity
ex:Policy-1  agr:hasPartyInRole  ex:PIR-7 .
ex:PIR-7    a agr:PartyInRole ;
             agr:party ex:Acme ; core:hasRole policy:UnderwriterRole .   # a defined role, not "UW"
WHY THE CONFUSION IS EXPENSIVE

The lifted-schema anti-pattern

Conflate the two and you build the ontology the lazy way: lift the logical schema one-to-one into RDF. Tables become classes, columns become properties, foreign keys become object properties, and you declare victory. What you actually get is a database wearing RDF syntax — an ontology that has inherited every accident of a relational design:

  • Junction tables become junk classes. Policy_Party lands as a class PolicyPartyLink that models nothing anyone in the business would recognise.
  • Surrogate keys become properties. policy_id becomes a datatype property, competing with the IRI that should carry identity.
  • NULLs become modeling puzzles. Closed-world “empty” is silently reinterpreted as open-world “unknown,” and cardinality axioms you copied from NOT NULL quietly stop meaning what you think.
  • Denormalization scars carry over. Columns fused for performance become fused concepts; the model now encodes a tuning decision as though it were a fact about the world.

The reverse mistake is just as common and just as costly: treating a genuine ontology as a storage schema — expecting it to reject incomplete records, assuming two different IRIs must be two different things, waiting for a “required field” to fail. It never will; that is not what an open-world theory does.

The relationship, done right: the database is a source, the ontology is the target, and a mapping connects them. Derive the semantic model from the domain — the conceptual concepts and the competency questions it must answer — then map the physical tables up to it with R2RML or RML. You never copy the schema down into the ontology. Same discipline as modeling the domain rather than a message payload.

PUTTING IT TOGETHER

Two ladders, one origin, one bridge

The four models are not a single stack. Three of them — conceptual, logical, physical — descend one ladder toward storage in a system. The semantic model rises a different way toward shared, formal meaning. They touch at exactly two places: they are born from the same domain concepts at the top, and they reconnect through a mapping at the bottom, where physical data is lifted up to the ontology’s vocabulary.

Conceptual business concepts & rules Logical relational structure, keys Physical tables on a DBMS database design ↓ Semantic model a formal, shared theory IRIs · axioms · open world shared origin: meaning R2RML mapping: data ↑ to meaning
 ConceptualLogicalPhysicalSemantic
Answerswhich concepts?what structure?how, on this DBMS?what does it mean, formally?
Independent oftech & paradigmDBMS (relational-bound)nothing — vendor-specificstore, app & paradigm
Identitynameslocal keyslocal keys + storageglobal IRIs
Worldinformalclosedclosedopen
Semanticsproseimplicitimplicitexplicit & reasoned
Audiencebusinessdata architectDBAmachines + the enterprise
CLOSING

A container, or a theory

The map is not the territory. Alfred Korzybski

A logical model is a superb map of a database — it tells you where every value goes and how the rows fit together without contradiction. But a map of the container is not a theory of the terrain. The semantic model is that theory: it says what a policy is, what a claim means, how a party relates to both — in terms that hold across every system, and that a machine can reason with. Draw the two the same way and you will keep reaching for a map when you needed to understand the land.

✓ When someone hands you a “semantic model”

Ask four questions. Does every entity carry a global, resolvable identity, or just a local key? Is meaning stated in formal axioms a reasoner can use, or implied by column names? Does it assume an open world it can extend and federate, or a closed one? And was it derived from the domain and mapped to the data — or lifted straight out of a database schema? If the answers point back to a table structure in RDF clothing, you were handed a serialized database, not an ontology.