What an Ontology Actually Is

Gruber's definition unpacked, and why nine out of ten 'ontologies' aren't.

0/1 done

The definition that matters

Gruber, unpacked

An ontology is a formal, explicit specification of a shared conceptualisation. — Tom Gruber, 1993

Four words carry all the weight:

  • Formal — machine-processable. Natural language doesn't qualify.
  • Explicit — every concept, relation and constraint is named and stated. Nothing implicit, nothing hand-wavy.
  • Shared — agreed by a community of users. A one-person model is a private schema, not an ontology.
  • Conceptualisation — an abstract view of what exists in a domain (entities, properties, relations), independent of any particular dataset.

Strip any of those four, and what you have is something less: a glossary, a schema, an ER diagram, a class hierarchy in code.

The four things an ontology gives you

  1. Shared vocabulary — your Customer and my Customer are the same thing.
  2. Formal semantics — a machine can check consistency and infer new facts.
  3. Domain knowledge — the rules of the world, not just the shape of one DB.
  4. Interoperability — two systems built independently can exchange data.

Zoning code, not blueprint

An ontology is like a city's zoning code:

  • It defines categories (residential, commercial, industrial) — these are the classes.
  • It defines how categories relate (commercial may neighbour residential at low density) — these are the properties with their constraints.
  • Every plot of land is an individual classified under one or more categories.
  • A building inspector is the reasoner: walks the code, checks every plot against the rules, flags violations.

A schema is the blueprint of one building. An ontology is the zoning code the whole city plays by.

The semantic spectrum

Click a node to focus its neighbourhood · drag to pan · scroll to zoom
  • spectrum
  • discipline
  • tooling
  • anchor
  • lifecycle

The semantic spectrum — every step adds expressivity at the cost of complexity. Pick the cheapest step that still answers your competency questions.

Audit one term

Pick a piece of vocabulary your team uses every day (e.g. 'lead', 'account', 'project').

  • Is the definition formal, or does it live in someone's head?
  • Is it shared — would another team in your company agree on it?
  • What would change if it were specified well enough that a machine could reason over it?

Reading in progress · 0 of 1 activity done