Theory — the rubric
The setup
OpenLearn (fictional) is a public library system publishing a catalogue of free educational resources. The first proposal from a junior team was an 'OpenLearn Educational Resources Ontology' with classes :Resource, :Book, :Video, :Topic, :Author …
The senior ontology engineer killed the proposal in ten minutes. Here's how.
The 3-question rubric
Ask these in order. Stop at the first NO.
Q1. Do I need to infer anything that isn't already stated?
Examples of inference:
- 'A reportable case is a CausalityAssessment linked to a SeriousAdverseEvent…' → yes, infer.
- 'A HighTempObservation is an observation of gearboxTemperature…' → yes, infer.
- 'A reading-list item belongs to topic Science if its subject heading is Physics' → no — that's just SKOS
skos:broadertraversal, not OWL inference.
For OpenLearn: the only 'inference' anyone wants is transitive broader traversal ('show me everything under Science, including Physics and Quantum mechanics'). SKOS gives that for free via skos:broaderTransitive. No OWL needed.
Q2. Do I need to constrain incoming data shapes?
If yes but the answer to Q1 was no, you need SHACL on plain RDF — still no ontology. The shape file IS the schema.
OpenLearn: yes, we'll add :Resource sh:property [ sh:path dc:title ; sh:minCount 1 ] and similar. SHACL only, no OWL.
Q3. Is the artefact mostly terms with hierarchy, synonyms and translations, used for indexing / search / tagging?
If yes: this is a SKOS Concept Scheme, not an ontology. Putting it into OWL classes would actively break SKOS's open-world thesaurus semantics — and lose the multilingual skos:prefLabel / altLabel patterns librarians have refined for decades.
The verdict for OpenLearn
- Q1: NO. (Only
broadertraversal needed.) - Q2: YES, but SHACL on bare RDF is enough.
- Q3: YES. The whole project is a controlled vocabulary of subject headings used to tag resources.
→ SKOS only. No ontology. No OWL classes. Anything more would be ceremony tax.