I was just reading this article and it mentions that some organization had an Ontology as(?) their database(?) layer, and that the decision to do this was bad. Problem is I
An ontology is a schema (model) describing the types (and possibly some individuals) in a domain, the relationships that may exist between types and individuals, and constraints on the way that individuals and properties may be combined.
One analogy is with the UML class diagrams - but ontologies have formal semantics, so can be machine-interpreted, rather than just being diagrams for human consumption.
Example:
Classes: Project, Person, ProjectManager. ProjectManager is a subclass of Person (apparently). People and Projects are disjoint
Relationships: worksOn, manages. Manages is a sub-property of worksOn
Constraints: People work on Projects, not the other way around. Only Project Managers can manage projects.
This simple example enables machine inferences, e.g. if X manages Y, then we can infer that Y is a Project, and X is a Project Manager and therefore a Person.