“Entities are a state of mind. No two people agree on what the real world view is.”A. Metaxides · IFIP-conferentie, 1975
Bijna een halve eeuw na verschijnen is dit nog altijd het boek dat het scherpst verwoordt waarom een datamodel en de werkelijkheid nooit helemaal samenvallen. Een portret van Data and Reality, met dank aan de schrijver.
In het kort
Een klassieker die niet veroudert
William Kent schreef Data and Reality in 1978. Het boek gaat niet over een databasetechniek, maar over de kloof tussen de werkelijkheid en de manier waarop wij die in een informatiesysteem proberen vast te leggen. Of we nu relationeel, document- of graafgeoriënteerd werken, voor dat grondprobleem maakt het niet uit. De techniek eronder is in vijftig jaar totaal veranderd, het probleem niet. Daarom leest het stuk vandaag nog even fris als toen.
De kern in één zin
Een informatiesysteem is niet de werkelijkheid, maar een afbeelding van een klein, eindig stukje ervan. Kent opent zijn eerste hoofdstuk met een motto dat de toon zet: “Entities are a state of mind. No two people agree on what the real world view is” (geciteerd in Kent, Data and Reality, hoofdstuk 1, p. 1). Die woorden zijn van A. Metaxides, een database-onderzoeker die ze maakte in een discussie op een werkconferentie over databasebeschrijving (IFIP, België, 1975); Kent koos ze als motto van zijn boek. De rest van het boek laat met voorbeeld na voorbeeld zien hoe waar dat is.
Over de schrijver

William Kent (1936 tot 2005) was een Amerikaans onderzoeker in datamodellering, opvallend genoeg zonder formele informatica-opleiding: hij behaalde een bachelor scheikundige technologie en een master wiskunde. Hij werkte bij IBM en daarna bij Hewlett-Packard Laboratories, waar hij meebouwde aan prototype-databasesystemen, en hij zat in en leidde internationale standaardisatiecommissies.
Naast Data and Reality (1978, met latere edities in 2000 en 2012) schreef hij talloze artikelen over databaseontwerp, waaronder de veelgeciteerde toelichting “A Simple Guide to Five Normal Forms in Relational Database Theory” (1983). Veel van zijn werk staat nog online op zijn eigen site, bkent.net. Hij woonde in New York en later in Menlo Park, Californië, en trok zich terug in Moab, Utah, voor natuurfotografie en natuurbehoud. De vragen die hij over informatie en werkelijkheid stelde, houden ons vandaag nog steeds bezig.
Een informatiesysteem is een afbeelding, geen werkelijkheid
Het model is een klein stukje van de wereld
Kents uitgangspunt staat in de eerste regel van hoofdstuk 1: “An information system (e.g., database) is a model of a small, finite subset of the real world” (Kent, Data and Reality, hoofdstuk 1, p. 1). Wij verwachten een nette overeenkomst tussen de constructen in het systeem en de dingen in de werkelijkheid, maar die overeenkomst is nooit volledig en zelden eenduidig.
De kaart is niet het gebied
Net zoals een grammatica niet de taal beschrijft die we echt spreken, beschrijft een datamodel niet de werkelijkheid die we echt bewonen. “The map is not the territory” (Hayakawa, geciteerd in Kent, voorwoord). En als wij het gebied proberen te beschrijven, leveren we alleen maar een nieuwe kaart. Daaruit volgt Kents voorzichtige hypothese, naar eigen zeggen aangetoond door de hoeveelheid voorbeelden en niet door bewijs: “there is probably no adequate formal modeling system. Information in its ‘real’ essence is probably too amorphous, too ambiguous, too subjective, too slippery and elusive, to ever be pinned down precisely” (Kent, Data and Reality, voorwoord).
Een informatiesysteem is niet de werkelijkheid, maar een afbeelding van een klein, eindig stukje ervan.
Wat is één ding?

Het ideaal van één record per ding wankelt meteen
Het ideaal is een een-op-een-relatie tussen een record (kort gezegd: één rij in een tabel, één kaartje met vaste velden) en een ding in de werkelijkheid. Maar wat dat ene ding is, valt niet objectief vast te stellen. Neem een schroef. De voorraad telt soorten: “we hebben nog 500 schroeven M8”. Voor de voorraad is één schroef een type. De kwaliteitscontrole keurt elke schroef afzonderlijk, dus daar is één schroef één fysiek exemplaar. Allebei hebben gelijk, maar ze bedoelen iets anders met “een schroef”. Net zo bij een boek: bedoel je de titel, het ene exemplaar in jouw tas, of de band die op de plank staat? Zolang iedereen binnen dezelfde afdeling werkt, valt dat niet op, want de context maakt vanzelf duidelijk wat er wordt bedoeld. Maar zodra je twee administraties samenvoegt, valt die gedeelde context weg, en blijkt dat hetzelfde woord in het ene systeem iets anders betekent dan in het andere. Dan botsen de betekenissen.
Identiteit over tijd is even glad
Je lichaam vervangt voortdurend zijn cellen, en toch ben je nog steeds dezelfde persoon. Een auto waarvan je in de loop van de jaren bijna elk onderdeel vervangt, heet nog altijd dezelfde auto, maar waarom eigenlijk? In de praktijk knopen we die identiteit vast aan één onderdeel, het motorblok met zijn chassisnummer, en dat is een afspraak, geen natuurwet. En een straat die halverwege van naam verandert en door drie gemeenten loopt: is dat één straat, of zijn het er meerdere? Soms blijken twee dingen waarover we apart gegevens bijhielden ineens één en hetzelfde: twee dossiers die bij dezelfde persoon horen. Moeten we het systeem dan dwingen die twee tot één samen te vouwen? Kent is daar eerlijk over: “I don’t know of any modeling system which can cope with that adequately” (Kent, Data and Reality, paragraaf 1.4, p. 13).
Naam, symbool en ding zijn niet hetzelfde

Een naam is een greep naar een idee, geen greep op een ding
Er zijn oneindig veel manieren om iets aan te wijzen: een naam, een soort-identificatie, een relatie (“de tante van Charley”), een rol (“de buschauffeur”), een eigenschap (“de rode auto”). Geen ervan is het ding zelf. En namen zijn lastig: ze zijn niet uniek (denk aan alle mensen die Jan Jansen heten), niet stabiel (mensen trouwen en veranderen van naam, een bedrijf wordt omgedoopt) en ze verraden vaak meer dan bedoeld (een personeelsnummer verklapt wanneer iemand in dienst kwam, een kenteken de regio). De computer wil per se één vast, uniek kenmerk per ding. Maar de werkelijkheid komt niet met zo’n kenmerk: dat verzinnen wíj, omdat het systeem het nodig heeft, niet omdat het in de informatie zelf zit.

Het telefoonnummer als naam
Kents eigen voorbeeld: neem een telefoonnummer als de naam van een toestel. Dan heeft één toestel al gauw meerdere namen, want meerdere nummers laten hetzelfde toestel overgaan. Eén nummer bedient soms juist meerdere toestellen, zoals dat van een manager en zijn secretaresse. En het nummer verhuist met de persoon mee. Kents uitweg is een abstract ding in te voeren, een “message destination”, en het nummer de naam daarvan te maken, met een aparte relatie tussen die bestemming en het fysieke toestel.
De oplossing is het ding van zijn label te scheiden
Kents remedie is een surrogaat: een intern, informatievrij, globaal uniek object in het model dat het ding vertegenwoordigt, los van welk label dan ook. Denk aan het klantnummer dat een webshop je geeft, of de interne id die een database achter de schermen aan elke regel hangt: een nummer dat verder niets betekent, nooit verandert, en alleen dient om dít ene ding aan te wijzen. Niet je naam of je e-mailadres dus, want die kunnen wijzigen of bij meer mensen horen. Daarmee verschuift de verantwoordelijkheid voor het representeren weg van de tekenreeksen naar objecten met onderlinge verwijzingen. Die verschuiving, schrijft Kent, “gives us greater freedom” en maakt controle mogelijk “independent of questions of implementation or internal representation” (Kent, Data and Reality, paragraaf 3.8, p. 64). Datzelfde idee van een betekenisloze sleutel werkten we uit in Leen geen gegevens, leen een sleutel.
Relatie, attribuut en categorie lopen in elkaar over
Wat lijkt op een eigenschap, is vaak een relatie
“Jones weegt 175 pond” lijkt iets heel anders dan “Jones werkt bij Boekhouding”: het eerste voelt als een eigenschap, het tweede als een verband. Maar kijk je goed, dan doen beide hetzelfde: ze koppelen Jones aan een ander ding, aan een gewicht of aan een afdeling. Een eigenschap (attribuut) en een verband (relatie) zijn dus dezelfde soort uitspraak. Kent trekt die consequentie: het verschil tussen een attribuut en een relatie is niet wezenlijk.
Kent weigert de schijnbare scheidslijnen
Hetzelfde gegeven krijgt in elk systeem een andere vorm. In de administratie van je bank is je werkgever niet meer dan een tekstveld (een eigenschap). In het personeelssysteem van dat bedrijf ben je een “werknemer” (een categorie mensen). In een algemeen register is “werkt voor” een verband tussen twee partijen (een relatie). Eén feit, drie gedaanten, afhankelijk van wiens systeem je bekijkt. Ook een “type” blijkt zo een samenklontering van losse ideeën die we ten onrechte gelijkstellen. Daarom kiest Kent één fundament: objecten, relaties en symbolen, waaruit hij eigenschappen, categorieën en verzamelingen afleidt in plaats van ze als losse bouwstenen te poneren.
Ter verdieping
De feitgeoriënteerde school maakte er een methode van
Kents intuïtie kreeg later een methodische vorm in de feitgeoriënteerde modellering (NIAM, ORM en het Nederlandse FCO-IM, Fully Communication Oriented Information Modeling). Die methoden gaan zelfs nog een stap verder dan “geen wezenlijk verschil”: op conceptueel niveau bestaat het attribuut er helemaal niet. Alles is een feit, een rol-relatie tussen objecttypen, en een attribuut verschijnt pas wanneer je uit die feiten een relationeel schema afleidt en enkelvoudige feiten rond een entiteit tot kolommen groepeert. Precies Kents punt: het attribuut is een keuze van techniek, geen eigenschap van de informatie zelf. Niet toevallig erkent het Metamodel Informatiemodellering (MIM) deze hoek met een taalbinding naar Fact-Based Modeling.
Het record is efficiënt, maar niet de natuurlijke vorm van informatie


Het record bakt stilzwijgend aannames in
Het record verwerkt gegevens goed, maar weerspiegelt niet de natuurlijke structuur van informatie. Het veronderstelt dat elk ding precies één type heeft, met vaste en vooraf bekende velden, dat de naam van een relatie geen informatie is, en dat geen record betekent geen ding. Daardoor krijgen vrijwel identieke relaties verschillende representaties, en sommige relaties laten zich niet eens representeren. Kents voorbeeld is “bezit”: werknemers, afdelingen en divisies kunnen meubilair, voertuigen, kantoorbenodigdheden en computers bezitten. Het record dwingt dat in aparte relaties per soort eigenaar, en dan kun je niet meer simpel vragen wie iets bezit. Je belandt in een gekunsteld gesprek: welke afdeling bezit deze apparatuur, geen, o, welke divisie dan?
Stelt een record een ding voor, of een relatie?
Op die simpele vraag is geen sluitend antwoord. Soms heeft één persoon drie records, verspreid over drie systemen. Soms bestaat een ding wel, maar heeft het nergens een eigen record: een project leeft dan alleen in de losse toewijzingen van mensen en uren. Kent laat zien dat elke poging om er een vaste regel van te maken ergens breekt, en dat je uiteindelijk kiest welke aanname je opgeeft. Het record blijft nuttig om gegevens te groeperen, maar het is een keuze van techniek, niet een afspiegeling van de werkelijkheid.
De vier modellen verschillen in techniek, niet in betekenis

Onder elk model ligt nog steeds het record
Kent vergeleek de vier modellen van zijn tijd: het record-, het relationele, het hiërarchische en het netwerkmodel. Het hiërarchische (IMS) en het netwerkmodel (DBTG) gebruiken we al decennia niet meer; het relationele won, en later kwamen het document- en het graafmodel erbij. Maar zijn observatie overleeft die wisseling: ze verschillen in mechaniek, niet in de betekenis die ze dragen. Elk model verklaart bovendien een ander deel tot “het essentiële”, wat tot schijnbare appels-en-perendiscussies leidt. Belangrijk blijft steeds het onderscheid tussen het model en de implementatie eronder: dezelfde structuur kan in het ene model een benoemde relatie zijn en in het andere niet meer dan een verzameling verwijzingen. Kent vat die subjectiviteit in één beeld: laat drie mensen naar precies dezelfde opgeslagen structuur kijken, en de een ziet een betekenisvol verband tussen dingen, de ander een stapel losse records, en de derde een wirwar van verwijzingen om doorheen te klikken. Hetzelfde ding, drie werkelijkheden.
Er is geen enkelvoudige objectieve werkelijkheid


De werkelijkheid is op de bodem vormeloos
In het slothoofdstuk maakt Kent zijn wereldbeeld expliciet: “life and reality are at bottom amorphous, disordered, contradictory, inconsistent, non-rational, and non-objective” (Kent, Data and Reality, hoofdstuk 12). Onze rationele modellen zijn nuttige, maar niet unieke en niet definitieve benaderingen. We zien vooral díé dingen als entiteit waarvoor onze taal toevallig een woord heeft. Kent leunt daarvoor op de taalkunde, met Whorf die Sapir citeert: “the ‘real world’ is to a large extent unconsciously built up on the language habits of the group” (geciteerd in Kent, Data and Reality, hoofdstuk 12). Zijn illustratie: het Hopi, de taal van een inheems volk in het zuidwesten van de Verenigde Staten, heeft één woord voor alles wat vliegt, behalve vogels, zodat een insect, een vliegtuig en een piloot dezelfde naam dragen. Voor ons te ruim, maar ons ene woord “sneeuw” zou even vreemd zijn voor een Inuit, die vallende, liggende, hard bevroren, natte en opwaaiende sneeuw elk een eigen woord geeft. De taal bepaalt welke dingen we überhaupt als ding zien.
De dualiteit waar het boek op uitkomt
Kent wil dat je je bij elk model één vraag stelt: beschrijf je een stuk werkelijkheid, een echte organisatie met echte mensen, of beschrijf je eigenlijk het computerproces? “One thing we ought to have clear in our minds at the outset of a modeling endeavor is whether we are intent on describing a portion of ‘reality’ (some human enterprise), or a data processing activity. Most models describe data processing activities, not human enterprises” (Kent, Data and Reality, paragraaf 7.3, p. 111). De meeste modellen, waarschuwt hij, beschrijven dus de techniek en niet de werkelijkheid. En dan de slotsom, de kern van het boek: er is geen enkele objectieve werkelijkheid, maar we delen er net genoeg beeld van om te kunnen samenwerken. “In an absolute sense, there is no singular objective reality. But we can share a common enough view of it for most of our working purposes, so that reality does appear to be objective and stable” (Kent, Data and Reality, hoofdstuk 12, p. 228). Naarmate het doel breder wordt en er meer mensen meedoen, daalt die gedeelde overeenstemming. Precies daarom leggen integratie en technologie de discrepanties bloot in plaats van ze op te lossen.
In an absolute sense, there is no singular objective reality.William Kent, Data and Reality, hoofdstuk 12
Waarom dit nog altijd het belangrijkste boek over data is
Een single source of truth is een afspraak, geen feit
De praktische les is nuchter. Een geïntegreerd model en een single source of truth (één bron van waarheid waar de hele organisatie op steunt) vangen geen objectieve werkelijkheid, maar een onderhandelde, contextgebonden afspraak. De moeilijkheid zit niet in de techniek maar in de betekenis: zodra je bestanden samenvoegt of een breder doel dient, komen de verborgen gezichtspunten en conflicten boven. Een conceptueel model (een beschrijving in begrippen, in de taal van de business) is wezenlijk iets anders dan een datamodel (een beschrijving in tabellen, kolommen en velden), en het eerste verdient voorrang. Kent vat het bondig samen: “Becoming an expert in data structures is like becoming an expert in sentence structure and grammar. It’s not of much value if the thoughts you want to express are all muddled” (Kent, Data and Reality, hoofdstuk 1, p. 2).
De wortel onder onze eigen stukken
Wie onze recente stukken las, herkent Kent als de filosofische wortel eronder. Dat een data-engineer en een modelleur verschillende vakken zijn, dat betekenis voorafgaat aan techniek, en dat zachte semantiek de harde context is, komt rechtstreeks uit deze traditie. Data and Reality blijft daarvoor het beginpunt: niet defaitistisch, maar scherp. Weet wat je model wel en niet kan dragen, maak de afspraken expliciet, en verwar het gereedschap niet met de werkelijkheid.
Vragen die vanzelf opkomen
Is dit niet gewoon een oud boek over verouderde databases?
Nee. De voorbeelden komen uit de jaren zeventig, maar de vraag eronder is tijdloos: hoe vang je de rommelige werkelijkheid in nette gegevens? Die vraag verandert niet als de techniek verandert. Daarom citeren data-architecten Kent vandaag nog.
Wat is in gewone taal een “entiteit”?
Een ding dat je apart wilt vastleggen: een persoon, een auto, een rekening, een order. Kents punt is dat wat je als één ding telt een menselijke keuze is, geen objectief feit. De ene afdeling ziet één auto, de andere ziet een motorblok met losse onderdelen.
Waarom zou dit mij iets schelen als ik geen techneut ben?
Omdat de systemen die over jou beslissen, over een uitkering, een afspraak of een dossier, op precies deze keuzes zijn gebouwd. Als “het systeem nee zegt”, is dat vaak geen waarheid maar een modelkeuze. Weten dat dat verschil bestaat, is de eerste stap om het bespreekbaar te maken.
Verder lezen op valorix.nl
- Je datamodel is geen data pipeline: scheid betekenis van techniek, waarin Kent een centrale rol speelt.
- Zachte semantiek is keiharde context, over betekenis als de harde context onder de techniek.
- Leen geen gegevens, leen een sleutel: het sleutelbospatroon, over betekenisloze sleutels in de praktijk.
- Verkavel je gegevenslandschap in gegevensgebieden.
- De blauwdruk van je organisatie staat gewoon in de wet.
Bron
William Kent, Data and Reality. Oorspronkelijk North-Holland, 1978. Tweede editie, 1stBooks, 2000. Derde editie, geannoteerd door Steve Hoberman, Technics Publications, 2012. Citaten en paginanummers volgen de tweede editie (2000): hoofdstuk 1 (p. 1 en p. 2), paragraaf 1.4 (p. 13), paragraaf 3.8 (p. 64), paragraaf 7.3 (p. 111) en hoofdstuk 12 (Philosophy, p. 228).
Werk van William Kent
- Zijn eigen documentcatalogus op bkent.net, met veel van zijn artikelen online.
- Limitations of Record-Based Information Models (ACM Transactions on Database Systems, 1979).
- A Simple Guide to Five Normal Forms in Relational Database Theory (Communications of the ACM, 1983).
- Fact-Based Data Analysis and Design, dat aansluit bij de feitgeoriënteerde hoek hierboven.
- Zijn volledige bibliografie op DBLP.
William Kent, 1936 tot 2005. Data and Reality, 1978. Met dank en met respect voor zijn werk.