← Alle berichten

25 maart 2026 · Marcel Krassenburg · community

Tien universele relaties tussen dingen — het R10-model

Veelheid aan relatienamen

In het vorige artikel zagen we dat betekenis ontstaat zodra we een uitspraak doen in de vorm:

term – relatie – term

Met dat eenvoudige patroon kunnen we al verrassend veel beschrijven: een persoon heeft een geboortedatum, een vergunning heeft een status, een document bestaat uit hoofdstukken. Maar zodra we bestaande modellen bekijken — van gegevenswoordenboeken tot ontologieën — valt iets op. Overal verschijnen nieuwe relatienamen:

is_onderdeel_van, heeft_type, behoort_tot, is_subklasse_van, heeft_status, verwijst_naar, is_toegestaan_volgens, enzovoort.

Dat roept een fundamentele vraag op:

beschrijven al deze namen werkelijk verschillende soorten relaties, of zijn het varianten van een kleiner aantal principes?

Het R10-model vertrekt vanuit dat laatste idee. Vrijwel alle betekenisrelaties blijken terug te voeren op tien universele relatiesoorten. Deze worden in dit artikel aangeduid met zogenaamde R-codes (R0–R9), die later nader worden toegelicht.

Van uitspraak naar relatiesoort

In het TRT-model is de relatie geen bijzaak, maar het dragende element van betekenis. Een term zonder relatie zegt weinig. Een relatie zonder termen bestaat niet. Zelfs een definitie van een term bestaat uit relaties naar meerdere termen, maar dan talig geformuleerd.
Het is daarbij belangrijk om onderscheid te maken tussen twee niveaus:

begripbetekenis
relatieeen concrete verbinding tussen twee termen
relatiesoorthet type relatie met een specifieke betekenis, aangeduid met een R-code

Bijvoorbeeld:

  • Auto — heeft_kleur — Zwart → relatie
  • Kenmerk (R2) → relatiesoort

Een relatie krijgt in de praktijk een naam of label, zoals heeft_kleur, is onderdeel van of behoort tot. Deze relatienaam is de taalvorm waarmee we de relatie uitdrukken.

De relatiesoort (R-code) bepaalt daarbij de betekenis van de relatie. De relatienaam is vrij te kiezen en kan per domein of taal verschillen.

Zo kunnen verschillende relatienamen dezelfde onderliggende relatiesoort hebben:

  • heeft_kleur, heeft_status → R2 (kenmerk)
  • is onderdeel van, bevat → R4 (structuur)

Vaak bestaat een relatie bovendien in twee richtingen, met bijbehorende inverse relatienamen:

  • Auto — heeft_onderdeel — Wiel
  • Wiel — is_onderdeel_van — Auto

Beide uitspraken drukken dezelfde relatie uit, maar vanuit een ander perspectief. Ook hier blijft de onderliggende relatiesoort (in dit geval R4) gelijk. In het R10-model wordt de inverse richting expliciet aangeduid met de suffix i (bijvoorbeeld R4 → R4i).

Het R10-model richt zich dus niet op de relatienaam, maar op de betekenis van de relatie.

Samenhang van de relatiesoorten

De tien relatiesoorten kunnen in samenhang worden gezien als verschillende manieren waarop termen met elkaar verbonden zijn.

R10-model -samenhang van de relatiesoorten

<p>R10-model - samenhang van de relatiesoorten</p>

In de afbeelding zijn twee hoofdvormen te herkennen.

Hiërarchische relaties (boven in het schema) beschrijven een ordening tussen termen. Deze relaties brengen een structuur aan en zorgen voor hiërarchie in een model:

  • samenstelling (R4) — deel-geheel
  • generalisatie (R5) — soortverband
  • verzameling (R6) — lidmaatschap

Het onderscheid tussen R4 (samenstelling) en R6 (verzameling) is daarbij essentieel:

  • Bij R4 maakt een deel structureel onderdeel uit van een geheel, dus opbouw van een ding (een wiel hoort bij een auto)
  • Bij R6 is er sprake van lidmaatschap zonder structurele afhankelijkheid, dus de indeling of groepering (een auto behoort tot een wagenpark)

Daartegenover staan de meer modulaire relaties (op hetzelfde niveau):

  • unificatie (R1u)
  • taalrepresentatie (R1)
  • kenmerk (R2)
  • samenhang / verwijzing (R3)
  • functie (R7)
  • regel (R8)
  • metadata (R9)

Deze relaties verbinden termen zonder dat er sprake is van een hiërarchische ordening. Ze beschrijven eigenschappen, context, rollen en randvoorwaarden.

Onder in het schema is het onderscheid zichtbaar tussen model en data (gegevens).

  • In het model leggen we vast welke termen en relaties mogelijk zijn.
  • In de data (gegevens) worden deze toegepast op concrete exemplaren.

Daarbij spelen twee relatiesoorten een bijzondere rol:

  • R0 (exemplaar) verbindt een individueel object met zijn type
  • RX (waarde) legt de concrete waarde van een kenmerk vast

Het R10-model in één oogopslag

Het R10-model onderscheidt tien fundamentele relatiesoorten. De ICT-naam in de tabel is slechts een indicatie van hoe deze relaties vaak in systemen worden benoemd. De kolom 'Kinderspel' verwijst naar een eerdere blog, hoe een kind deze relatiesoorten spelenderwijs herkent.

R-codeNaamICT-naamKinderspelToelichting
R0ExemplaarInstantiationMijn speelgoedhondinstantiatie van een type
RXWaardeLiteralBelloconcrete waarde bij een exemplaar
R1uUnificatieID, UUIDAanwijzen, dát dátglobale unieke identificatie
R1TaalrepresentatieNameBenoemennamen, labels en codes
R2KenmerkPropertyWat zie ik?eigenschap of aspect
R3Samenhang, verwijzingAssociationWie en wat nog meer?contextuele, modulaire relatie
R4Samenstelling, structuurAggregationHoe zit het in elkaar?deel-geheel, hiërarchische relatie, meronomie
R4G, R4A, R4CGroepering, Aggregatie, Compositiesubsoorten van samenstelling
R5GeneralisatieGeneralizationWaar lijkt het op?soort-verband
R6VerzamelingCollectionAl mijn poppetjes!lidmaatschap van een collectie (betekenis via gebruik)
R7FunctieFunction, RoleWat doet het?rol of vermogen
R8RegelConstraint, RuleMag dit?normatieve beperking
R9Gegevensbeheer, metadataMetadataWaar komt dit vandaan?gegevens over de gegevens

Deze relatiesoorten vormen geen willekeurige lijst, maar hebben een opbouw van betekenis:

Relatiesoorten en relatienamen

De nummering met R-codes maakt het mogelijk om over relaties te spreken zonder afhankelijk te zijn van specifieke namen. Een R-code verwijst naar een relatiesoort, niet naar één specifieke relatienaam. In concrete uitspraken kunnen verschillende relatienamen voorkomen die onder dezelfde relatiesoort vallen:

R-coderelatiesoortmogelijke relatienamen
R2kenmerkheeft eigenschap, heeft kenmerk
R3samenhangheeft relatie met, hoort bij
R4structuurheeft onderdeel, maakt deel uit van
R5generalisatieis soort van, is subtype van

Dit maakt het model taalonafhankelijk en domeinonafhankelijk.

Voorbeeld: een auto

Model

Data

Het model beschrijft wat mogelijk is, de data wat daadwerkelijk voorkomt.

Meetlat voor bestaande standaarden

Er zijn talloze gegevensstructuren. In vocabularia zoals SKOS, MIM of SBB komen tientallen verschillende predicaten (relatienamen) voor.

In artikel 3 'De verborgen eenvoud onder gegevensmodellen' zagen we dat er één patroon is onder de talloze modelvormen. Met de Term1-Relatie-Term2 constructie en het R10-model is het mogelijk om al die modellen eenvoudiger en sneller te vergelijken. Ze passen ook in het R10-model:

  • skos:broader → R5
  • skos:member → R6
  • mim:attribuut → R2

Het R10-model vervangt deze niet, maar biedt een onderliggende ordening.

Een metaschema

Om grotere verzamelingen van termen en relaties te kunnen organiseren, gebruikt Ontologica dit metaschema:

conceptbetekenis
Schemacontainer van betekenis in een bepaald(e) domein of context
Termbetekenisvolle eenheid binnen het schema
Relatiesoorttype relatie, uit het R10-model
Relatieconcrete verbinding tussen term1 en term2
Termtaaltaalvarianten van de tekstuele elementen van een term

Een concrete relatie wordt vastgelegd als een triple.

Toepasbaar op FDS, GGM en Common Ground

Het TRT/R10-model biedt ook veel voordelen voor andere ontwikkelingen, zoals voor het Federatief Data Stelsel (FDS) waar het kan bijdragen aan universele modellen van de databronnen.
Of voor verbetering van het Gemeentelijk Gegevensmodel (GGM) door de tientallen (sub)informatiedomeinen ervan als schema's te beschouwen en met name de attributen te voorzien van nog ontbrekende definities en betekenis.
Of als fundament voor een echt interoperabel Common Ground ecosysteem, met 'ontologie-gedreven' en open source software-ontwikkeling.

In het volgende artikel 'Schema’s: hoe modellen met elkaar samenhangen' kijken we daarom hoe Ontologica met schema’s omgaat.

  • Werkgroep
  • gegevensmodel
  • ontologie
  • vereenvoudiging
  • relatiesoort