Van beleid naar code: waarom SHACL de nieuwe taal van compliance wordt
Compliance-afdelingen werken nog steeds met documenten. PDF's, Word-bestanden, beleidsnota's. En daar wringt het. Een beleidsregel als "toegang tot persoonsgegevens op basis van noodzaak" is voor een mens duidelijk. Voor een systeem is deze volstrekt ambigu. Je kunt er geen test op draaien. Geen audit mee automatiseren. Geen schending mee detecteren. Dat moet anders.
De verschuiving die ik zie: beleid wordt code. Niet in de metaforische zin van "we schrijven het netjes op". Het is letterlijk. Machine-leesbare regels die je kunt valideren, versiebeheren en executeren. Het arXiv-paper PolicyKG: Translating Institutional Policies into SHACL Knowledge Graphs (PDF) laat zien hoe je dat doet. Het gebruikt een combinatie van grote taalmodellen en SHACL. Dit is de W3C-standaard voor het valideren van kennisgrafen.
Dit is geen academisch zijspoor. Voor Nederlandse overheidsorganisaties die onder BIO2, NIS2 en de AVG vallen, is dit de kern van aantoonbare compliance. Ik leg uit waarom.
Wat SHACL eigenlijk is
SHACL staat voor Shapes Constraint Language. Het is een W3C-aanbeveling uit 2017. Hiermee definieer je voorwaarden over RDF-grafen. Een "shape" beschrijft hoe een bepaald type entiteit eruit moet zien. Denk aan verplichte eigenschappen, geldende datatypes en toepasbare cardinaliteiten.
Een simpel voorbeeld. Stel je een kennisgraaf voor met persoonsgegevens. Een shape voor een AVG-compliant verwerkingsregister ziet er zo uit:
<#VerwerkingsregisterShape>
a sh:NodeShape ;
sh:targetClass <#Verwerkingsactiviteit> ;
sh:property [
sh:path <#heeftRechtsgrond> ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:nodeKind sh:IRI ;
] ;
sh:property [
sh:path <#heeftBewaartermijn> ;
sh:datatype xsd:dateTime ;
sh:minCount 1 ;
] ;
sh:property [
sh:path <#heeftDoel> ;
sh:minCount 1 ;
sh:maxCount 5 ;
] .
Deze shape zegt het volgende. Elke verwerkingsactiviteit moet exact één rechtsgrond hebben. Dit komt uit AVG art. 6. Er is een bewaartermijn als datum nodig. Ook zijn één tot vijf doelen vereist. Valideer je de graaf tegen deze shape, dan krijg je een rapport met alle schendingen. Geen interpretatie. Geen discussie. Het is een executable specificatie van je beleid.
PolicyKG: de pipeline
Het paper stelt een pipeline voor. Deze zet institutioneel beleid automatisch om naar zulke shapes. De kern is simpel. Gebruik een groot taalmodel om beleidsteksten te ontleden in een tussenvorm. Vertaal die vervolgens naar SHACL met een deterministische generator. Deze stap is belangrijk. Je wilt niet dat een LLM direct SHACL produceert. Dan krijg je hallucinaties. Het model moet een gestructureerde representatie maken. Die zet je vervolgens met regels om.
De architectuur in het paper:
- Beleidstekst in, bijvoorbeeld een AVG-beleidsdocument of een BIO2-controlelijst.
- LLM-parse, het model extraheert entiteiten, relaties en constraints in een JSON-formaat.
- Deterministische transformatie, een Python-script zet die JSON om naar SHACL-shapes.
- Validatie, de shapes worden gedraaid tegen een bestaande kennisgraaf.
- Menselijke review, een compliance-officer controleert de output.
De crux zit in stap 2. Het model moet niet alleen tekst herkennen. Ook impliciete regels zijn nodig. Een zin als "verwerkingsverantwoordelijken dienen een verwerkersovereenkomst te sluiten" impliceert het volgende. Elke verwerkingsactiviteit met een externe verwerker moet een link hebben naar een overeenkomst. Dat is een cardinaliteitsconstraint. Deze kun je in SHACL uitdrukken.
Formele definitie van een policy knowledge graph
Ik formaliseer het. Een policy knowledge graph is een tuple ( G = (V, E, L, S) ) waarbij:
- ( V ) de verzameling entiteiten is (personen, systemen, verwerkingsactiviteiten),
- ( E \subseteq V \times V ) de verzameling gerichte relaties,
- ( L ) een functie die aan elke entiteit een type toekent,
- ( S ) de verzameling SHACL-shapes die constraints definieren.
AI & Security Intelligence
Wekelijkse nieuwsbrief met AI updates, security alerts en compliance inzichten, direct in uw inbox.
Security & AI Operating Model
Advisory met executiekracht
Van BIO2 en NIS2 tot EU AI Act, embedded in uw operating model, niet als extern project. Maandelijks opzegbaar, met assessments als bewijsvoering.