SHACL
SHACL (Shapes Constraint Language) is een W3C-standaard die wordt gebruikt om validatieregels en beperkingen te definiëren voor RDF-gegevens. Het stelt ontwikkelaars in staat om te specificeren hoe RDF-data gestructureerd moet zijn en welke waarden of relaties toegestaan zijn. SHACL wordt vaak gebruikt om de kwaliteit en consistentie van RDF-datasets te waarborgen.
Met SHACL kun je zogenaamde "shapes" definiëren, die beschrijven hoe een RDF-graf moet worden gevalideerd. Een shape kan bijvoorbeeld specificeren dat een bepaald type entiteit een verplichte eigenschap moet hebben, dat een eigenschap een specifieke datatype moet hebben, of dat een waarde binnen een bepaald bereik moet liggen.
Voorbeeld
Hier is een voorbeeld van een SHACL-shape die valideert dat een Person
een verplichte name
-eigenschap heeft en dat de waarde van age
een geheel getal moet zijn:
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix ex: <http://example.org/> .
ex:PersonShape
a sh:NodeShape ;
sh:targetClass ex:Person ;
sh:property [
sh:path ex:name ;
sh:datatype xsd:string ;
sh:minCount 1 ;
] ;
sh:property [
sh:path ex:age ;
sh:datatype xsd:integer ;
sh:minInclusive 0 ;
] .
Attribuut | Omschrijving |
---|---|
sh:NodeShape | Definieert een shape die wordt toegepast op RDF-resources. |
sh:targetClass | Geeft aan dat de shape van toepassing is op alle instanties van de klasse ex:Person . |
sh:property | Beschrijft beperkingen voor specifieke eigenschappen: ex:name moet een string zijn en is verplicht (sh:minCount 1 ). ex:age moet een geheel getal zijn en mag niet negatief zijn (sh:minInclusive 0 ). |