Introduction to Vocabularies
SKOS — the W3C standard for publishing controlled vocabularies as linked data.
What is a Vocabulary?
A vocabulary provides a standardised set of terms with unique identifiers — so that two systems referring to the same thing, even where they have different labels or terms, may treat these things as equivalent.
- Human understanding — labels and definitions in plain language
- Machine processing — unique IRIs that computers can match unambiguously
Types of Vocabularies
- Glossary — concepts with labels and definitions only
- Taxonomy — adds broader/narrower hierarchy
- Thesaurus — taxonomy + non-hierarchical associations + synonym control
The chance of a bushfire and its likely severity.
An unplanned fire burning in grassland.
Flat list — labels and definitions, no links between concepts.
Adds hierarchy — broader / narrower nesting.
Hierarchy plus non-hierarchical related links and synonym control.
solid nodes are skos:prefLabels; dashed chips are skos:altLabels (alternative labels for the same concept).
Annotated Turtle
Hover over each coloured token to see what it does.
Hover over each coloured token to see what it does.
@prefix risk: <https://example.org/risk/> . @prefix skos: <http://www.w3.org/2004/02/skos/core#> . @prefix dcterms: <http://purl.org/dc/terms/> . risk:BushfireRiskLevels a skos:ConceptScheme ; dcterms:title "Australian Bushfire Risk Levels"@en ; skos:hasTopConcept risk:Extreme, risk:High, risk:Medium, risk:Low . risk:High a skos:Concept ; skos:prefLabel "High Risk"@en ; skos:definition "Conditions likely to result in significant, fast-moving fire."@en ; skos:altLabel "High"@en ; skos:narrower risk:HighGrass, risk:HighForest ; skos:topConceptOf risk:BushfireRiskLevels .
Make a simple change to a Turtle file
Now edit the same concept yourself. Three predicates — skos:altLabel, skos:scopeNote, and skos:related — have been added with empty values. Place each value where it belongs: a synonym, a scope note, and a link to a related concept.
Pick a value below, then click the predicate it belongs to. The three predicates are empty — place each value where it fits. Click Check Answer to see how you did.
@prefix risk: <https://example.org/risk/> . @prefix skos: <http://www.w3.org/2004/02/skos/core#> . risk:High a skos:Concept ; skos:prefLabel "High Risk"@en ; skos:definition "Conditions likely to result in significant, fast-moving fire."@en ; skos:altLabel ; skos:scopeNote ; skos:related .
Hierarchy: broader and narrower
SKOS hierarchies follow the all-some rule: if Grassfire is narrower than Bushfire, then all grassfires are bushfires, and only some bushfires are grassfires.
Click any concept to see its SKOS properties.
skos:prefLabel, skos:definition, and membership in a skos:ConceptScheme.