Formuliervariabelen
Variabelen vormen een krachtige manier om verschillende gegevens in een formulier bij elkaar te laten komen. U kunt variabelen gebruiken in logica, in andere velden, of om interne gegevens op te slaan die niet voor de eindgebruiker bedoeld zijn.
Er zijn 3 soorten variabelen:
Formuliervariabelen
Alle velden in het formulier zijn beschikbaar als variabele. De eigenschapsnaam van een veld wordt gebruikt als variabele. Dit gebeurt automatisch.
Gebruikersvariabelen
Zelf te beheren variabelen die niet gekoppeld zijn aan een specifiek formulierveld. U kunt hier bijvoorbeeld waarden opslaan die door logica worden verkregen of uit externe koppelingen opgehaald worden.
Vaste variabelen
Een vaste lijst met variabelen die beschikbaar zijn in alle stappen van het formulier. Afhankelijk van het type formulier zijn variabelen wel of niet voorzien van een waarde.
Variabele |
Type |
Voorbeeldwaarde |
Toelichting |
|---|---|---|---|
now |
datetime |
|
Datum van vandaag. Hier zijn verschillende weergaven van mogelijk. Seconden en milliseconden zijn altijd 0. |
environment |
string |
|
De waarde die tijdens de installatie gezet is als
|
form_name |
string |
|
De naam van het formulier. |
form_id |
string |
|
Het unieke ID van het formulier. |
auth |
object |
Een verzameling van authenticatie gegevens. Zie hieronder. |
|
auth.plugin |
string |
|
De systeemnaam van de gebruikte authenticatie plugin. |
auth.value |
string |
|
De identificerende waarde in het |
auth.additional_claims |
object |
|
De aanvullende authenticatie gegevens, voornamelijk gebruikt bij Yivi en eIDAS authenticatie. |
auth_type |
string |
|
Kan de waarden |
auth_bsn |
string |
|
De waarde van |
auth_kvk |
string |
|
De waarde van |
auth_pseudo |
string |
|
De waarde van |
auth_additional_claims |
object |
|
De waarde van |
auth_context |
object |
|
De volledige authenticatiecontext, met machtigingsinformatie. Zie Authenticatiecontext voor de beschrijving en individuele elementen als vaste variabelen. |
Verouderde variabelen
Deze variabelen zijn nog wel beschikbaar, maar we raden aan om deze niet meer te gebruiken. In versie 4.0 van Open Formulieren kunnen deze verwijderd worden.
Variabele |
Type |
Voorbeeldwaarde |
Toelichting |
|---|---|---|---|
auth.attribute |
string |
|
Kan de waarden |
Note
Bij authenticatie met de Yivi en eIDAS plugins, worden eventuele aanvullende gegevens beschikbaar gesteld onder
auth.additional_claims en auth_additional_claims. Om deze gegevens te kunnen gebruiken in
JsonLogic-expressies, zijn punten in de attribuutnamen vervangen met liggende streepjes.
Bijvoorbeeld: als je het Yivi attribuut pbdf.gemeente.personalData.over18 gebruikt in een formulier, kan je deze
als auth.additional_claims.pbdf_gemeente_personalData_over18 gebruiken in JsonLogic en in overige sjablonen.
Authenticatiecontext
De “authenticatie context” bevat alle beschikbare informatie over hoe iemand ingelogd
is op een formulier. Deze bundel informatie is beschikbaar in de vaste variabele
auth_context.
Wanneer er niet ingelogd is op het formulier, dan is de waarde van deze variabele
null.
Note
De auth_context variabele gaat op termijn de auth variabele vervangen,
maar voorlopig wordt deze laatste niet verwijderd.
Tip: in plaats van auth.plugin kan je beter auth_context_source of
auth_type gebruiken - de eerste is minder flexibel/uitwisselbaar, terwijl de
tweede wel goed de semantische betekenis bevat of het om een burger of bedrijf gaat.
Removed in version 3.0: De auth.machtigen variabele is verwijderd omdat de structuur hiervan vaag en
onbetrouwbaar was. Gebruik auth_context in de plaats.
De variabele bevat een bak aan informatie, gestructureerd volgens het authenticatiecontextdatamodel. De structuur is als volgt:
{
"source": "string",
"levelOfAssurance": "string",
"representee": {
"identifierType": "string",
"identifier": "string"
},
"authorizee": {
"legalSubject": {
"identifierType": "string",
"identifier": "string",
"branchNumber": "string",
"additionalInformation": "object",
"companyName": "string",
"firstName": "string",
"familyName": "string",
"dateOfBirth": "string",
},
"actingSubject": {
"identifierType": "string",
"identifier": "string",
"firstName": "string",
"familyName": "string",
"dateOfBirth": "string",
}
},
"mandate": {
"role": "string",
"services": [
{
"id": "string",
"uuid": "string"
}
]
}
}
Merk op dat niet alle attributen aanwezig zijn, dit hangt af van het inlogmiddel ( DigiD, eHerkenning) en of er wel/niet sprake is van een machtiging én de soort machtiging.
De volgende attributen zijn gegarandeerd aanwezig:
source, mogelijk lege string als waardelevelOfAssurance, mogelijk lege string als waardeauthorizeeauthorizee.legalSubjectauthorizee.legalSubject.identifierType, mogelijk lege string als waardeauthorizee.legalSubject.identifier, mogelijk lege string als waarde
De onderdelen van deze structuur worden ook als individuele variabelen aangeboden:
auth_context_sourceMiddel van inloggen: de waarde is
digidofeherkenning, of een lege string wanneer er geen informatie beschikbaar is.auth_context_loaBetrouwbaarheidsniveau waarmee ingelogd is. Kan leeg zijn indien onbekend.
auth_context_representee_identifier_typeGeeft aan of het om een BSN of KVK-nummer gaat, en bepaalt dus de soort vertegenwoordigde. Leeg indien onbekend of als er geen sprake is van machtigen.
auth_context_representee_identifierIdentificatie van de vertegenwoordigde. Leeg indien onbekend of als er geen sprake is van machtigen.
auth_context_legal_subject_identifier_typeGeeft aan of het om een BSN of KVK-nummer gaat, en bepaalt dus de soort (wettelijke) vertegenwoordigder (of de ingelogde persoon zelf indien er geen sprake is van vertegenwoordiging). Leeg indien het formulier zonder inloggen gestart is.
auth_context_legal_subject_identifierIdentificatie van de (wettelijke) vertegenwoordiger. Leeg indien het formulier zonder inloggen gestart is.
auth_context_branch_numberVestigingsnummer waarvoor de medewerker ingelogd is. Leeg indien het geen eHerkenning-login betreft.
auth_context_acting_subject_identifier_typeIn de praktijk zal de waarde altijd
opaqueof leeg zijn. Geeft aan hoe de identificatie van de handelende persoon (“de persoon aan de knoppen”) geïnterpreteerd moet worden.auth_context_acting_subject_identifierIdentificatie van de handelende persoon, leeg tenzij het een eHerkenning-login betreft. Deze waarde kan niet tot een persoon herleid worden (voor prefill), het is een versleutelde string. De waarde is wel gegarandeerd hetzelfde indien dezelfde medewerker weer inlogt voor hetzelfde bedrijf.