Technische specificaties

Hoofdstuk 4 - Data specificaties

Voordat een Nuts node een ValidatedQueryCredential kan valideren, moet de node door de beheerder worden geconfigureerd met de definitie van dit credential. Een gevalideerde vraag is een ‘custom credential’. De wijze waarop deze credentials (zijnde verifieerbare referenties) beschikbaar moeten worden gesteld staat onder deze link beschreven. De definitie van de gevalideerde vraag moet in de configuratie gemapped worden met de KIK-V JSON-LD context URL.

In onderstaande tabel zijn de attributen van de gevalideerde vraag beschreven:

AttributenToelichting
IdentifierDe gevalideerde vraag heeft een unieke identificatie die bepaald wordt op het moment van aanmaken. Term: id Verwachte waarde: UUIDv4, String, geformatteerd overeenkomstig de urn:uuid definitie Voorbeeld: “urn:uuid:aaadb8ae-0cbc-4b10-ac41-57df3aedcc5a”
NameEen logische naam voor de gevalideerde vraag Term: name Verwachte waarde: String Voorbeeld: “2.3.1 Ziekteverzuimpercentage”
DescriptionEen korte beschrijving van de gevalideerde vraag. Term: description Verwachte waarde: String Voorbeeld: “CBS/Vernet: Het ziekteverzuimpercentage is het totaal aantal ziektedagen van de personeelsleden, in procenten van het totaal aantal beschikbare (werk-/kalender) dagen van de werknemers in de verslagperiode. Het ziekteverzuimpercentage is inclusief het verzuim langer dan een jaar en exclusief zwangerschaps- en bevallingsverlof.”
OntologyEen verwijzing naar de ontologieën waarmee de sparql query vraag is beschreven. Term: ontology. Verwachte waarde: Array van strings. Voorbeeld: Ontology
ProfileEen verwijzing naar het uitwisselprofiel waarin de gevalideerde vraag is beschreven. Term: profile. Verwachte waarde: String. Voorbeeld: Profile
SparqlDe afgesproken SPARQL-query voor de gevalideerde vraag. Term: sparql Verwachte waarde: Base64 encoded string. Zie voorbeeld 1.
SHACL voor de parametersDe definitie van de parameters die in de SPARQL-query kunnen zijn opgenomen. De aanbieder ontvangt de parameters in het bericht van de gevalideerde vraag. Aan de hand van de definitie van de parameters kan de aanbieder de geldigheid van de parameters verifiëren. De definitie wordt in de gevalideerde vraag opgenomen en beschreven met de W3C Shapes Constraint Language (SHACL). Term: parameters Verwachte waarde: Base64 encoded string. Zie voorbeeld 2.

Code gekopieerd

...

Kopieer naar klembord

1#Voorbeeld 1:
2UFJFRklYIHZwaDogPGh0dHBzOi8vcHVybC5vcmcvb3pvL3ZwaCM+ClBSRUZJWCBraWs6IDxodHRwczovL3B1cmwub3JnL296by9raWsjPgpQUkVGSVggeHNkOiA8aHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEjPgoKU0VMRUNUIChTVU0oP2RhZ2VuX3ppZWt0ZSkgQVMgP3RvdGFhbF96aWVrKSAoU1VNKD9kYWdlbl9vbXZhbmcpIEFTID90b3RhYWxfd2VyaykgKD90b3RhYWxfemllay8/dG90YWFsX3dlcmsqMTAwIEFTID9pbmRpY2F0b3IpCgpXSEVSReKApg==

Code gekopieerd

...

Kopieer naar klembord

1#Voorbeeld 2:
2QHByZWZpeCBkYXNoOiA8aHR0cDovL2RhdGFzaGFwZXMub3JnL2Rhc2gjPiAuCkBwcmVmaXggcmRmOiA8aHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIz4gLgpAcHJlZml4IHJkZnM6IDxodHRwOi8vd3d3LnczLm9yZy8yMDAwLzAxL3JkZi1zY2hlbWEjPiAuCkBwcmVmaXgga2lrdjogPGh0dHA6Ly9leGFtcGxlLm9yZy9raWt2Iz4gLgpAcHJlZml4IHNoOiA8aHR0cDovL3d3dy53My5vcmcvbnMvc2hhY2wjPiAuCkBwcmVmaXggeHNkOiA8aHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEjPiAuCgpleDpRdWVyeVBhcmFtZXRlclNoYXBlCiAgICBhIHNoOk5vZGVTaGFwZSA7CiAgICBzaDp0YXJnZXRDbGFzcyBraWt2OlF1ZXJ5UGFyYW1ldGVyIDsKICAgIHNoOnByb3BlcnR5IFsKICAgICAgICBzaDpwYXRoIGtpa3Y6cGVpbGRhdHVtIDsKICAgICAgICBzaDpkYXRhdHlwZSB4c2Q6ZGF0ZSA7CiAgICAgICAgc2g6bWF4SW5jbHVzaXZlICIyMDIyLTEyLTMxIl5eeHNkOmRhdGUgIDsKICAgICAgICBzaDpuYW1lICJwZWlsZGF0dW0iIDsKICAgIF0gLgo= 
Let op!
Het programma KIK-V werkt nog aan een URI-strategie. Daarom is nog geen geldige URI beschikbaar voor de definitie van de gevalideerde vraag.

De verifiable credential moet voor een Nuts-node worden geconfigureerd met de volgende definitie:

Code gekopieerd

...

Kopieer naar klembord

1{
2  "@context": {
3    "@version": 1.1,
4    "@protected": true,
5    "id": "@id",
6    "type": "@type",
7    "schema": "http://schema.org/",
8    "kikv": "https://example.org/kikv#",
9    "validatedQuery": {
10      "@id": "kikv:validatedQuery",
11      "@type": "rdf:HTML"
12    },
13    "ValidatedQueryCredential": "kikv:validatedQueryCredential",
14    "description": "schema:description",
15    "identifier": "schema:identifier",
16    "name": "http://schema.org/name",
17    "ontology": ["kikv:kikvontology"],
18    "profile": "kikv:profile",
19    "sparql": "kikv:sparql",
20    "paramsSHACL": "kikv:paramsSHACL"
21  }
22}

De geldigheidsperiode van een gevalideerde vraag is gebaseerd op de attributen “issuanceDate” en “expirationDate” uit Verifiable Credentials Data Model v1.1. Deze attributen moeten opgenomen zijn in de verifiable credential van een gevalideerde vraag en weergegeven worden volgens het ISO 8601 formaat. Een gevalideerde vraag is met andere woorden alleen geldig in de periode vanaf “issuanceDate” tot (en dus niet tot en met) “expirationDate”.

Heb je feedback?

Loopt u tegen een issue of vraag aan bij het KIK-V product? Neem dan contact met ons op!