From 455cfcc1f12a154226af244836cb21e24ef64d3e Mon Sep 17 00:00:00 2001 From: fsamwel <37143495+fsamwel@users.noreply.github.com> Date: Thu, 5 Sep 2024 10:23:36 +0200 Subject: [PATCH 01/22] toelichting toegevoegd aan GezagNietTeBepalen --- specificatie/gezag.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/specificatie/gezag.yaml b/specificatie/gezag.yaml index 09d17de87..55852af0e 100644 --- a/specificatie/gezag.yaml +++ b/specificatie/gezag.yaml @@ -119,3 +119,9 @@ components: GezagNietTeBepalen: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + toelichting: + type: string + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,200}$ + From 6bb5b9cb9d797d8326fcece591cd36ec0934242a Mon Sep 17 00:00:00 2001 From: fsamwel Date: Thu, 5 Sep 2024 08:25:00 +0000 Subject: [PATCH 02/22] commit resolve artifacts --- specificatie/gba-genereervariant/openapi.json | 9 +++++++++ specificatie/gba-genereervariant/openapi.yaml | 5 +++++ specificatie/genereervariant/openapi.json | 9 +++++++++ specificatie/genereervariant/openapi.yaml | 5 +++++ 4 files changed, 28 insertions(+) diff --git a/specificatie/gba-genereervariant/openapi.json b/specificatie/gba-genereervariant/openapi.json index 2fdc96637..17b8db723 100644 --- a/specificatie/gba-genereervariant/openapi.json +++ b/specificatie/gba-genereervariant/openapi.json @@ -1138,6 +1138,15 @@ "allOf": [ { "$ref": "#/components/schemas/AbstractGezagsrelatie" + }, + { + "type": "object", + "properties": { + "toelichting": { + "type": "string", + "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,200}$" + } + } } ] }, diff --git a/specificatie/gba-genereervariant/openapi.yaml b/specificatie/gba-genereervariant/openapi.yaml index 459e13733..92da1c93a 100644 --- a/specificatie/gba-genereervariant/openapi.yaml +++ b/specificatie/gba-genereervariant/openapi.yaml @@ -798,6 +798,11 @@ components: GezagNietTeBepalen: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + toelichting: + type: string + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,200}$ Gezag: type: array items: diff --git a/specificatie/genereervariant/openapi.json b/specificatie/genereervariant/openapi.json index b5d77b492..be73ac2ff 100644 --- a/specificatie/genereervariant/openapi.json +++ b/specificatie/genereervariant/openapi.json @@ -2208,6 +2208,15 @@ "allOf": [ { "$ref": "#/components/schemas/AbstractGezagsrelatie" + }, + { + "type": "object", + "properties": { + "toelichting": { + "type": "string", + "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,200}$" + } + } } ] }, diff --git a/specificatie/genereervariant/openapi.yaml b/specificatie/genereervariant/openapi.yaml index 8d95f1e08..689329a31 100644 --- a/specificatie/genereervariant/openapi.yaml +++ b/specificatie/genereervariant/openapi.yaml @@ -1495,6 +1495,11 @@ components: GezagNietTeBepalen: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + toelichting: + type: string + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,200}$ Gezag: type: array items: From cfbc7c48202f0f87e722edfe9320eaa3c4dc7eeb Mon Sep 17 00:00:00 2001 From: fsamwel <37143495+fsamwel@users.noreply.github.com> Date: Fri, 6 Sep 2024 09:11:20 +0200 Subject: [PATCH 03/22] maximale lengte toelichting verhoogd naar 400 --- specificatie/gezag.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specificatie/gezag.yaml b/specificatie/gezag.yaml index 55852af0e..af3288c07 100644 --- a/specificatie/gezag.yaml +++ b/specificatie/gezag.yaml @@ -123,5 +123,5 @@ components: properties: toelichting: type: string - pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,200}$ + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ From 4081ebdc993e5a97e771e346abaa66196faff338 Mon Sep 17 00:00:00 2001 From: fsamwel Date: Fri, 6 Sep 2024 07:12:39 +0000 Subject: [PATCH 04/22] commit resolve artifacts --- specificatie/gba-genereervariant/openapi.json | 2 +- specificatie/gba-genereervariant/openapi.yaml | 2 +- specificatie/genereervariant/openapi.json | 2 +- specificatie/genereervariant/openapi.yaml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/specificatie/gba-genereervariant/openapi.json b/specificatie/gba-genereervariant/openapi.json index 17b8db723..9a6df3e46 100644 --- a/specificatie/gba-genereervariant/openapi.json +++ b/specificatie/gba-genereervariant/openapi.json @@ -1144,7 +1144,7 @@ "properties": { "toelichting": { "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,200}$" + "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" } } } diff --git a/specificatie/gba-genereervariant/openapi.yaml b/specificatie/gba-genereervariant/openapi.yaml index 92da1c93a..c0290a861 100644 --- a/specificatie/gba-genereervariant/openapi.yaml +++ b/specificatie/gba-genereervariant/openapi.yaml @@ -802,7 +802,7 @@ components: properties: toelichting: type: string - pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,200}$ + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ Gezag: type: array items: diff --git a/specificatie/genereervariant/openapi.json b/specificatie/genereervariant/openapi.json index be73ac2ff..4f68b1f47 100644 --- a/specificatie/genereervariant/openapi.json +++ b/specificatie/genereervariant/openapi.json @@ -2214,7 +2214,7 @@ "properties": { "toelichting": { "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,200}$" + "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" } } } diff --git a/specificatie/genereervariant/openapi.yaml b/specificatie/genereervariant/openapi.yaml index 689329a31..eb176d2bd 100644 --- a/specificatie/genereervariant/openapi.yaml +++ b/specificatie/genereervariant/openapi.yaml @@ -1499,7 +1499,7 @@ components: properties: toelichting: type: string - pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,200}$ + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ Gezag: type: array items: From 9d97c4a6b63ddd00380ffa38c0f6d1493a64cc41 Mon Sep 17 00:00:00 2001 From: Melvin Lee Date: Wed, 13 Nov 2024 14:10:18 +0100 Subject: [PATCH 05/22] chore(oas): minderjarige veld toegevoegd aan GezagNietTeBepalen type --- specificatie/gezag.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/specificatie/gezag.yaml b/specificatie/gezag.yaml index af3288c07..35913dccf 100644 --- a/specificatie/gezag.yaml +++ b/specificatie/gezag.yaml @@ -121,6 +121,8 @@ components: - $ref: '#/components/schemas/AbstractGezagsrelatie' - type: object properties: + minderjarige: + $ref: '#/components/schemas/Minderjarige' toelichting: type: string pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ From 144730230e67eb5113b9dbbb7a4b1dee8cdd53b7 Mon Sep 17 00:00:00 2001 From: Melvin Lee Date: Wed, 13 Nov 2024 14:13:34 +0100 Subject: [PATCH 06/22] chore(specs): toelichting bij gezag niet te bepalen scenarios toegevoegd --- ...lichting-bij-gezag-niet-te-bepalen.feature | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 features/toelichting-bij-gezag-niet-te-bepalen.feature diff --git a/features/toelichting-bij-gezag-niet-te-bepalen.feature b/features/toelichting-bij-gezag-niet-te-bepalen.feature new file mode 100644 index 000000000..4ffd227c0 --- /dev/null +++ b/features/toelichting-bij-gezag-niet-te-bepalen.feature @@ -0,0 +1,86 @@ +#language: nl + +Functionaliteit: Toelichting bij gezag niet te bepalen + + Als consumer van de BRP API + wil ik een toelichting als het gezag voor een kind niet kan worden bepaald + zodat ik weet wat de reden is dat het gezag voor het kind niet kan worden bepaald + + Regel: Een toelichting wordt geleverd als het gezag van een gevraagde kind niet kan worden bepaald + + Scenario: Het gezag van gevraagde kind kan niet worden bepaald + Gegeven de persoon met burgerservicenummer '000000012' + * wiens gezag niet kan worden bepaald om de volgende reden + | reden | + | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | + Als het 'gezag' veld wordt gevraagd voor de persoon met burgerservicenummer '000000012' + Dan heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | + + Scenario: Het gezag van meerdere gevraagde kinderen kan niet worden bepaald + Gegeven de persoon met burgerservicenummer '000000012' + * wiens gezag niet kan worden bepaald om de volgende reden + | reden | + | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | + En de persoon met burgerservicenummer '000000024' + * wiens gezag niet kan worden bepaald om de volgende reden + | reden | + | gezag is niet te bepalen omdat de volgende relevante gegevens ontbreken: verblijfplaats van bevraagde persoon | + Als het 'gezag' veld wordt gevraagd voor de personen met de burgerservicenummers '000000012,000000024' + Dan heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | + En heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000024 | + | toelichting | gezag is niet te bepalen omdat de volgende relevante gegevens ontbreken: verblijfplaats van bevraagde persoon | + + Regel: Een toelichting wordt geleverd als het gezag van een kind dat verblijft op het gevraagde adres niet kan worden bepaald + + Scenario: Het gezag van een kind dat verblijft op het gevraagde adres kan niet worden bepaald + Gegeven adres 'A1' heeft de volgende gegevens + | identificatiecode verblijfplaats (11.80) | + | 0599010000219679 | + En de persoon met burgerservicenummer '000000012' + * is ingeschreven op adres 'A1' + * wiens gezag niet kan worden bepaald om de volgende reden + | reden | + | gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven. | + Als het 'gezag' veld wordt gevraagd voor de personen die verblijven op adres 'A1' + Dan heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven. | + + Scenario: Het gezag van meerdere kinderen die verblijven op het gevraagde adres kan niet worden bepaald + Gegeven adres 'A1' heeft de volgende gegevens + | identificatiecode verblijfplaats (11.80) | + | 0599010000219679 | + En de persoon met burgerservicenummer '000000012' + * is ingeschreven op adres 'A1' + * wiens gezag niet kan worden bepaald om de volgende reden + | reden | + | gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven. | + En de persoon met burgerservicenummer '000000024' + * is ingeschreven op adres 'A1' + * wiens gezag niet kan worden bepaald om de volgende reden + | reden | + | gezag is niet te bepalen omdat minderjarige in het buitenland is geboren en geen Nederlandse adoptie-akte bekend is. | + Als het 'gezag' veld wordt gevraagd voor de personen die verblijven op adres 'A1' + Dan heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven. | + En heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000024 | + | toelichting | gezag is niet te bepalen omdat minderjarige in het buitenland is geboren en geen Nederlandse adoptie-akte bekend is. | From 65bb768bd1ff1079fb6b188be82fa1467e739fde Mon Sep 17 00:00:00 2001 From: MelvLee Date: Wed, 13 Nov 2024 13:18:23 +0000 Subject: [PATCH 07/22] commit resolve artifacts --- specificatie/gba-genereervariant/openapi.json | 3 +++ specificatie/gba-genereervariant/openapi.yaml | 2 ++ specificatie/genereervariant/openapi.json | 6 +++++- specificatie/genereervariant/openapi.yaml | 3 +++ 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/specificatie/gba-genereervariant/openapi.json b/specificatie/gba-genereervariant/openapi.json index 4fef9495e..2160415c6 100644 --- a/specificatie/gba-genereervariant/openapi.json +++ b/specificatie/gba-genereervariant/openapi.json @@ -1148,6 +1148,9 @@ { "type": "object", "properties": { + "minderjarige": { + "$ref": "#/components/schemas/Minderjarige" + }, "toelichting": { "type": "string", "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" diff --git a/specificatie/gba-genereervariant/openapi.yaml b/specificatie/gba-genereervariant/openapi.yaml index 8b606f10c..27ea69320 100644 --- a/specificatie/gba-genereervariant/openapi.yaml +++ b/specificatie/gba-genereervariant/openapi.yaml @@ -806,6 +806,8 @@ components: - $ref: '#/components/schemas/AbstractGezagsrelatie' - type: object properties: + minderjarige: + $ref: '#/components/schemas/Minderjarige' toelichting: type: string pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ diff --git a/specificatie/genereervariant/openapi.json b/specificatie/genereervariant/openapi.json index de5708472..fa1c20f8b 100644 --- a/specificatie/genereervariant/openapi.json +++ b/specificatie/genereervariant/openapi.json @@ -1137,7 +1137,8 @@ "type": "boolean" }, "indicatieGezagMinderjarige": { - "type": "boolean" + "type": "boolean", + "deprecated": true } } }, @@ -2218,6 +2219,9 @@ { "type": "object", "properties": { + "minderjarige": { + "$ref": "#/components/schemas/Minderjarige" + }, "toelichting": { "type": "string", "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" diff --git a/specificatie/genereervariant/openapi.yaml b/specificatie/genereervariant/openapi.yaml index 6eb434747..4d50d8516 100644 --- a/specificatie/genereervariant/openapi.yaml +++ b/specificatie/genereervariant/openapi.yaml @@ -817,6 +817,7 @@ components: type: boolean indicatieGezagMinderjarige: type: boolean + deprecated: true UitsluitingKiesrecht: type: object properties: @@ -1503,6 +1504,8 @@ components: - $ref: '#/components/schemas/AbstractGezagsrelatie' - type: object properties: + minderjarige: + $ref: '#/components/schemas/Minderjarige' toelichting: type: string pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ From cd04eb60f360cd4878f1ed88362d6ce043e689c6 Mon Sep 17 00:00:00 2001 From: Cathy Dingemanse Date: Wed, 13 Nov 2024 15:21:59 +0100 Subject: [PATCH 08/22] Update toelichting-bij-gezag-niet-te-bepalen.feature --- features/toelichting-bij-gezag-niet-te-bepalen.feature | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/toelichting-bij-gezag-niet-te-bepalen.feature b/features/toelichting-bij-gezag-niet-te-bepalen.feature index 4ffd227c0..07947b21f 100644 --- a/features/toelichting-bij-gezag-niet-te-bepalen.feature +++ b/features/toelichting-bij-gezag-niet-te-bepalen.feature @@ -8,7 +8,7 @@ Functionaliteit: Toelichting bij gezag niet te bepalen Regel: Een toelichting wordt geleverd als het gezag van een gevraagde kind niet kan worden bepaald - Scenario: Het gezag van gevraagde kind kan niet worden bepaald + Scenario: Het gezag van het gevraagde kind kan niet worden bepaald Gegeven de persoon met burgerservicenummer '000000012' * wiens gezag niet kan worden bepaald om de volgende reden | reden | From 6f813dff08e23de68e01be43ccb4354e51ccb2bf Mon Sep 17 00:00:00 2001 From: Melvin Lee Date: Thu, 14 Nov 2024 08:19:44 +0100 Subject: [PATCH 09/22] chore(specs): duidelijkere titel toegevoegd --- features/toelichting-bij-gezag-niet-te-bepalen.feature | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/toelichting-bij-gezag-niet-te-bepalen.feature b/features/toelichting-bij-gezag-niet-te-bepalen.feature index 07947b21f..d44aa30be 100644 --- a/features/toelichting-bij-gezag-niet-te-bepalen.feature +++ b/features/toelichting-bij-gezag-niet-te-bepalen.feature @@ -1,6 +1,6 @@ #language: nl -Functionaliteit: Toelichting bij gezag niet te bepalen +Functionaliteit: Leveren van een toelichting als het gezag van een persoon niet kan worden bepaald Als consumer van de BRP API wil ik een toelichting als het gezag voor een kind niet kan worden bepaald From 3588254f8dfdf232628b25cdc258233ca9f41e5d Mon Sep 17 00:00:00 2001 From: Melvin Lee Date: Thu, 21 Nov 2024 08:28:30 +0100 Subject: [PATCH 10/22] chore(specs): minderjarige en toelichting veld toegevoegd aan TijdelijkGeenGezag type --- scripts/resolve-oas.sh | 8 ++++---- specificatie/gezag.yaml | 24 +++++++++++------------- 2 files changed, 15 insertions(+), 17 deletions(-) diff --git a/scripts/resolve-oas.sh b/scripts/resolve-oas.sh index a68a2a64e..40aa8f85d 100644 --- a/scripts/resolve-oas.sh +++ b/scripts/resolve-oas.sh @@ -1,6 +1,6 @@ #!/bin/bash -redocly bundle ./specificatie/openapi.yaml -o ./specificatie/genereervariant/openapi.yaml -redocly bundle ./specificatie/openapi.yaml -o ./specificatie/genereervariant/openapi.json -redocly bundle ./specificatie/gba-openapi.yaml -o ./specificatie/gba-genereervariant/openapi.yaml -redocly bundle ./specificatie/gba-openapi.yaml -o ./specificatie/gba-genereervariant/openapi.json +npx redocly bundle ./specificatie/openapi.yaml -o ./specificatie/genereervariant/openapi.yaml +npx redocly bundle ./specificatie/openapi.yaml -o ./specificatie/genereervariant/openapi.json +npx redocly bundle ./specificatie/gba-openapi.yaml -o ./specificatie/gba-genereervariant/openapi.yaml +npx redocly bundle ./specificatie/gba-openapi.yaml -o ./specificatie/gba-genereervariant/openapi.json diff --git a/specificatie/gezag.yaml b/specificatie/gezag.yaml index 35913dccf..2beca63df 100644 --- a/specificatie/gezag.yaml +++ b/specificatie/gezag.yaml @@ -48,9 +48,12 @@ components: type: object required: - type + - minderjarige properties: type: type: string + minderjarige: + $ref: '#/components/schemas/Minderjarige' discriminator: propertyName: type mapping: @@ -78,8 +81,6 @@ components: $ref: '#/components/schemas/GezagOuder' minItems: 2 maxItems: 2 - minderjarige: - $ref: '#/components/schemas/Minderjarige' EenhoofdigOuderlijkGezag: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' @@ -87,8 +88,6 @@ components: properties: ouder: $ref: '#/components/schemas/GezagOuder' - minderjarige: - $ref: '#/components/schemas/Minderjarige' GezamenlijkGezag: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' @@ -98,8 +97,6 @@ components: $ref: '#/components/schemas/GezagOuder' derde: $ref: '#/components/schemas/Meerderjarige' - minderjarige: - $ref: '#/components/schemas/Minderjarige' Voogdij: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' @@ -111,19 +108,20 @@ components: $ref: '#/components/schemas/Meerderjarige' minItems: 0 maxItems: 2 - minderjarige: - $ref: '#/components/schemas/Minderjarige' TijdelijkGeenGezag: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + toelichting: + $ref: '#/components/schemas/Toelichting' GezagNietTeBepalen: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' - type: object properties: - minderjarige: - $ref: '#/components/schemas/Minderjarige' toelichting: - type: string - pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ - + $ref: '#/components/schemas/Toelichting' + Toelichting: + type: string + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ From 8611e65dde9a062161c5f8791ed44e203d73e85a Mon Sep 17 00:00:00 2001 From: Melvin Lee Date: Thu, 21 Nov 2024 08:43:39 +0100 Subject: [PATCH 11/22] chore: toelichting-bij-tijdelijk-geen-gezag.feature toegevoegd --- ...elichting-bij-tijdelijk-geen-gezag.feature | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 features/toelichting-bij-tijdelijk-geen-gezag.feature diff --git a/features/toelichting-bij-tijdelijk-geen-gezag.feature b/features/toelichting-bij-tijdelijk-geen-gezag.feature new file mode 100644 index 000000000..723655d74 --- /dev/null +++ b/features/toelichting-bij-tijdelijk-geen-gezag.feature @@ -0,0 +1,86 @@ +#language: nl + +Functionaliteit: Leveren van een toelichting als een kind tijdelijk geen gezag heeft + + Als consumer van de BRP API + wil ik een toelichting als een kind tijdelijk geen gezag heeft + zodat ik weet wat de reden is dat het kind tijdelijk geen gezag heeft + + Regel: Een toelichting wordt geleverd als het gevraagde kind tijdelijk geen gezag heeft + + Scenario: Het gevraagde kind heeft tijdelijk geen gezag + Gegeven de persoon met burgerservicenummer '000000012' + * heeft tijdelijk geen gezag om de volgende reden + | reden | + | todo | + Als het 'gezag' veld wordt gevraagd voor de persoon met burgerservicenummer '000000012' + Dan heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | todo | + + Scenario: Meerdere gevraagde kinderen hebben tijdelijk geen gezag + Gegeven de persoon met burgerservicenummer '000000012' + * heeft tijdelijk geen gezag om de volgende reden + | reden | + | todo | + En de persoon met burgerservicenummer '000000024' + * heeft tijdelijk geen gezag om de volgende reden + | reden | + | todo | + Als het 'gezag' veld wordt gevraagd voor de personen met de burgerservicenummers '000000012,000000024' + Dan heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | todo | + En heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000024 | + | toelichting | todo | + + Regel: Een toelichting wordt geleverd als een kind dat verblijft op het gevraagde adres tijdelijk geen gezag heeft + + Scenario: Een kind dat verblijft op het gevraagde adres heeft tijdelijk geen gezag + Gegeven adres 'A1' heeft de volgende gegevens + | identificatiecode verblijfplaats (11.80) | + | 0599010000219679 | + En de persoon met burgerservicenummer '000000012' + * is ingeschreven op adres 'A1' + * heeft tijdelijk geen gezag om de volgende reden + | reden | + | todo | + Als het 'gezag' veld wordt gevraagd voor de personen die verblijven op adres 'A1' + Dan heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | todo | + + Scenario: Meerdere kinderen die verblijven op het gevraagde adres hebben tijdelijk geen gezag + Gegeven adres 'A1' heeft de volgende gegevens + | identificatiecode verblijfplaats (11.80) | + | 0599010000219679 | + En de persoon met burgerservicenummer '000000012' + * is ingeschreven op adres 'A1' + * heeft tijdelijk geen gezag om de volgende reden + | reden | + | todo | + En de persoon met burgerservicenummer '000000024' + * is ingeschreven op adres 'A1' + * heeft tijdelijk geen gezag om de volgende reden + | reden | + | todo | + Als het 'gezag' veld wordt gevraagd voor de personen die verblijven op adres 'A1' + Dan heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | todo | + En heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000024 | + | toelichting | todo | From 39504c48fc94b31a1afd0d3b36c97c187a483ad6 Mon Sep 17 00:00:00 2001 From: MelvLee Date: Thu, 21 Nov 2024 07:45:00 +0000 Subject: [PATCH 12/22] commit resolve artifacts --- specificatie/gba-genereervariant/openapi.json | 58 +++++++++---------- specificatie/gba-genereervariant/openapi.yaml | 37 ++++++------ specificatie/genereervariant/openapi.json | 58 +++++++++---------- specificatie/genereervariant/openapi.yaml | 37 ++++++------ 4 files changed, 94 insertions(+), 96 deletions(-) diff --git a/specificatie/gba-genereervariant/openapi.json b/specificatie/gba-genereervariant/openapi.json index 2160415c6..3915e1b34 100644 --- a/specificatie/gba-genereervariant/openapi.json +++ b/specificatie/gba-genereervariant/openapi.json @@ -985,11 +985,15 @@ "AbstractGezagsrelatie": { "type": "object", "required": [ - "type" + "type", + "minderjarige" ], "properties": { "type": { "type": "string" + }, + "minderjarige": { + "$ref": "#/components/schemas/Minderjarige" } }, "discriminator": { @@ -1029,17 +1033,6 @@ "burgerservicenummer" ] }, - "Minderjarige": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - } - }, - "required": [ - "burgerservicenummer" - ] - }, "TweehoofdigOuderlijkGezag": { "allOf": [ { @@ -1055,9 +1048,6 @@ }, "minItems": 2, "maxItems": 2 - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" } } } @@ -1073,9 +1063,6 @@ "properties": { "ouder": { "$ref": "#/components/schemas/GezagOuder" - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" } } } @@ -1102,9 +1089,6 @@ }, "derde": { "$ref": "#/components/schemas/Meerderjarige" - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" } } } @@ -1125,18 +1109,27 @@ }, "minItems": 0, "maxItems": 2 - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" } } } ] }, + "Toelichting": { + "type": "string", + "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" + }, "TijdelijkGeenGezag": { "allOf": [ { "$ref": "#/components/schemas/AbstractGezagsrelatie" + }, + { + "type": "object", + "properties": { + "toelichting": { + "$ref": "#/components/schemas/Toelichting" + } + } } ] }, @@ -1148,17 +1141,24 @@ { "type": "object", "properties": { - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" - }, "toelichting": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" + "$ref": "#/components/schemas/Toelichting" } } } ] }, + "Minderjarige": { + "type": "object", + "properties": { + "burgerservicenummer": { + "$ref": "#/components/schemas/Burgerservicenummer" + } + }, + "required": [ + "burgerservicenummer" + ] + }, "Gezag": { "type": "array", "items": { diff --git a/specificatie/gba-genereervariant/openapi.yaml b/specificatie/gba-genereervariant/openapi.yaml index 27ea69320..d2eec5822 100644 --- a/specificatie/gba-genereervariant/openapi.yaml +++ b/specificatie/gba-genereervariant/openapi.yaml @@ -714,9 +714,12 @@ components: type: object required: - type + - minderjarige properties: type: type: string + minderjarige: + $ref: '#/components/schemas/Minderjarige' discriminator: propertyName: type mapping: @@ -740,13 +743,6 @@ components: $ref: '#/components/schemas/Burgerservicenummer' required: - burgerservicenummer - Minderjarige: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - required: - - burgerservicenummer TweehoofdigOuderlijkGezag: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' @@ -758,8 +754,6 @@ components: $ref: '#/components/schemas/GezagOuder' minItems: 2 maxItems: 2 - minderjarige: - $ref: '#/components/schemas/Minderjarige' EenhoofdigOuderlijkGezag: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' @@ -767,8 +761,6 @@ components: properties: ouder: $ref: '#/components/schemas/GezagOuder' - minderjarige: - $ref: '#/components/schemas/Minderjarige' Meerderjarige: type: object properties: @@ -783,8 +775,6 @@ components: $ref: '#/components/schemas/GezagOuder' derde: $ref: '#/components/schemas/Meerderjarige' - minderjarige: - $ref: '#/components/schemas/Minderjarige' Voogdij: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' @@ -796,21 +786,30 @@ components: $ref: '#/components/schemas/Meerderjarige' minItems: 0 maxItems: 2 - minderjarige: - $ref: '#/components/schemas/Minderjarige' + Toelichting: + type: string + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ TijdelijkGeenGezag: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + toelichting: + $ref: '#/components/schemas/Toelichting' GezagNietTeBepalen: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' - type: object properties: - minderjarige: - $ref: '#/components/schemas/Minderjarige' toelichting: - type: string - pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ + $ref: '#/components/schemas/Toelichting' + Minderjarige: + type: object + properties: + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + required: + - burgerservicenummer Gezag: type: array items: diff --git a/specificatie/genereervariant/openapi.json b/specificatie/genereervariant/openapi.json index fa1c20f8b..83b7d9acf 100644 --- a/specificatie/genereervariant/openapi.json +++ b/specificatie/genereervariant/openapi.json @@ -2056,11 +2056,15 @@ "AbstractGezagsrelatie": { "type": "object", "required": [ - "type" + "type", + "minderjarige" ], "properties": { "type": { "type": "string" + }, + "minderjarige": { + "$ref": "#/components/schemas/Minderjarige" } }, "discriminator": { @@ -2100,17 +2104,6 @@ "burgerservicenummer" ] }, - "Minderjarige": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - } - }, - "required": [ - "burgerservicenummer" - ] - }, "TweehoofdigOuderlijkGezag": { "allOf": [ { @@ -2126,9 +2119,6 @@ }, "minItems": 2, "maxItems": 2 - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" } } } @@ -2144,9 +2134,6 @@ "properties": { "ouder": { "$ref": "#/components/schemas/GezagOuder" - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" } } } @@ -2173,9 +2160,6 @@ }, "derde": { "$ref": "#/components/schemas/Meerderjarige" - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" } } } @@ -2196,18 +2180,27 @@ }, "minItems": 0, "maxItems": 2 - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" } } } ] }, + "Toelichting": { + "type": "string", + "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" + }, "TijdelijkGeenGezag": { "allOf": [ { "$ref": "#/components/schemas/AbstractGezagsrelatie" + }, + { + "type": "object", + "properties": { + "toelichting": { + "$ref": "#/components/schemas/Toelichting" + } + } } ] }, @@ -2219,17 +2212,24 @@ { "type": "object", "properties": { - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" - }, "toelichting": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" + "$ref": "#/components/schemas/Toelichting" } } } ] }, + "Minderjarige": { + "type": "object", + "properties": { + "burgerservicenummer": { + "$ref": "#/components/schemas/Burgerservicenummer" + } + }, + "required": [ + "burgerservicenummer" + ] + }, "Gezag": { "type": "array", "items": { diff --git a/specificatie/genereervariant/openapi.yaml b/specificatie/genereervariant/openapi.yaml index 4d50d8516..ba0e9af97 100644 --- a/specificatie/genereervariant/openapi.yaml +++ b/specificatie/genereervariant/openapi.yaml @@ -1412,9 +1412,12 @@ components: type: object required: - type + - minderjarige properties: type: type: string + minderjarige: + $ref: '#/components/schemas/Minderjarige' discriminator: propertyName: type mapping: @@ -1438,13 +1441,6 @@ components: $ref: '#/components/schemas/Burgerservicenummer' required: - burgerservicenummer - Minderjarige: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - required: - - burgerservicenummer TweehoofdigOuderlijkGezag: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' @@ -1456,8 +1452,6 @@ components: $ref: '#/components/schemas/GezagOuder' minItems: 2 maxItems: 2 - minderjarige: - $ref: '#/components/schemas/Minderjarige' EenhoofdigOuderlijkGezag: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' @@ -1465,8 +1459,6 @@ components: properties: ouder: $ref: '#/components/schemas/GezagOuder' - minderjarige: - $ref: '#/components/schemas/Minderjarige' Meerderjarige: type: object properties: @@ -1481,8 +1473,6 @@ components: $ref: '#/components/schemas/GezagOuder' derde: $ref: '#/components/schemas/Meerderjarige' - minderjarige: - $ref: '#/components/schemas/Minderjarige' Voogdij: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' @@ -1494,21 +1484,30 @@ components: $ref: '#/components/schemas/Meerderjarige' minItems: 0 maxItems: 2 - minderjarige: - $ref: '#/components/schemas/Minderjarige' + Toelichting: + type: string + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ TijdelijkGeenGezag: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + toelichting: + $ref: '#/components/schemas/Toelichting' GezagNietTeBepalen: allOf: - $ref: '#/components/schemas/AbstractGezagsrelatie' - type: object properties: - minderjarige: - $ref: '#/components/schemas/Minderjarige' toelichting: - type: string - pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ + $ref: '#/components/schemas/Toelichting' + Minderjarige: + type: object + properties: + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + required: + - burgerservicenummer Gezag: type: array items: From 322d768b703464d195736ff4345534b5dda4d582 Mon Sep 17 00:00:00 2001 From: Melvin Lee Date: Tue, 26 Nov 2024 11:32:54 +0100 Subject: [PATCH 13/22] chore(oas): oas specificatie refactored met behulp van brp-shared specificaties --- .github/workflows/lint-oas.yml | 38 ++-- .spectral.yml | 2 - scripts/oas-lint-resolved.sh | 3 +- scripts/oas-lint.sh | 3 +- scripts/oas-resolve.sh | 3 +- scripts/resolve-oas.sh | 6 - specificatie/adressering.yaml | 2 +- specificatie/common.yaml | 267 ------------------------ specificatie/geboorte.yaml | 8 +- specificatie/gezag.yaml | 102 +-------- specificatie/immigratie.yaml | 4 +- specificatie/kiesrecht.yaml | 4 +- specificatie/naam.yaml | 6 +- specificatie/nationaliteit.yaml | 8 +- specificatie/openapi.yaml | 51 ++++- specificatie/opschortingbijhouding.yaml | 2 +- specificatie/ouder.yaml | 2 +- specificatie/overlijden.yaml | 4 +- specificatie/partner.yaml | 8 +- specificatie/persoon.yaml | 20 +- specificatie/verblijfplaats.yaml | 14 +- specificatie/verblijfstitel.yaml | 2 +- specificatie/zoek-personen.yaml | 62 +----- 23 files changed, 119 insertions(+), 502 deletions(-) delete mode 100644 .spectral.yml delete mode 100644 scripts/resolve-oas.sh delete mode 100644 specificatie/common.yaml diff --git a/.github/workflows/lint-oas.yml b/.github/workflows/lint-oas.yml index a3d1cfdda..221f639c0 100644 --- a/.github/workflows/lint-oas.yml +++ b/.github/workflows/lint-oas.yml @@ -1,4 +1,4 @@ -name: lint-oas +name: lint OpenAPI specificaties on: push: @@ -10,36 +10,42 @@ on: workflow_dispatch: env: - HUSKY: 0 + NODE_VERSION: '20' jobs: lint: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - name: Use Node.js + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: ${{ env.NODE_VERSION }} - name: Install dependencies run: npm ci + + - name: Zet run permissions op script folder + uses: ./.github/actions/zet-run-bash-scripts-permission + with: + path-bash-file-or-folder: ./scripts/* + + - name: lint OAS + run: ./scripts/oas-lint.sh + - name: resolve OAS - run: npm run oas:resolve + run: ./scripts/oas-resolve.sh - name: lint resolved OAS - run: npm run oas:lint-genereervariant + run: ./scripts/oas-lint-resolved.sh + - name: push resolved to remote run: | doCommit=false - if [ -n "$(git status specificatie/genereervariant/openapi.yaml --porcelain)" ]; then - echo "specificatie/genereervariant/openapi.yaml modified" - git add specificatie/genereervariant/openapi.* - doCommit=true - fi - - if [ -n "$(git status specificatie/gba-genereervariant/openapi.yaml --porcelain)" ]; then - echo "specificatie/gba-genereervariant/openapi.yaml modified" - git add specificatie/gba-genereervariant/openapi.* + if [ -n "$(git status specificatie/resolved/openapi.yaml --porcelain)" ]; then + echo "specificatie/resolved/openapi.yaml modified" + git add specificatie/resolved/openapi.* doCommit=true fi diff --git a/.spectral.yml b/.spectral.yml deleted file mode 100644 index 4622e7ecb..000000000 --- a/.spectral.yml +++ /dev/null @@ -1,2 +0,0 @@ -extends: -- https://raw.githubusercontent.com/VNG-Realisatie/Haal-Centraal-common/master/.spectral.yml \ No newline at end of file diff --git a/scripts/oas-lint-resolved.sh b/scripts/oas-lint-resolved.sh index f4089dbd2..6cf86f9f5 100644 --- a/scripts/oas-lint-resolved.sh +++ b/scripts/oas-lint-resolved.sh @@ -1,4 +1,3 @@ #!/bin/bash -npx spectral lint ./specificatie/referentie-data-api/resolved/openapi.yaml -npx spectral lint ./specificatie/referentie-informatie-api/resolved/openapi.yaml +npx spectral lint ./specificatie/resolved/openapi.yaml diff --git a/scripts/oas-lint.sh b/scripts/oas-lint.sh index 1dc18c6b9..bea15048e 100644 --- a/scripts/oas-lint.sh +++ b/scripts/oas-lint.sh @@ -1,4 +1,3 @@ #!/bin/bash -npx spectral lint ./specificatie/referentie-data-api/openapi.yaml -npx spectral lint ./specificatie/referentie-informatie-api/openapi.yaml +npx spectral lint ./specificatie/openapi.yaml diff --git a/scripts/oas-resolve.sh b/scripts/oas-resolve.sh index bd3b139f7..238df10d7 100644 --- a/scripts/oas-resolve.sh +++ b/scripts/oas-resolve.sh @@ -1,4 +1,3 @@ #!/bin/bash -npx redocly bundle ./specificatie/referentie-data-api/openapi.yaml -o ./specificatie/referentie-data-api/resolved/openapi.yaml -npx redocly bundle ./specificatie/referentie-informatie-api/openapi.yaml -o ./specificatie/referentie-informatie-api/resolved/openapi.yaml +npx redocly bundle ./specificatie/openapi.yaml -o ./specificatie/resolved/openapi.yaml diff --git a/scripts/resolve-oas.sh b/scripts/resolve-oas.sh deleted file mode 100644 index 40aa8f85d..000000000 --- a/scripts/resolve-oas.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -npx redocly bundle ./specificatie/openapi.yaml -o ./specificatie/genereervariant/openapi.yaml -npx redocly bundle ./specificatie/openapi.yaml -o ./specificatie/genereervariant/openapi.json -npx redocly bundle ./specificatie/gba-openapi.yaml -o ./specificatie/gba-genereervariant/openapi.yaml -npx redocly bundle ./specificatie/gba-openapi.yaml -o ./specificatie/gba-genereervariant/openapi.json diff --git a/specificatie/adressering.yaml b/specificatie/adressering.yaml index ba55f2601..e913145af 100644 --- a/specificatie/adressering.yaml +++ b/specificatie/adressering.yaml @@ -64,7 +64,7 @@ components: adresregel3: $ref: "#/components/schemas/Adresregel3" land: - $ref: "common.yaml#/components/schemas/Waardetabel" + $ref: "brp/waardetabel-v1.yaml#/components/schemas/Waardetabel" indicatieVastgesteldVerblijftNietOpAdres: $ref: 'verblijfplaats.yaml#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres' Adressering: diff --git a/specificatie/common.yaml b/specificatie/common.yaml deleted file mode 100644 index 1f0565636..000000000 --- a/specificatie/common.yaml +++ /dev/null @@ -1,267 +0,0 @@ -openapi: 3.0.3 -info: - title: Header, foutresponse en waardetabel definities - version: 2.0.0 - contact: {} -paths: {} -components: - headers: - warning: - schema: - type: string - maxLength: 500 - description: 'zie RFC 7234. In het geval een major versie wordt uitgefaseerd, gebruiken we warn-code 299 ("Miscellaneous Persistent Warning") en het API end-point (inclusief versienummer) als de warn-agent van de warning, gevolgd door de warn-text met de human-readable waarschuwing' - example: '299 https://service.../api/.../v1 "Deze versie van de API is verouderd en zal uit dienst worden genomen op 2018-02-01. Raadpleeg voor meer informatie hier de documentatie: https://omgevingswet.../api/.../v1".' - X_Rate_Limit_Limit: - schema: - type: integer - X_Rate_Limit_Remaining: - schema: - type: integer - X_Rate_Limit_Reset: - schema: - type: integer - responses: - '400': - description: Bad Request - content: - application/problem+json: - schema: - $ref: "#/components/schemas/BadRequestFoutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1 - title: Ten minste één parameter moet worden opgegeven. - status: 400 - detail: The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modification. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: paramsRequired - invalidParams: - - type: https://www.vng.nl/realisatie/api/validaties/integer - name: huisnummer - code: integer - reason: Waarde is geen geldig getal. - '401': - description: Unauthorized - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2 - title: Niet correct geauthenticeerd. - status: 401 - detail: The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.47) containing a challenge applicable to the requested resource. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: authentication - '403': - description: Forbidden - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4 - title: U bent niet geautoriseerd voor deze operatie. - status: 403 - detail: The server understood the request, but is refusing to fulfill it. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: autorisation - '404': - description: Not Found - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5 - title: Opgevraagde resource bestaat niet. - status: 404 - detail: The server has not found anything matching the Request-URI. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: notFound - '406': - description: Not Acceptable - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.7 - title: Gevraagde contenttype wordt niet ondersteund. - status: 406 - detail: The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to thr accept headers sent in the request - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: notAcceptable - '409': - description: Conflict - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.10 - title: Conflict - status: 409 - detail: The request could not be completed due to a conflict with the current state of the resource - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: conflict - '410': - description: Gone - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.11 - title: Gone - status: 410 - detail: The request could not be completed due to a conflict with the current state of the resource - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: gone - '412': - description: Precondition failed - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.13 - title: Precondition Failed - status: 412 - detail: The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: preconditionFailed - '415': - description: Unsupported Media Type - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.16 - title: Unsupported Media Type - status: 415 - detail: The server is refusing the request because the entity of the request is in a format not supported by the requested resource for the requested method. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: unsupported - '429': - description: Too Many Requests - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html - title: Too many request - status: 429 - detail: The user has sent too many requests in a given amount of time (rate limiting). - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: tooManyRequests - '500': - description: Internal Server Error - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1 - title: Interne server fout. - status: 500 - detail: The server encountered an unexpected condition which prevented it from fulfilling the request. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: serverError - '503': - description: Service Unavailable - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.4 - title: Bronservice BRP is tijdelijk niet beschikbaar. - status: 503 - detail: The service is currently unable to handle the request due to a temporary overloading or maintenance of the server. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: notAvailable - 'default': - description: Er is een onverwachte fout opgetreden - content: - application/problem+json: - schema: - $ref: "#/components/schemas/Foutbericht" - schemas: - Foutbericht: - type: object - description: Terugmelding bij een fout. JSON representatie in lijn met [RFC7807](https://tools.ietf.org/html/rfc7807). - properties: - type: - type: string - format: uri - description: Link naar meer informatie over deze fout - title: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-]{1,80}$ - description: Beschrijving van de fout - status: - type: integer - minimum: 100 - maximum: 600 - description: Http status code - detail: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\(\)\,]{1,200}$ - description: Details over de fout - instance: - type: string - format: uri - description: Uri van de aanroep die de fout heeft veroorzaakt - code: - type: string - pattern: ^[a-zA-Z0-9]{1,25}$ - description: Systeemcode die het type fout aangeeft - minLength: 1 - InvalidParams: - type: object - description: Details over fouten in opgegeven parameters - properties: - type: - type: string - format: uri - example: "https://www.vng.nl/realisatie/api/{major-versie}/validaties/integer" - name: - type: string - pattern: ^[a-zA-Z0-9\.,_]{1,30}$ - description: Naam van de parameter - example: "huisnummer" - code: - type: string - pattern: ^[a-zA-Z0-9\.,_]{1,25}$ - description: Systeemcode die het type fout aangeeft - minLength: 1 - example: "integer" - reason: - type: string - pattern: ^[a-zA-Z0-9\.,_ ]{1,80}$ - description: Beschrijving van de fout op de parameterwaarde - example: "Waarde is geen geldig getal." - BadRequestFoutbericht: - allOf: - - $ref: "#/components/schemas/Foutbericht" - - type: "object" - properties: - invalidParams: - description: Foutmelding per fout in een parameter. Alle gevonden fouten worden één keer teruggemeld. - type: array - items: - $ref: "#/components/schemas/InvalidParams" - Waardetabel: - type: "object" - properties: - code: - type: "string" - pattern: ^[a-zA-Z0-9 \.]+$ - example: "6030" - omschrijving: - type: "string" - pattern: ^[a-zA-Z0-9À-ž \'\,\(\)\.\-]{1,200}$ - example: "Nederland" diff --git a/specificatie/geboorte.yaml b/specificatie/geboorte.yaml index d4a92e8fe..9ba8f147a 100644 --- a/specificatie/geboorte.yaml +++ b/specificatie/geboorte.yaml @@ -17,9 +17,9 @@ components: - type: object properties: land: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' plaats: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' GeboorteBasis: type: object properties: @@ -43,9 +43,9 @@ components: - type: object properties: land: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' plaats: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: $ref: '#/components/schemas/GeboorteInOnderzoek' GeboorteInOnderzoek: diff --git a/specificatie/gezag.yaml b/specificatie/gezag.yaml index 2beca63df..8b5588117 100644 --- a/specificatie/gezag.yaml +++ b/specificatie/gezag.yaml @@ -23,105 +23,5 @@ components: Gezag: type: array items: - $ref: '#/components/schemas/AbstractGezagsrelatie' + $ref: 'brp-api/gezag/gezagsrelatie-v1.yaml#/components/schemas/AbstractGezagsrelatie' minItems: 0 - Meerderjarige: - type: object - properties: - burgerservicenummer: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' - Minderjarige: - type: object - properties: - burgerservicenummer: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' - required: - - burgerservicenummer - GezagOuder: - type: object - properties: - burgerservicenummer: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' - required: - - burgerservicenummer - AbstractGezagsrelatie: - type: object - required: - - type - - minderjarige - properties: - type: - type: string - minderjarige: - $ref: '#/components/schemas/Minderjarige' - discriminator: - propertyName: type - mapping: - TweehoofdigOuderlijkGezag: '#/components/schemas/TweehoofdigOuderlijkGezag' - EenhoofdigOuderlijkGezag: '#/components/schemas/EenhoofdigOuderlijkGezag' - GezamenlijkGezag: '#/components/schemas/GezamenlijkGezag' - Voogdij: '#/components/schemas/Voogdij' - TijdelijkGeenGezag: '#/components/schemas/TijdelijkGeenGezag' - GezagNietTeBepalen: '#/components/schemas/GezagNietTeBepalen' - example: - type: 'TweehoofdigOuderlijkGezag' - ouders: - - burgerservicenummer: '999998870' - - burgerservicenummer: '999998882' - minderjarige: - burgerservicenummer: '999998894' - TweehoofdigOuderlijkGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - ouders: - type: array - items: - $ref: '#/components/schemas/GezagOuder' - minItems: 2 - maxItems: 2 - EenhoofdigOuderlijkGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - ouder: - $ref: '#/components/schemas/GezagOuder' - GezamenlijkGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - ouder: - $ref: '#/components/schemas/GezagOuder' - derde: - $ref: '#/components/schemas/Meerderjarige' - Voogdij: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - derden: - type: array - items: - $ref: '#/components/schemas/Meerderjarige' - minItems: 0 - maxItems: 2 - TijdelijkGeenGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - toelichting: - $ref: '#/components/schemas/Toelichting' - GezagNietTeBepalen: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - toelichting: - $ref: '#/components/schemas/Toelichting' - Toelichting: - type: string - pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ diff --git a/specificatie/immigratie.yaml b/specificatie/immigratie.yaml index 7740c526b..5400a467f 100644 --- a/specificatie/immigratie.yaml +++ b/specificatie/immigratie.yaml @@ -23,7 +23,7 @@ components: datumVestigingInNederland: $ref: 'datum.yaml#/components/schemas/GbaDatum' landVanwaarIngeschreven: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' Immigratie: type: object description: | @@ -33,7 +33,7 @@ components: datumVestigingInNederland: $ref: 'datum.yaml#/components/schemas/AbstractDatum' landVanwaarIngeschreven: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' vanuitVerblijfplaatsOnbekend: $ref: '#/components/schemas/VanuitVerblijfplaatsOnbekend' indicatieVestigingVanuitBuitenland: diff --git a/specificatie/kiesrecht.yaml b/specificatie/kiesrecht.yaml index e78ceb004..90681a120 100644 --- a/specificatie/kiesrecht.yaml +++ b/specificatie/kiesrecht.yaml @@ -20,7 +20,7 @@ components: * **aanduiding** - Geeft aan of persoon een oproep moet ontvangen voor verkiezingen voor het Europees parlement. Wordt gevuld met waarden voor 'Europees_Kiesrecht' in 'tabelwaarden.csv'. properties: aanduiding: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' einddatumUitsluiting: $ref: 'datum.yaml#/components/schemas/GbaDatum' UitsluitingKiesrecht: @@ -37,6 +37,6 @@ components: * **aanduiding** - Geeft aan of persoon een oproep moet ontvangen voor verkiezingen voor het Europees parlement. Wordt gevuld met waarden voor 'Europees_Kiesrecht' in 'tabelwaarden.csv'. properties: aanduiding: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' einddatumUitsluiting: $ref: 'datum.yaml#/components/schemas/AbstractDatum' diff --git a/specificatie/naam.yaml b/specificatie/naam.yaml index 00c982ee8..82a749827 100644 --- a/specificatie/naam.yaml +++ b/specificatie/naam.yaml @@ -44,7 +44,7 @@ components: description: | Wordt gevuld met waarden uit de landelijke tabel 'Adellijke titel/predicaat'. De property soort geeft aan of het een 'predicaat' of een 'titel' is. allOf: - - $ref: 'common.yaml#/components/schemas/Waardetabel' + - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - properties: soort: $ref: '#/components/schemas/AdellijkeTitelPredicaatSoort' @@ -69,7 +69,7 @@ components: - $ref: '#/components/schemas/GbaNaamBasis' - properties: aanduidingNaamgebruik: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' NaamBasis: type: object properties: @@ -125,7 +125,7 @@ components: - $ref: '#/components/schemas/NaamBasis' - properties: aanduidingNaamgebruik: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: $ref: '#/components/schemas/NaamPersoonInOnderzoek' NaamPersoonBeperkt: diff --git a/specificatie/nationaliteit.yaml b/specificatie/nationaliteit.yaml index 145cf086b..12c7f1c94 100644 --- a/specificatie/nationaliteit.yaml +++ b/specificatie/nationaliteit.yaml @@ -16,7 +16,7 @@ components: type: type: string redenOpname: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' discriminator: propertyName: type mapping: @@ -35,7 +35,7 @@ components: datumIngangGeldigheid: $ref: 'datum.yaml#/components/schemas/AbstractDatum' nationaliteit: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: $ref: '#/components/schemas/NationaliteitBekendInOnderzoek' BehandeldAlsNederlander: @@ -85,9 +85,9 @@ components: datumIngangGeldigheid: $ref: 'datum.yaml#/components/schemas/GbaDatum' nationaliteit: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' redenOpname: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' BijzonderNederlanderschapInOnderzoek: diff --git a/specificatie/openapi.yaml b/specificatie/openapi.yaml index 19ab97dd7..c19648d90 100644 --- a/specificatie/openapi.yaml +++ b/specificatie/openapi.yaml @@ -24,4 +24,53 @@ externalDocs: url: https://brp-api.github.io/Haal-Centraal-BRP-bevragen paths: /personen: - $ref: 'zoek-personen.yaml#/paths/~1personen' + post: + operationId: Personen + summary: Zoek personen + description: | + Zoek personen met één van de onderstaande verplichte combinaties van parameters en vul ze evt. aan met optionele parameters. + + 1. Raadpleeg met burgerservicenummer + 2. Zoek met geslachtsnaam en geboortedatum + 3. Zoek met geslachtsnaam, voornamen en gemeente van inschrijving + 4. Zoek met postcode en huisnummer + 5. Zoek met straat, huisnummer en gemeente van inschrijving + 6. Zoek met nummeraanduiding identificatie + 7. Zoek met adresseerbaarobject identificatie + + Default krijg je personen terug die nog in leven zijn, tenzij je de inclusiefoverledenpersonen=true opgeeft. + + Gebruik de fields parameter om alleen die gegevens op te vragen die je nodig hebt en waarvoor je geautoriseerd bent. + requestBody: + content: + 'application/json; charset=utf-8': + schema: + $ref: 'zoek-personen.yaml#/components/schemas/PersonenQuery' + responses: + '200': + description: | + Zoekactie geslaagd + content: + 'application/json; charset=utf-8': + schema: + $ref: 'zoek-personen.yaml#/components/schemas/PersonenQueryResponse' + '400': + $ref: 'problem-details/400-bad-request-response-v1.yaml#/components/responses/400' + '401': + $ref: 'problem-details/401-unauthorized-response-v1.yaml#/components/responses/401' + '403': + $ref: 'problem-details/403-forbidden-response-v1.yaml#/components/responses/403' + '406': + $ref: 'problem-details/406-not-acceptable-response-v1.yaml#/components/responses/406' + '415': + $ref: 'problem-details/415-unsupported-media-type-response-v1.yaml#/components/responses/415' + '429': + $ref: 'problem-details/429-too-many-requests-response-v1.yaml#/components/responses/429' + '500': + $ref: 'problem-details/500-internal-server-error-response-v1.yaml#/components/responses/500' + '503': + $ref: 'problem-details/503-service-unavailable-response-v1.yaml#/components/responses/503' + 'default': + $ref: 'problem-details/500-internal-server-error-response-v1.yaml#/components/responses/500' + tags: + - Personen diff --git a/specificatie/opschortingbijhouding.yaml b/specificatie/opschortingbijhouding.yaml index fcebaac73..9505df25c 100644 --- a/specificatie/opschortingbijhouding.yaml +++ b/specificatie/opschortingbijhouding.yaml @@ -12,7 +12,7 @@ components: * **reden** - wordt gevuld met waarden voor 'Reden_Opschorting_Bijhouding' in 'tabelwaarden.csv'. properties: reden: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' GbaOpschortingBijhouding: allOf: - $ref: '#/components/schemas/OpschortingBijhoudingBasis' diff --git a/specificatie/ouder.yaml b/specificatie/ouder.yaml index 35a36d979..0ed521e55 100644 --- a/specificatie/ouder.yaml +++ b/specificatie/ouder.yaml @@ -40,7 +40,7 @@ components: burgerservicenummer: $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' geslacht: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' ouderAanduiding: $ref: '#/components/schemas/OuderAanduiding' datumIngangFamilierechtelijkeBetrekking: diff --git a/specificatie/overlijden.yaml b/specificatie/overlijden.yaml index fdafa5caf..b8375efea 100644 --- a/specificatie/overlijden.yaml +++ b/specificatie/overlijden.yaml @@ -28,9 +28,9 @@ components: datum: $ref: 'datum.yaml#/components/schemas/AbstractDatum' land: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' plaats: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: $ref: '#/components/schemas/OverlijdenInOnderzoek' OverlijdenInOnderzoek: diff --git a/specificatie/partner.yaml b/specificatie/partner.yaml index a4617a5da..36b522523 100644 --- a/specificatie/partner.yaml +++ b/specificatie/partner.yaml @@ -31,9 +31,9 @@ components: burgerservicenummer: $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' geslacht: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' soortVerbintenis: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' naam: $ref: 'naam.yaml#/components/schemas/NaamGerelateerde' geboorte: @@ -82,9 +82,9 @@ components: datum: $ref: 'datum.yaml#/components/schemas/AbstractDatum' land: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' plaats: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: $ref: '#/components/schemas/AangaanHuwelijkPartnerschapInOnderzoek' AangaanHuwelijkPartnerschapInOnderzoek: diff --git a/specificatie/persoon.yaml b/specificatie/persoon.yaml index 77e2dd542..d94de2b4c 100644 --- a/specificatie/persoon.yaml +++ b/specificatie/persoon.yaml @@ -73,7 +73,7 @@ components: description: Gegevens over de RNI-deelnemer die de gegevens in de betrokken categorie heeft aangeleverd. properties: deelnemer: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' omschrijvingVerdrag: $ref: '#/components/schemas/OmschrijvingVerdrag' categorie: @@ -88,7 +88,7 @@ components: geheimhoudingPersoonsgegevens: $ref: '#/components/schemas/GbaGeheimhoudingPersoonsgegevens' geslacht: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' persoonInOnderzoek: $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' naam: @@ -96,7 +96,7 @@ components: opschortingBijhouding: $ref: 'opschortingbijhouding.yaml#/components/schemas/GbaOpschortingBijhouding' gemeenteVanInschrijving: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' verblijfplaats: $ref: 'verblijfplaats.yaml#/components/schemas/GbaVerblijfplaatsBeperkt' rni: @@ -117,7 +117,7 @@ components: geheimhoudingPersoonsgegevens: $ref: '#/components/schemas/GeheimhoudingPersoonsgegevens' geslacht: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: $ref: '#/components/schemas/PersoonInOnderzoekBeperkt' leeftijd: @@ -146,7 +146,7 @@ components: geheimhoudingPersoonsgegevens: $ref: '#/components/schemas/GbaGeheimhoudingPersoonsgegevens' geslacht: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' persoonInOnderzoek: $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' gezagInOnderzoek: @@ -172,13 +172,13 @@ components: immigratie: $ref: 'immigratie.yaml#/components/schemas/GbaImmigratie' gemeenteVanInschrijving: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' datumInschrijvingInGemeente: $ref: 'datum.yaml#/components/schemas/GbaDatum' indicatieCurateleRegister: $ref: '#/components/schemas/IndicatieCurateleRegister' indicatieGezagMinderjarige: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' deprecated: true gezag: $ref: 'gezag.yaml#/components/schemas/Gezag' @@ -216,7 +216,7 @@ components: geheimhoudingPersoonsgegevens: $ref: '#/components/schemas/GeheimhoudingPersoonsgegevens' geslacht: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: $ref: '#/components/schemas/PersoonInOnderzoek' uitsluitingKiesrecht: @@ -242,7 +242,7 @@ components: immigratie: $ref: 'immigratie.yaml#/components/schemas/Immigratie' gemeenteVanInschrijving: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' datumInschrijvingInGemeente: $ref: 'datum.yaml#/components/schemas/AbstractDatum' adressering: @@ -250,7 +250,7 @@ components: indicatieCurateleRegister: $ref: '#/components/schemas/IndicatieCurateleRegister' indicatieGezagMinderjarige: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' deprecated: true gezag: $ref: 'gezag.yaml#/components/schemas/Gezag' diff --git a/specificatie/verblijfplaats.yaml b/specificatie/verblijfplaats.yaml index 18cbaf8cc..0f95d6e4b 100644 --- a/specificatie/verblijfplaats.yaml +++ b/specificatie/verblijfplaats.yaml @@ -109,7 +109,7 @@ components: huisnummertoevoeging: $ref: '#/components/schemas/Huisnummertoevoeging' aanduidingBijHuisnummer: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' postcode: $ref: '#/components/schemas/Postcode' woonplaats: @@ -126,7 +126,7 @@ components: regel3: $ref: '#/components/schemas/Regel3' land: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: $ref: "#/components/schemas/VerblijfadresBuitenlandInOnderzoek" VerblijfadresLocatie: @@ -148,7 +148,7 @@ components: huisnummertoevoeging: $ref: '#/components/schemas/Huisnummertoevoeging' aanduidingBijHuisnummer: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' postcode: $ref: '#/components/schemas/Postcode' woonplaats: @@ -156,7 +156,7 @@ components: locatiebeschrijving: $ref: '#/components/schemas/Locatiebeschrijving' land: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' regel1: $ref: '#/components/schemas/Regel1' regel2: @@ -219,7 +219,7 @@ components: verblijfadres: $ref: "#/components/schemas/VerblijfadresBinnenland" functieAdres: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' adresseerbaarObjectIdentificatie: $ref: '#/components/schemas/AdresseerbaarObjectIdentificatie' nummeraanduidingIdentificatie: @@ -245,7 +245,7 @@ components: datumVan: $ref: 'datum.yaml#/components/schemas/AbstractDatum' functieAdres: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' verblijfadres: $ref: "#/components/schemas/VerblijfadresLocatie" datumIngangGeldigheid: @@ -284,7 +284,7 @@ components: $ref: 'datum.yaml#/components/schemas/GbaDatum' deprecated: true functieAdres: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' naamOpenbareRuimte: $ref: '#/components/schemas/NaamOpenbareRuimte' VerblijfplaatsBuitenlandInOnderzoek: diff --git a/specificatie/verblijfstitel.yaml b/specificatie/verblijfstitel.yaml index d759609ef..c0898aa68 100644 --- a/specificatie/verblijfstitel.yaml +++ b/specificatie/verblijfstitel.yaml @@ -31,7 +31,7 @@ components: * **aanduiding** : Verblijfstiteltabel die aangeeft over welke verblijfsrechtelijke status de persoon beschikt. Wordt gevuld met waarden uit de landelijke tabel 'Verblijfstitel'. properties: aanduiding: - $ref: 'common.yaml#/components/schemas/Waardetabel' + $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' datumEinde: $ref: 'datum.yaml#/components/schemas/AbstractDatum' datumIngang: diff --git a/specificatie/zoek-personen.yaml b/specificatie/zoek-personen.yaml index d8ddaed7c..7c60a90ad 100644 --- a/specificatie/zoek-personen.yaml +++ b/specificatie/zoek-personen.yaml @@ -3,67 +3,7 @@ info: title: Zoek Personen endpoint definitie version: 2.0.0 contact: {} -paths: - /personen: - post: - operationId: Personen - summary: Zoek personen - description: | - Zoek personen met één van de onderstaande verplichte combinaties van parameters en vul ze evt. aan met optionele parameters. - - 1. Raadpleeg met burgerservicenummer - 2. Zoek met geslachtsnaam en geboortedatum - 3. Zoek met geslachtsnaam, voornamen en gemeente van inschrijving - 4. Zoek met postcode en huisnummer - 5. Zoek met straat, huisnummer en gemeente van inschrijving - 6. Zoek met nummeraanduiding identificatie - 7. Zoek met adresseerbaarobject identificatie - - Default krijg je personen terug die nog in leven zijn, tenzij je de inclusiefoverledenpersonen=true opgeeft. - - Gebruik de fields parameter om alleen die gegevens op te vragen die je nodig hebt en waarvoor je geautoriseerd bent. - requestBody: - content: - 'application/json; charset=utf-8': - schema: - $ref: '#/components/schemas/PersonenQuery' - responses: - '200': - description: | - Zoekactie geslaagd - headers: - warning: - $ref: 'common.yaml#/components/headers/warning' - X-Rate-Limit-Limit: - $ref: 'common.yaml#/components/headers/X_Rate_Limit_Limit' - X-Rate-Limit-Remaining: - $ref: 'common.yaml#/components/headers/X_Rate_Limit_Remaining' - X-Rate-Limit-Reset: - $ref: 'common.yaml#/components/headers/X_Rate_Limit_Reset' - content: - 'application/json; charset=utf-8': - schema: - $ref: '#/components/schemas/PersonenQueryResponse' - '400': - $ref: 'common.yaml#/components/responses/400' - '401': - $ref: 'common.yaml#/components/responses/401' - '403': - $ref: 'common.yaml#/components/responses/403' - '406': - $ref: 'common.yaml#/components/responses/406' - '415': - $ref: 'common.yaml#/components/responses/415' - '429': - $ref: 'common.yaml#/components/responses/429' - '500': - $ref: 'common.yaml#/components/responses/500' - '503': - $ref: 'common.yaml#/components/responses/503' - 'default': - $ref: 'common.yaml#/components/responses/default' - tags: - - Personen +paths: {} components: schemas: InclusiefOverledenPersonen: From fef8424cfd932d28012f58506b2460f8e5b9fd54 Mon Sep 17 00:00:00 2001 From: MelvLee Date: Tue, 26 Nov 2024 10:34:10 +0000 Subject: [PATCH 14/22] commit resolve artifacts --- specificatie/resolved/openapi.yaml | 1961 ++++++++++++++++++++++++++++ 1 file changed, 1961 insertions(+) create mode 100644 specificatie/resolved/openapi.yaml diff --git a/specificatie/resolved/openapi.yaml b/specificatie/resolved/openapi.yaml new file mode 100644 index 000000000..59f2416f7 --- /dev/null +++ b/specificatie/resolved/openapi.yaml @@ -0,0 +1,1961 @@ +openapi: 3.1.0 +info: + title: BRP API Personen + description: | + API voor het bevragen van personen uit de basisregistratie personen (BRP), inclusief de registratie niet-ingezeten (RNI). Met deze API kun je personen zoeken en actuele gegevens over personen, kinderen, partners en ouders raadplegen. + + Gegevens die er niet zijn of niet actueel zijn krijg je niet terug. Had een persoon bijvoorbeeld een verblijfstitel die nu niet meer geldig is, dan wordt die verblijfstitel niet opgenomen. In partners wordt alleen de actuele of de laatst ontbonden partner geleverd. + + Zie de [Features overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht) en [Getting started](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/getting-started) voor nadere toelichting. + version: 2.3.0 + contact: + url: https://brp-api.github.io/Haal-Centraal-BRP-bevragen + license: + name: European Union Public License, version 1.2 (EUPL-1.2) + url: https://eupl.eu/1.2/nl/ +servers: + - description: | + Proef omgeving + url: https://proefomgeving.haalcentraal.nl/haalcentraal/api/brp +tags: + - name: Personen +externalDocs: + description: BRP API Personen website + url: https://brp-api.github.io/Haal-Centraal-BRP-bevragen +paths: + /personen: + post: + operationId: Personen + summary: Zoek personen + description: | + Zoek personen met één van de onderstaande verplichte combinaties van parameters en vul ze evt. aan met optionele parameters. + + 1. Raadpleeg met burgerservicenummer + 2. Zoek met geslachtsnaam en geboortedatum + 3. Zoek met geslachtsnaam, voornamen en gemeente van inschrijving + 4. Zoek met postcode en huisnummer + 5. Zoek met straat, huisnummer en gemeente van inschrijving + 6. Zoek met nummeraanduiding identificatie + 7. Zoek met adresseerbaarobject identificatie + + Default krijg je personen terug die nog in leven zijn, tenzij je de inclusiefoverledenpersonen=true opgeeft. + + Gebruik de fields parameter om alleen die gegevens op te vragen die je nodig hebt en waarvoor je geautoriseerd bent. + requestBody: + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/PersonenQuery' + responses: + '200': + description: | + Zoekactie geslaagd + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/PersonenQueryResponse' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '429': + $ref: '#/components/responses/429' + '500': + $ref: '#/components/responses/500' + '503': + $ref: '#/components/responses/503' + default: + $ref: '#/components/responses/500' + tags: + - Personen +components: + schemas: + PersonenQuery: + type: object + required: + - type + - fields + discriminator: + propertyName: type + mapping: + ZoekMetGeslachtsnaamEnGeboortedatum: '#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatum' + ZoekMetNaamEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijving' + RaadpleegMetBurgerservicenummer: '#/components/schemas/RaadpleegMetBurgerservicenummer' + ZoekMetPostcodeEnHuisnummer: '#/components/schemas/ZoekMetPostcodeEnHuisnummer' + ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijving' + ZoekMetNummeraanduidingIdentificatie: '#/components/schemas/ZoekMetNummeraanduidingIdentificatie' + ZoekMetAdresseerbaarObjectIdentificatie: '#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatie' + properties: + type: + type: string + fields: + description: | + Hiermee kun je de velden opgeven die je wenst te ontvangen. + + Velden die automatisch worden geleverd (inOnderzoek, geheimhoudingPersoonsgegevens, opschortingBijhouding, rni en verificatie) mag je niet opgeven in fields. + Opgave van een pad dat verwijst naar een niet-bestaand veld of naar een automatisch geleverd veld leidt tot een 400 Bad Request. + + Meer details over hoe fields werkt lees je in het [feature overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht#filteren-van-de-velden-van-de-gevonden-personen). + Stel je fields eenvoudig samen met de [fields tool](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/fields){:target="_blank" rel="noopener"}. + type: array + maxItems: 130 + minItems: 1 + items: + $ref: '#/components/schemas/Field' + gemeenteVanInschrijving: + $ref: '#/components/schemas/GemeenteVanInschrijving' + InclusiefOverledenPersonen: + description: | + Als je ook overleden personen in het antwoord wilt, geef dan de parameter inclusiefOverledenPersonen op met waarde True. + type: boolean + example: true + GeslachtsnaamFilter: + description: | + De (geslachts)naam waarvan de eventueel aanwezige voorvoegsels zijn afgesplitst. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.** + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$|^[a-zA-Z0-9À-ž \.\-\']{3,199}\*{1}$ + example: Vries + GeslachtFilter: + description: | + Geeft aan dat de persoon een man of een vrouw is, of dat het geslacht (nog) onbekend is. + type: string + pattern: ^([Mm]|[Vv]|[Oo])$ + example: V + VoorvoegselFilter: + description: | + Deel van de geslachtsnaam dat vooraf gaat aan de rest van de geslachtsnaam. **Zoeken met tekstvelden is case-insensitive.** + type: string + pattern: ^[a-zA-Z \']{1,10}$ + example: de + VoornamenOptioneelFilter: + description: | + De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan.** **Zoeken met tekstvelden is case-insensitive.** + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,199}\*{0,1}$ + example: Dirk + ZoekMetGeslachtsnaamEnGeboortedatum: + required: + - geslachtsnaam + - geboortedatum + allOf: + - $ref: '#/components/schemas/PersonenQuery' + - type: object + properties: + inclusiefOverledenPersonen: + $ref: '#/components/schemas/InclusiefOverledenPersonen' + geboortedatum: + description: | + Je kunt alleen zoeken met een volledige geboortedatum. + type: string + format: date + example: '1964-09-24' + geslachtsnaam: + $ref: '#/components/schemas/GeslachtsnaamFilter' + geslacht: + $ref: '#/components/schemas/GeslachtFilter' + voorvoegsel: + $ref: '#/components/schemas/VoorvoegselFilter' + voornamen: + $ref: '#/components/schemas/VoornamenOptioneelFilter' + VoornamenVerplichtFilter: + description: | + De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.** + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$|^[a-zA-Z0-9À-ž \.\-\']{3,199}\*{1}$ + example: Dirk + ZoekMetNaamEnGemeenteVanInschrijving: + required: + - geslachtsnaam + - gemeenteVanInschrijving + - voornamen + allOf: + - $ref: '#/components/schemas/PersonenQuery' + - type: object + properties: + inclusiefOverledenPersonen: + $ref: '#/components/schemas/InclusiefOverledenPersonen' + geslacht: + $ref: '#/components/schemas/GeslachtFilter' + geslachtsnaam: + $ref: '#/components/schemas/GeslachtsnaamFilter' + voorvoegsel: + $ref: '#/components/schemas/VoorvoegselFilter' + voornamen: + $ref: '#/components/schemas/VoornamenVerplichtFilter' + Burgerservicenummer: + type: string + pattern: ^[0-9]{9}$ + example: '555555021' + RaadpleegMetBurgerservicenummer: + required: + - burgerservicenummer + allOf: + - $ref: '#/components/schemas/PersonenQuery' + - type: object + properties: + burgerservicenummer: + type: array + items: + $ref: '#/components/schemas/Burgerservicenummer' + minItems: 1 + maxItems: 20 + Huisletter: + description: | + Een toevoeging aan een huisnummer in de vorm van een letter die door de gemeente aan een adresseerbaar object is gegeven. + type: string + pattern: ^[a-zA-Z]{1}$ + example: a + Huisnummer: + description: | + Een nummer dat door de gemeente aan een adresseerbaar object is gegeven. + type: integer + minimum: 1 + maximum: 99999 + example: 14 + Huisnummertoevoeging: + description: | + Een toevoeging aan een huisnummer of een combinatie van huisnummer en huisletter die door de gemeente aan een adresseerbaar object is gegeven. + type: string + pattern: ^[a-zA-Z0-9 \-]{1,4}$ + example: bis + Postcode: + description: | + De door PostNL vastgestelde code die bij een bepaalde combinatie van een straatnaam en een huisnummer hoort. + type: string + pattern: ^[1-9]{1}[0-9]{3}[ ]?[A-Za-z]{2}$ + example: 2341SX + ZoekMetPostcodeEnHuisnummer: + required: + - postcode + - huisnummer + allOf: + - $ref: '#/components/schemas/PersonenQuery' + - type: object + properties: + inclusiefOverledenPersonen: + $ref: '#/components/schemas/InclusiefOverledenPersonen' + huisletter: + $ref: '#/components/schemas/Huisletter' + huisnummer: + $ref: '#/components/schemas/Huisnummer' + huisnummertoevoeging: + $ref: '#/components/schemas/Huisnummertoevoeging' + postcode: + $ref: '#/components/schemas/Postcode' + geboortedatum: + description: | + Je kunt alleen zoeken met een volledige geboortedatum. + type: string + format: date + example: '1964-09-24' + StraatFilter: + description: | + Een naam die door de gemeente aan een openbare ruimte is gegeven. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 7 letters.** **Zoeken met tekstvelden is case-insensitive.** + type: string + pattern: ^[a-zA-Z0-9À-ž \-\'\.]{1,80}$|^[a-zA-Z0-9À-ž \-\'\.]{7,79}\*{1}$|^\*{1}[a-zA-Z0-9À-ž \-\'\.]{7,79}$ + example: Tulpstraat + ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: + required: + - straat + - huisnummer + - gemeenteVanInschrijving + allOf: + - $ref: '#/components/schemas/PersonenQuery' + - type: object + properties: + inclusiefOverledenPersonen: + $ref: '#/components/schemas/InclusiefOverledenPersonen' + huisletter: + $ref: '#/components/schemas/Huisletter' + huisnummer: + $ref: '#/components/schemas/Huisnummer' + huisnummertoevoeging: + $ref: '#/components/schemas/Huisnummertoevoeging' + straat: + $ref: '#/components/schemas/StraatFilter' + NummeraanduidingIdentificatie: + description: | + Unieke identificatie van een nummeraanduiding (en het bijbehorende adres) in de BAG. + type: string + pattern: ^[0-9]{16}$ + example: '0518200000366054' + ZoekMetNummeraanduidingIdentificatie: + required: + - nummeraanduidingIdentificatie + allOf: + - $ref: '#/components/schemas/PersonenQuery' + - type: object + properties: + inclusiefOverledenPersonen: + $ref: '#/components/schemas/InclusiefOverledenPersonen' + nummeraanduidingIdentificatie: + $ref: '#/components/schemas/NummeraanduidingIdentificatie' + AdresseerbaarObjectIdentificatie: + type: string + pattern: ^[0-9]{16}$ + description: | + De verblijfplaats van de persoon kan een ligplaats, een standplaats of een verblijfsobject zijn. + example: '0226010000038820' + ZoekMetAdresseerbaarObjectIdentificatie: + required: + - adresseerbaarObjectIdentificatie + allOf: + - $ref: '#/components/schemas/PersonenQuery' + - type: object + properties: + inclusiefOverledenPersonen: + $ref: '#/components/schemas/InclusiefOverledenPersonen' + adresseerbaarObjectIdentificatie: + $ref: '#/components/schemas/AdresseerbaarObjectIdentificatie' + Field: + description: | + Het pad naar een gewenst veld in punt-gescheiden formaat. Bijvoorbeeld "burgerservicenummer", "geboorte.datum", "partners.naam.voornamen". + type: string + pattern: ^[a-zA-Z0-9\._]{1,200}$ + GemeenteVanInschrijving: + description: | + Een code die aangeeft in welke gemeente de persoon woont, of de laatste gemeente waar de persoon heeft gewoond, of de gemeente waar de persoon voor het eerst is ingeschreven. + type: string + pattern: ^[0-9]{4}$ + example: '0518' + Foutbericht: + type: object + description: Terugmelding bij een fout. JSON representatie in lijn met [RFC7807](https://tools.ietf.org/html/rfc7807). + properties: + type: + description: Link naar meer informatie over deze fout + type: string + format: uri + title: + description: Beschrijving van de fout + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-]{1,80}$ + status: + type: integer + minimum: 100 + maximum: 600 + description: Http status code + detail: + description: Details over de fout + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\(\),]{1,200}$ + instance: + description: Uri van de aanroep die de fout heeft veroorzaakt + type: string + format: uri + code: + description: Systeemcode die het type fout aangeeft + type: string + pattern: ^[a-zA-Z0-9]{1,25}$ + PersonenQueryResponse: + type: object + required: + - type + discriminator: + propertyName: type + mapping: + ZoekMetGeslachtsnaamEnGeboortedatum: '#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatumResponse' + ZoekMetNaamEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijvingResponse' + RaadpleegMetBurgerservicenummer: '#/components/schemas/RaadpleegMetBurgerservicenummerResponse' + ZoekMetPostcodeEnHuisnummer: '#/components/schemas/ZoekMetPostcodeEnHuisnummerResponse' + ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse' + ZoekMetNummeraanduidingIdentificatie: '#/components/schemas/ZoekMetNummeraanduidingIdentificatieResponse' + ZoekMetAdresseerbaarObjectIdentificatie: '#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatieResponse' + properties: + type: + type: string + AbstractDatum: + type: object + required: + - type + - langFormaat + properties: + type: + type: string + langFormaat: + type: string + pattern: ^[a-z0-9 ]{1,17}$ + discriminator: + propertyName: type + mapping: + Datum: '#/components/schemas/VolledigeDatum' + DatumOnbekend: '#/components/schemas/DatumOnbekend' + JaarDatum: '#/components/schemas/JaarDatum' + JaarMaandDatum: '#/components/schemas/JaarMaandDatum' + VolledigeDatum: + description: Datum conform iso8601 + allOf: + - $ref: '#/components/schemas/AbstractDatum' + - type: object + properties: + datum: + type: string + format: date + required: + - datum + example: + value: + type: Datum + datum: '2018-07-01' + langFormaat: 1 juli 2018 + DatumOnbekend: + description: representatie voor een volledig onbekend datum + allOf: + - $ref: '#/components/schemas/AbstractDatum' + - type: object + properties: + onbekend: + type: boolean + default: true + required: + - onbekend + example: + value: + type: DatumOnbekend + onbekend: true + langFormaat: onbekend + Jaar: + type: integer + format: int32 + minimum: 1 + maximum: 9999 + JaarDatum: + description: representatie voor een datum waarvan maand en dag onbekend zijn + allOf: + - $ref: '#/components/schemas/AbstractDatum' + - type: object + properties: + jaar: + $ref: '#/components/schemas/Jaar' + required: + - jaar + example: + value: + type: JaarDatum + jaar: 2018 + langFormaat: 2018 + Maand: + type: integer + format: int32 + minimum: 1 + maximum: 12 + JaarMaandDatum: + description: representatie voor een datum waarvan de dag onbekend is + allOf: + - $ref: '#/components/schemas/AbstractDatum' + - type: object + properties: + jaar: + $ref: '#/components/schemas/Jaar' + maand: + $ref: '#/components/schemas/Maand' + required: + - jaar + - maand + example: + value: + type: JaarMaandDatum + jaar: 2018 + maand: 7 + langFormaat: juli 2018 + GeboorteBasis: + type: object + properties: + datum: + $ref: '#/components/schemas/AbstractDatum' + InOnderzoek: + type: object + properties: + datumIngangOnderzoek: + $ref: '#/components/schemas/AbstractDatum' + GeboorteInOnderzoekBeperkt: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + datum: + type: boolean + GeboorteBeperkt: + allOf: + - $ref: '#/components/schemas/GeboorteBasis' + - type: object + properties: + inOnderzoek: + $ref: '#/components/schemas/GeboorteInOnderzoekBeperkt' + GeheimhoudingPersoonsgegevens: + description: | + Gegevens mogen niet worden verstrekt aan derden / maatschappelijke instellingen. + type: boolean + Waardetabel: + type: object + properties: + code: + type: string + pattern: ^[a-zA-Z0-9 \.]+$ + example: '6030' + omschrijving: + type: string + pattern: ^[a-zA-Z0-9À-ž \'\.\-\(\),]{1,200}$ + example: Nederland + PersoonInOnderzoekBeperkt: + description: | + Geeft aan welke gegevens van de persoon in onderzoek zijn. + * **datumIngangOnderzoekPersoon - Deze datum heeft betrekking op burgerservicenummer, geslacht en leeftijd + type: object + properties: + datumIngangOnderzoekPersoon: + $ref: '#/components/schemas/AbstractDatum' + burgerservicenummer: + type: boolean + geslacht: + type: boolean + leeftijd: + type: boolean + Leeftijd: + type: integer + description: | + Leeftijd in jaren op het moment van bevragen. + example: 34 + minimum: 0 + maximum: 150 + Voornamen: + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$ + maxLength: 200 + description: | + De verzameling namen voor de geslachtsnaam, gescheiden door spaties. + AdellijkeTitelPredicaatSoort: + type: string + enum: + - titel + - predicaat + AdellijkeTitelPredicaatType: + description: | + Wordt gevuld met waarden uit de landelijke tabel 'Adellijke titel/predicaat'. De property soort geeft aan of het een 'predicaat' of een 'titel' is. + allOf: + - $ref: '#/components/schemas/Waardetabel' + - properties: + soort: + $ref: '#/components/schemas/AdellijkeTitelPredicaatSoort' + example: + value: + code: JV + omschrijving: jonkvrouw + soort: predicaat + Voorvoegsel: + type: string + pattern: ^[a-zA-Z \']{1,10}$ + maxLength: 10 + example: de + Geslachtsnaam: + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$ + description: | + De achternaam van een persoon. + example: Vries + Voorletters: + type: string + pattern: ^[a-zA-Z0-9À-ž \.]{1,40}$ + description: | + De voorletters van de persoon, afgeleid van de voornamen. + example: P.J. + VolledigeNaam: + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,450}$ + description: | + Combinatie van predicaat, voornamen, adellijke titel, voorvoegsels en geslachtsnaam, zonder toevoeging van een eventuele partnernaam. + example: Pieter Jan de Vries + NaamBasis: + type: object + properties: + voornamen: + $ref: '#/components/schemas/Voornamen' + adellijkeTitelPredicaat: + $ref: '#/components/schemas/AdellijkeTitelPredicaatType' + voorvoegsel: + $ref: '#/components/schemas/Voorvoegsel' + geslachtsnaam: + $ref: '#/components/schemas/Geslachtsnaam' + voorletters: + $ref: '#/components/schemas/Voorletters' + volledigeNaam: + $ref: '#/components/schemas/VolledigeNaam' + NaamInOnderzoek: + description: | + Geeft aan welke gegevens over de naam in onderzoek zijn. + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + voornamen: + type: boolean + adellijkeTitelPredicaat: + type: boolean + voorvoegsel: + type: boolean + geslachtsnaam: + type: boolean + voorletters: + type: boolean + NaamPersoonInOnderzoekBeperkt: + allOf: + - $ref: '#/components/schemas/NaamInOnderzoek' + - type: object + properties: + volledigeNaam: + type: boolean + NaamPersoonBeperkt: + description: | + Gegevens over de naam van de persoon. + allOf: + - $ref: '#/components/schemas/NaamBasis' + - properties: + inOnderzoek: + $ref: '#/components/schemas/NaamPersoonInOnderzoekBeperkt' + OpschortingBijhoudingBasis: + type: object + description: | + * **reden** - wordt gevuld met waarden voor 'Reden_Opschorting_Bijhouding' in 'tabelwaarden.csv'. + properties: + reden: + $ref: '#/components/schemas/Waardetabel' + OpschortingBijhouding: + allOf: + - $ref: '#/components/schemas/OpschortingBijhoudingBasis' + - type: object + description: | + * **datum**: de datum waarop de bijhouding van de persoonsgegevens is gestaakt. + properties: + datum: + $ref: '#/components/schemas/AbstractDatum' + Adresregel1: + type: string + maxLength: 40 + description: | + Het eerste deel van een adres is een combinatie van de straat en huisnummer. + example: Kappeyne v d Cappellostr 26A-3 + Adresregel2: + type: string + maxLength: 50 + description: | + Het tweede deel van een adres is een combinatie van woonplaats eventueel in combinatie met de postcode. + example: 1234AA Nootdorp + Adresregel3: + type: string + maxLength: 35 + description: | + Het derde deel van een adres is optioneel. Het gaat om een of meer geografische gebieden van het adres in het buitenland. + example: Selangor + IndicatieVastgesteldVerblijftNietOpAdres: + description: | + Geeft aan dat is vastgesteld dat de persoon niet meer op de geregistreerde adres/locatie staat ingeschreven. + type: boolean + AdresseringBasis: + type: object + description: '' + properties: + adresregel1: + $ref: '#/components/schemas/Adresregel1' + adresregel2: + $ref: '#/components/schemas/Adresregel2' + adresregel3: + $ref: '#/components/schemas/Adresregel3' + land: + $ref: '#/components/schemas/Waardetabel' + indicatieVastgesteldVerblijftNietOpAdres: + $ref: '#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres' + AdresseringInOnderzoekBeperkt: + description: | + Geeft aan welke gegevens over de adressering in onderzoek zijn. + type: object + properties: + adresregel1: + type: boolean + adresregel2: + type: boolean + adresregel3: + type: boolean + land: + type: boolean + datumIngangOnderzoekVerblijfplaats: + $ref: '#/components/schemas/AbstractDatum' + AdresseringBeperkt: + allOf: + - $ref: '#/components/schemas/AdresseringBasis' + - properties: + inOnderzoek: + $ref: '#/components/schemas/AdresseringInOnderzoekBeperkt' + OmschrijvingVerdrag: + type: string + description: | + Omschrijving van het verdrag op basis waarvan een zusterorganisatie in het buitenland de gegevens bij de RNI-deelnemer heeft aangeleverd. + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,50}$ + Categorie: + type: string + description: Naam van categorie waarop de RNI-deelnemer gegevens heeft aangeleverd + pattern: ^[a-zA-Z0-9À-ž \.\-\'\/]{1,40}$ + example: Verblijfplaats + RniDeelnemer: + type: object + description: Gegevens over de RNI-deelnemer die de gegevens in de betrokken categorie heeft aangeleverd. + properties: + deelnemer: + $ref: '#/components/schemas/Waardetabel' + omschrijvingVerdrag: + $ref: '#/components/schemas/OmschrijvingVerdrag' + categorie: + $ref: '#/components/schemas/Categorie' + OmschrijvingVerificatie: + type: string + description: | + Omschrijving van de verificatie van de rni-gegevens + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,50}$ + Verificatie: + type: object + properties: + datum: + $ref: '#/components/schemas/AbstractDatum' + omschrijving: + $ref: '#/components/schemas/OmschrijvingVerificatie' + PersoonBeperkt: + type: object + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + properties: + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + geboorte: + $ref: '#/components/schemas/GeboorteBeperkt' + geheimhoudingPersoonsgegevens: + $ref: '#/components/schemas/GeheimhoudingPersoonsgegevens' + geslacht: + $ref: '#/components/schemas/Waardetabel' + inOnderzoek: + $ref: '#/components/schemas/PersoonInOnderzoekBeperkt' + leeftijd: + $ref: '#/components/schemas/Leeftijd' + naam: + $ref: '#/components/schemas/NaamPersoonBeperkt' + opschortingBijhouding: + $ref: '#/components/schemas/OpschortingBijhouding' + adressering: + $ref: '#/components/schemas/AdresseringBeperkt' + rni: + type: array + items: + $ref: '#/components/schemas/RniDeelnemer' + verificatie: + $ref: '#/components/schemas/Verificatie' + ZoekMetGeslachtsnaamEnGeboortedatumResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: '#/components/schemas/PersoonBeperkt' + ZoekMetNaamEnGemeenteVanInschrijvingResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: '#/components/schemas/PersoonBeperkt' + ANummer: + description: | + Het A-nummer van de persoon + type: string + pattern: ^[0-9]{10}$ + PersoonInOnderzoek: + description: | + Geeft aan welke gegevens van de persoon in onderzoek zijn. + * **datumIngangOnderzoekPersoon - Deze datum heeft betrekking op burgerservicenummer, geslacht en leeftijd + * **datumIngangOnderzoekGemeente - Deze datum heeft betrekking op gemeenteVanInschrijving en datumInschrijvingInGemeente + * **datumIngangOnderzoekGezag - Deze datumingang heeft betrekking op indicatieCurateleRegister en indicatieGezagMinderjarige + type: object + properties: + datumIngangOnderzoekPersoon: + $ref: '#/components/schemas/AbstractDatum' + datumIngangOnderzoekGemeente: + $ref: '#/components/schemas/AbstractDatum' + datumIngangOnderzoekGezag: + $ref: '#/components/schemas/AbstractDatum' + burgerservicenummer: + type: boolean + geslacht: + type: boolean + leeftijd: + type: boolean + gemeenteVanInschrijving: + type: boolean + datumInschrijvingInGemeente: + type: boolean + indicatieCurateleRegister: + type: boolean + indicatieGezagMinderjarige: + type: boolean + deprecated: true + UitsluitingKiesrecht: + type: object + properties: + uitgeslotenVanKiesrecht: + type: boolean + example: true + einddatum: + $ref: '#/components/schemas/AbstractDatum' + EuropeesKiesrecht: + type: object + description: | + * **aanduiding** - Geeft aan of persoon een oproep moet ontvangen voor verkiezingen voor het Europees parlement. Wordt gevuld met waarden voor 'Europees_Kiesrecht' in 'tabelwaarden.csv'. + properties: + aanduiding: + $ref: '#/components/schemas/Waardetabel' + einddatumUitsluiting: + $ref: '#/components/schemas/AbstractDatum' + NaamPersoonInOnderzoek: + allOf: + - $ref: '#/components/schemas/NaamInOnderzoek' + - type: object + properties: + aanduidingNaamgebruik: + type: boolean + volledigeNaam: + type: boolean + NaamPersoon: + description: | + Gegevens over de naam van de persoon. + * **aanduidingNaamgebruik** - wordt gevuld met waarden voor 'Naamgebruik' in 'tabelwaarden.csv'. + allOf: + - $ref: '#/components/schemas/NaamBasis' + - properties: + aanduidingNaamgebruik: + $ref: '#/components/schemas/Waardetabel' + inOnderzoek: + $ref: '#/components/schemas/NaamPersoonInOnderzoek' + AbstractNationaliteit: + type: object + description: | + * **redenOpname** - De reden op grond waarvan de persoon de nationaliteit gekregen heeft. Wordt gevuld met waarden uit de landelijke tabel 'Reden opnemen/beëindigen nationaliteit'. + required: + - type + properties: + type: + type: string + redenOpname: + $ref: '#/components/schemas/Waardetabel' + discriminator: + propertyName: type + mapping: + Nationaliteit: '#/components/schemas/NationaliteitBekend' + BehandeldAlsNederlander: '#/components/schemas/BehandeldAlsNederlander' + VastgesteldNietNederlander: '#/components/schemas/VastgesteldNietNederlander' + Staatloos: '#/components/schemas/Staatloos' + NationaliteitOnbekend: '#/components/schemas/NationaliteitOnbekend' + NationaliteitBekendInOnderzoek: + description: | + Geeft aan welke gegevens over de nationaliteit in onderzoek zijn. + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + type: + type: boolean + nationaliteit: + type: boolean + redenOpname: + type: boolean + NationaliteitBekend: + description: | + * **nationaliteit** - wordt gevuld met waarden uit de landelijke tabel 'Nationaliteiten'. + allOf: + - $ref: '#/components/schemas/AbstractNationaliteit' + - type: object + properties: + datumIngangGeldigheid: + $ref: '#/components/schemas/AbstractDatum' + nationaliteit: + $ref: '#/components/schemas/Waardetabel' + inOnderzoek: + $ref: '#/components/schemas/NationaliteitBekendInOnderzoek' + BijzonderNederlanderschapInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + type: + type: boolean + redenOpname: + type: boolean + BehandeldAlsNederlander: + allOf: + - $ref: '#/components/schemas/AbstractNationaliteit' + - type: object + properties: + datumIngangGeldigheid: + $ref: '#/components/schemas/AbstractDatum' + inOnderzoek: + $ref: '#/components/schemas/BijzonderNederlanderschapInOnderzoek' + VastgesteldNietNederlander: + allOf: + - $ref: '#/components/schemas/AbstractNationaliteit' + - type: object + properties: + datumIngangGeldigheid: + $ref: '#/components/schemas/AbstractDatum' + inOnderzoek: + $ref: '#/components/schemas/BijzonderNederlanderschapInOnderzoek' + StaatloosInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + type: + type: boolean + redenOpname: + type: boolean + Staatloos: + description: | + * **redenOpname** : De reden op grond waarvan de persoon de nationaliteit gekregen heeft. + allOf: + - $ref: '#/components/schemas/AbstractNationaliteit' + - type: object + properties: + datumIngangGeldigheid: + $ref: '#/components/schemas/AbstractDatum' + inOnderzoek: + $ref: '#/components/schemas/StaatloosInOnderzoek' + NationaliteitOnbekendInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + type: + type: boolean + redenOpname: + type: boolean + NationaliteitOnbekend: + allOf: + - $ref: '#/components/schemas/AbstractNationaliteit' + - type: object + properties: + datumIngangGeldigheid: + $ref: '#/components/schemas/AbstractDatum' + inOnderzoek: + $ref: '#/components/schemas/NationaliteitOnbekendInOnderzoek' + GeboorteInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + datum: + type: boolean + land: + type: boolean + plaats: + type: boolean + Geboorte: + description: | + Gegevens over de geboorte. + * **datum** - datum waarop de persoon is geboren. + * **land** - land waar de persoon is geboren. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. + * **plaats** - gemeente waar de persoon is geboren. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten" voor een gemeente in Nederland of als de persoon is geboren buiten Nederland de omschrijving van een buitenlandse plaatsnaam of aanduiding. + allOf: + - $ref: '#/components/schemas/GeboorteBasis' + - type: object + properties: + land: + $ref: '#/components/schemas/Waardetabel' + plaats: + $ref: '#/components/schemas/Waardetabel' + inOnderzoek: + $ref: '#/components/schemas/GeboorteInOnderzoek' + OverlijdenInOnderzoek: + description: | + Geeft aan welke gegevens over het overlijden van de persoon in onderzoek zijn. + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + datum: + type: boolean + land: + type: boolean + plaats: + type: boolean + Overlijden: + description: | + Gegevens over het overlijden. + * **datum** - datum waarop de persoon is overleden. + * **land** - land waar de persoon is overleden. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. + * **plaats** - gemeente waar de persoon is overleden. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten". + type: object + properties: + datum: + $ref: '#/components/schemas/AbstractDatum' + land: + $ref: '#/components/schemas/Waardetabel' + plaats: + $ref: '#/components/schemas/Waardetabel' + inOnderzoek: + $ref: '#/components/schemas/OverlijdenInOnderzoek' + AbstractVerblijfplaats: + type: object + description: | + Gegevens over het verblijf of de woonlocatie van een persoon. + required: + - type + properties: + type: + type: string + discriminator: + propertyName: type + mapping: + VerblijfplaatsBuitenland: '#/components/schemas/VerblijfplaatsBuitenland' + Adres: '#/components/schemas/Adres' + VerblijfplaatsOnbekend: '#/components/schemas/VerblijfplaatsOnbekend' + Locatie: '#/components/schemas/Locatie' + example: + type: Adres + functieAdres: + code: W + omschrijving: woonadres + adresseerbaarObjectIdentificatie: 226010000038820 + Regel1: + type: string + maxLength: 40 + description: | + Het eerste deel van een buitenlands adres. Vaak is dit een combinatie van de straat en huisnummer. + example: 1600 Pennsylvania Avenue NW + Regel2: + type: string + maxLength: 50 + description: | + Het tweede deel van een buitenlands adres. Vaak is dit een combinatie van woonplaats eventueel in combinatie met de postcode. + example: Washington, DC 20500 + Regel3: + type: string + maxLength: 35 + description: | + Het derde deel van een buitenlands adres is optioneel. Het gaat om een of meer geografische gebieden van het adres in het buitenland. + example: Selangor + VerblijfadresBuitenlandInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + regel1: + type: boolean + regel2: + type: boolean + regel3: + type: boolean + land: + type: boolean + VerblijfadresBuitenland: + type: object + properties: + regel1: + $ref: '#/components/schemas/Regel1' + regel2: + $ref: '#/components/schemas/Regel2' + regel3: + $ref: '#/components/schemas/Regel3' + land: + $ref: '#/components/schemas/Waardetabel' + inOnderzoek: + $ref: '#/components/schemas/VerblijfadresBuitenlandInOnderzoek' + VerblijfplaatsBuitenlandInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + type: + type: boolean + datumVan: + type: boolean + datumIngangGeldigheid: + type: boolean + deprecated: true + VerblijfplaatsBuitenland: + description: | + * **gemeenteVanInschrijving** - wordt gevuld met waarden uit de landelijke tabel 'Gemeenten'. + * **land** - land waar de persoon is overleden. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. + allOf: + - $ref: '#/components/schemas/AbstractVerblijfplaats' + - type: object + properties: + verblijfadres: + $ref: '#/components/schemas/VerblijfadresBuitenland' + datumVan: + $ref: '#/components/schemas/AbstractDatum' + datumIngangGeldigheid: + $ref: '#/components/schemas/AbstractDatum' + deprecated: true + inOnderzoek: + $ref: '#/components/schemas/VerblijfplaatsBuitenlandInOnderzoek' + OfficieleStraatnaam: + description: | + De officiële naam van een openbare ruimte uit de Basisregistratie Gebouwen en Adressen (BAG). + type: string + maxLength: 80 + KorteStraatnaam: + description: | + De officiële naam van een openbare ruimte uit de Basisregistratie Gebouwen en Adressen (BAG), zo nodig verkort tot maximaal 24 tekens, of de straatnaam van een niet-BAG adres. + type: string + maxLength: 24 + Woonplaats: + description: | + Een woonplaats is een gedeelte van het grondgebied van de gemeente met een naam. + title: woonplaats naam + type: string + pattern: ^[a-zA-Z0-9À-ž \(\)\,\.\-\']{1,80}$ + example: Duiven + VerblijfadresBinnenlandInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + aanduidingBijHuisnummer: + type: boolean + huisletter: + type: boolean + huisnummer: + type: boolean + huisnummertoevoeging: + type: boolean + officieleStraatnaam: + type: boolean + postcode: + type: boolean + korteStraatnaam: + type: boolean + woonplaats: + type: boolean + VerblijfadresBinnenland: + type: object + properties: + officieleStraatnaam: + $ref: '#/components/schemas/OfficieleStraatnaam' + korteStraatnaam: + $ref: '#/components/schemas/KorteStraatnaam' + huisnummer: + $ref: '#/components/schemas/Huisnummer' + huisletter: + $ref: '#/components/schemas/Huisletter' + huisnummertoevoeging: + $ref: '#/components/schemas/Huisnummertoevoeging' + aanduidingBijHuisnummer: + $ref: '#/components/schemas/Waardetabel' + postcode: + $ref: '#/components/schemas/Postcode' + woonplaats: + $ref: '#/components/schemas/Woonplaats' + inOnderzoek: + $ref: '#/components/schemas/VerblijfadresBinnenlandInOnderzoek' + AdresInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + type: + type: boolean + datumVan: + type: boolean + datumIngangGeldigheid: + type: boolean + deprecated: true + nummeraanduidingIdentificatie: + type: boolean + adresseerbaarObjectIdentificatie: + type: boolean + functieAdres: + type: boolean + Adres: + description: | + Gegevens over het adres van een persoon. + * **gemeenteVanInschrijving** - wordt gevuld met waarden uit de landelijke tabel 'Gemeenten'. + * **functieAdres** - wordt gevuld met waarden voor 'Functie_Adres' in 'tabelwaarden.csv'. + * **aanduidingBijHuisnummer** - wordt gevuld met waarden voor 'Aanduiding_Bij_Huisnummer' in 'tabelwaarden.csv'. + * **datumVan** : de datum van aangifte of ambtshalve melding van verblijf en adres. + * **datumIngangGeldigheid** : datum waarop de gegevens over de verblijfplaats geldig zijn geworden. + allOf: + - $ref: '#/components/schemas/AbstractVerblijfplaats' + - type: object + properties: + verblijfadres: + $ref: '#/components/schemas/VerblijfadresBinnenland' + functieAdres: + $ref: '#/components/schemas/Waardetabel' + adresseerbaarObjectIdentificatie: + $ref: '#/components/schemas/AdresseerbaarObjectIdentificatie' + nummeraanduidingIdentificatie: + $ref: '#/components/schemas/NummeraanduidingIdentificatie' + datumVan: + $ref: '#/components/schemas/AbstractDatum' + datumIngangGeldigheid: + $ref: '#/components/schemas/AbstractDatum' + deprecated: true + indicatieVastgesteldVerblijftNietOpAdres: + $ref: '#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres' + inOnderzoek: + $ref: '#/components/schemas/AdresInOnderzoek' + VerblijfplaatsOnbekendInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + type: + type: boolean + datumVan: + type: boolean + datumIngangGeldigheid: + type: boolean + deprecated: true + VerblijfplaatsOnbekend: + allOf: + - $ref: '#/components/schemas/AbstractVerblijfplaats' + - type: object + properties: + datumVan: + $ref: '#/components/schemas/AbstractDatum' + datumIngangGeldigheid: + $ref: '#/components/schemas/AbstractDatum' + deprecated: true + inOnderzoek: + $ref: '#/components/schemas/VerblijfplaatsOnbekendInOnderzoek' + Locatiebeschrijving: + type: string + maxLength: 35 + description: | + Omschrijving van de ligging van een verblijfsobject, standplaats of ligplaats. + example: Naast de derde brug + VerblijfadresLocatieInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + locatiebeschrijving: + type: boolean + VerblijfadresLocatie: + type: object + properties: + locatiebeschrijving: + $ref: '#/components/schemas/Locatiebeschrijving' + inOnderzoek: + $ref: '#/components/schemas/VerblijfadresLocatieInOnderzoek' + LocatieInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + type: + type: boolean + datumVan: + type: boolean + functieAdres: + type: boolean + datumIngangGeldigheid: + type: boolean + deprecated: true + Locatie: + description: | + * **gemeenteVanInschrijving** - wordt gevuld met waarden uit de landelijke tabel 'Gemeenten'. + * **functieAdres** - wordt gevuld met waarden voor 'Functie_Adres' in 'tabelwaarden.csv'. + * **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. + allOf: + - $ref: '#/components/schemas/AbstractVerblijfplaats' + - type: object + properties: + datumVan: + $ref: '#/components/schemas/AbstractDatum' + functieAdres: + $ref: '#/components/schemas/Waardetabel' + verblijfadres: + $ref: '#/components/schemas/VerblijfadresLocatie' + datumIngangGeldigheid: + $ref: '#/components/schemas/AbstractDatum' + deprecated: true + indicatieVastgesteldVerblijftNietOpAdres: + $ref: '#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres' + inOnderzoek: + $ref: '#/components/schemas/LocatieInOnderzoek' + VanuitVerblijfplaatsOnbekend: + type: boolean + description: | + Geeft aan dat de persoon is teruggekeerd uit een situatie van onbekende verblijfplaats + IndicatieVestigingVanuitBuitenland: + type: boolean + description: | + Geeft aan dat de persoon zich vanuit het buitenland heeft ingeschreven. + ImmigratieInOnderzoek: + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + datumVestigingInNederland: + type: boolean + landVanwaarIngeschreven: + type: boolean + vanuitVerblijfplaatsOnbekend: + type: boolean + indicatieVestigingVanuitBuitenland: + type: boolean + Immigratie: + type: object + description: | + Gegevens over het het immigratie van een persoon. + * **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland. + properties: + datumVestigingInNederland: + $ref: '#/components/schemas/AbstractDatum' + landVanwaarIngeschreven: + $ref: '#/components/schemas/Waardetabel' + vanuitVerblijfplaatsOnbekend: + $ref: '#/components/schemas/VanuitVerblijfplaatsOnbekend' + indicatieVestigingVanuitBuitenland: + $ref: '#/components/schemas/IndicatieVestigingVanuitBuitenland' + inOnderzoek: + $ref: '#/components/schemas/ImmigratieInOnderzoek' + Aanhef: + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,650}$ + description: | + Kun je gebruiken als aanhef in een brief gericht aan persoon. + example: Hoogwelgeboren heer + Aanschrijfwijze: + type: object + description: | + Samengestelde naam en aanspreekvorm die je kunt gebruiken in de communicatie met de persoon. + properties: + naam: + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,650}$ + example: H.W. baron van den Aedel + aanspreekvorm: + description: | + Deze regel moet als aparte regel boven de samengestelde naam worden geplaatst. Komt alleen voor bij personen met een adellijke titel of predicaat. + type: string + pattern: ^[a-zA-Z ]{1,25}$ + example: De hoogwelgeboren heer + GebruikInLopendeTekst: + type: string + pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,650}$ + description: | + Naam van persoon die je kunt gebruiken als je in lopende tekst (bijvoorbeeld in een brief) aan persoon refereert. + example: baron Van den Aedel + AdresseringInOnderzoek: + description: | + Geeft aan welke gegevens over de adressering in onderzoek zijn. + type: object + properties: + aanhef: + type: boolean + adresregel1: + type: boolean + adresregel2: + type: boolean + adresregel3: + type: boolean + land: + type: boolean + aanschrijfwijze: + type: boolean + gebruikInLopendeTekst: + type: boolean + datumIngangOnderzoekPersoon: + $ref: '#/components/schemas/AbstractDatum' + datumIngangOnderzoekPartner: + $ref: '#/components/schemas/AbstractDatum' + datumIngangOnderzoekVerblijfplaats: + $ref: '#/components/schemas/AbstractDatum' + Adressering: + allOf: + - $ref: '#/components/schemas/AdresseringBasis' + - properties: + aanhef: + $ref: '#/components/schemas/Aanhef' + aanschrijfwijze: + $ref: '#/components/schemas/Aanschrijfwijze' + gebruikInLopendeTekst: + $ref: '#/components/schemas/GebruikInLopendeTekst' + inOnderzoek: + $ref: '#/components/schemas/AdresseringInOnderzoek' + IndicatieCurateleRegister: + type: boolean + description: | + Geeft aan dat de persoon onder curatele is gesteld. + example: true + AbstractGezagsrelatie: + type: object + required: + - type + - minderjarige + properties: + type: + type: string + minderjarige: + $ref: '#/components/schemas/Minderjarige' + discriminator: + propertyName: type + mapping: + TweehoofdigOuderlijkGezag: '#/components/schemas/TweehoofdigOuderlijkGezag' + EenhoofdigOuderlijkGezag: '#/components/schemas/EenhoofdigOuderlijkGezag' + GezamenlijkGezag: '#/components/schemas/GezamenlijkGezag' + Voogdij: '#/components/schemas/Voogdij' + TijdelijkGeenGezag: '#/components/schemas/TijdelijkGeenGezag' + GezagNietTeBepalen: '#/components/schemas/GezagNietTeBepalen' + example: + type: TweehoofdigOuderlijkGezag + ouders: + - burgerservicenummer: '999998870' + - burgerservicenummer: '999998882' + minderjarige: + burgerservicenummer: '999998894' + GezagOuder: + type: object + properties: + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + required: + - burgerservicenummer + TweehoofdigOuderlijkGezag: + allOf: + - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + ouders: + type: array + items: + $ref: '#/components/schemas/GezagOuder' + minItems: 2 + maxItems: 2 + EenhoofdigOuderlijkGezag: + allOf: + - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + ouder: + $ref: '#/components/schemas/GezagOuder' + Meerderjarige: + type: object + properties: + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + GezamenlijkGezag: + allOf: + - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + ouder: + $ref: '#/components/schemas/GezagOuder' + derde: + $ref: '#/components/schemas/Meerderjarige' + Voogdij: + allOf: + - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + derden: + type: array + items: + $ref: '#/components/schemas/Meerderjarige' + minItems: 0 + maxItems: 2 + TijdelijkGeenGezag: + allOf: + - $ref: '#/components/schemas/AbstractGezagsrelatie' + Toelichting: + type: string + pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ + GezagNietTeBepalen: + allOf: + - $ref: '#/components/schemas/AbstractGezagsrelatie' + - type: object + properties: + toelichting: + $ref: '#/components/schemas/Toelichting' + Minderjarige: + type: object + properties: + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + required: + - burgerservicenummer + Gezag: + type: array + items: + $ref: '#/components/schemas/AbstractGezagsrelatie' + minItems: 0 + VerblijfstitelInOnderzoek: + description: | + Geeft aan welke gegevens over de verblijfstitel in onderzoek zijn. + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + aanduiding: + type: boolean + datumEinde: + type: boolean + datumIngang: + type: boolean + Verblijfstitel: + type: object + description: | + Gegevens over de verblijfsrechtelijke status van de persoon. + * **datumEinde**: Datum waarop de geldigheid van de gegevens over de verblijfstitel is beëindigd. + * **datumIngang**: Datum waarop de gegevens over de verblijfstitel geldig zijn geworden. + * **aanduiding** : Verblijfstiteltabel die aangeeft over welke verblijfsrechtelijke status de persoon beschikt. Wordt gevuld met waarden uit de landelijke tabel 'Verblijfstitel'. + properties: + aanduiding: + $ref: '#/components/schemas/Waardetabel' + datumEinde: + $ref: '#/components/schemas/AbstractDatum' + datumIngang: + $ref: '#/components/schemas/AbstractDatum' + inOnderzoek: + $ref: '#/components/schemas/VerblijfstitelInOnderzoek' + KindInOnderzoek: + description: | + Geeft aan of de gegevens over het kind van de persoon in onderzoek zijn. + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + burgerservicenummer: + type: boolean + NaamGerelateerde: + type: object + properties: + voornamen: + $ref: '#/components/schemas/Voornamen' + adellijkeTitelPredicaat: + $ref: '#/components/schemas/AdellijkeTitelPredicaatType' + voorvoegsel: + $ref: '#/components/schemas/Voorvoegsel' + geslachtsnaam: + $ref: '#/components/schemas/Geslachtsnaam' + voorletters: + $ref: '#/components/schemas/Voorletters' + inOnderzoek: + $ref: '#/components/schemas/NaamInOnderzoek' + Kind: + type: object + properties: + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + inOnderzoek: + $ref: '#/components/schemas/KindInOnderzoek' + naam: + $ref: '#/components/schemas/NaamGerelateerde' + geboorte: + $ref: '#/components/schemas/Geboorte' + OuderAanduiding: + type: string + pattern: ^[1|2]$ + example: '1' + OuderInOnderzoek: + description: | + Geeft aan welke gegevens van de de ouder in onderzoek zijn. + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + burgerservicenummer: + type: boolean + datumIngangFamilierechtelijkeBetrekking: + type: boolean + geslacht: + type: boolean + Ouder: + description: | + Gegevens over de ouder van de persoon. + * **datumIngangFamilierechtelijkeBetrekking** - De datum waarop de familierechtelijke betrekking is ontstaan. + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + type: object + properties: + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + geslacht: + $ref: '#/components/schemas/Waardetabel' + ouderAanduiding: + $ref: '#/components/schemas/OuderAanduiding' + datumIngangFamilierechtelijkeBetrekking: + $ref: '#/components/schemas/AbstractDatum' + naam: + $ref: '#/components/schemas/NaamGerelateerde' + inOnderzoek: + $ref: '#/components/schemas/OuderInOnderzoek' + geboorte: + $ref: '#/components/schemas/Geboorte' + PartnerInOnderzoek: + description: | + Geeft aan welke gegevens over het huwelijk of het partnerschap in onderzoek zijn. + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + burgerservicenummer: + type: boolean + geslacht: + type: boolean + soortVerbintenis: + type: boolean + AangaanHuwelijkPartnerschapInOnderzoek: + description: | + Geeft aan welke gegevens over het voltrekken van het huwelijk of aangaan van het partnerschap in onderzoek zijn. + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + datum: + type: boolean + land: + type: boolean + plaats: + type: boolean + AangaanHuwelijkPartnerschap: + type: object + description: | + Gegevens over de voltrekking van het huwelijk of het aangaan van het geregistreerd partnerschap. + * **datum** - De datum waarop het huwelijk is voltrokken of het partnerschap is aangegaan. + * **land** - Het land waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. + * **plaats** - De gemeente waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten" voor een gemeente in Nederland of de omschrijving van een buitenlandse plaats. + properties: + datum: + $ref: '#/components/schemas/AbstractDatum' + land: + $ref: '#/components/schemas/Waardetabel' + plaats: + $ref: '#/components/schemas/Waardetabel' + inOnderzoek: + $ref: '#/components/schemas/AangaanHuwelijkPartnerschapInOnderzoek' + OntbindingHuwelijkPartnerschapInOnderzoek: + description: | + Geeft aan welke gegevens over het onbinden van het huwelijk of aangaan van het partnerschap in onderzoek zijn. + allOf: + - $ref: '#/components/schemas/InOnderzoek' + - type: object + properties: + datum: + type: boolean + OntbindingHuwelijkPartnerschap: + type: object + description: | + Gegevens over de ontbinding van het huwelijk of het geregistreerd partnerschap. + * **datum** : De datum waarop het huwelijk of het partnerschap is ontbonden. + properties: + datum: + $ref: '#/components/schemas/AbstractDatum' + inOnderzoek: + $ref: '#/components/schemas/OntbindingHuwelijkPartnerschapInOnderzoek' + Partner: + type: object + properties: + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + geslacht: + $ref: '#/components/schemas/Waardetabel' + soortVerbintenis: + $ref: '#/components/schemas/Waardetabel' + naam: + $ref: '#/components/schemas/NaamGerelateerde' + geboorte: + $ref: '#/components/schemas/Geboorte' + inOnderzoek: + $ref: '#/components/schemas/PartnerInOnderzoek' + aangaanHuwelijkPartnerschap: + $ref: '#/components/schemas/AangaanHuwelijkPartnerschap' + ontbindingHuwelijkPartnerschap: + $ref: '#/components/schemas/OntbindingHuwelijkPartnerschap' + Persoon: + type: object + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + properties: + aNummer: + $ref: '#/components/schemas/ANummer' + burgerservicenummer: + $ref: '#/components/schemas/Burgerservicenummer' + datumEersteInschrijvingGBA: + $ref: '#/components/schemas/AbstractDatum' + geheimhoudingPersoonsgegevens: + $ref: '#/components/schemas/GeheimhoudingPersoonsgegevens' + geslacht: + $ref: '#/components/schemas/Waardetabel' + inOnderzoek: + $ref: '#/components/schemas/PersoonInOnderzoek' + uitsluitingKiesrecht: + $ref: '#/components/schemas/UitsluitingKiesrecht' + europeesKiesrecht: + $ref: '#/components/schemas/EuropeesKiesrecht' + leeftijd: + $ref: '#/components/schemas/Leeftijd' + naam: + $ref: '#/components/schemas/NaamPersoon' + nationaliteiten: + type: array + items: + $ref: '#/components/schemas/AbstractNationaliteit' + geboorte: + $ref: '#/components/schemas/Geboorte' + opschortingBijhouding: + $ref: '#/components/schemas/OpschortingBijhouding' + overlijden: + $ref: '#/components/schemas/Overlijden' + verblijfplaats: + $ref: '#/components/schemas/AbstractVerblijfplaats' + immigratie: + $ref: '#/components/schemas/Immigratie' + gemeenteVanInschrijving: + $ref: '#/components/schemas/Waardetabel' + datumInschrijvingInGemeente: + $ref: '#/components/schemas/AbstractDatum' + adressering: + $ref: '#/components/schemas/Adressering' + indicatieCurateleRegister: + $ref: '#/components/schemas/IndicatieCurateleRegister' + indicatieGezagMinderjarige: + $ref: '#/components/schemas/Waardetabel' + deprecated: true + gezag: + $ref: '#/components/schemas/Gezag' + verblijfstitel: + $ref: '#/components/schemas/Verblijfstitel' + kinderen: + type: array + items: + $ref: '#/components/schemas/Kind' + ouders: + type: array + items: + $ref: '#/components/schemas/Ouder' + partners: + type: array + items: + $ref: '#/components/schemas/Partner' + rni: + type: array + items: + $ref: '#/components/schemas/RniDeelnemer' + verificatie: + $ref: '#/components/schemas/Verificatie' + RaadpleegMetBurgerservicenummerResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: '#/components/schemas/Persoon' + ZoekMetPostcodeEnHuisnummerResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: '#/components/schemas/PersoonBeperkt' + ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: '#/components/schemas/PersoonBeperkt' + ZoekMetNummeraanduidingIdentificatieResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: '#/components/schemas/PersoonBeperkt' + GezagPersoonBeperkt: + allOf: + - $ref: '#/components/schemas/PersoonBeperkt' + - type: object + properties: + gezag: + $ref: '#/components/schemas/Gezag' + ZoekMetAdresseerbaarObjectIdentificatieResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: '#/components/schemas/GezagPersoonBeperkt' + InvalidParam: + type: object + description: Details over fouten in opgegeven parameters + properties: + type: + type: string + format: uri + example: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1 + name: + description: Naam van de parameter + type: string + pattern: ^[a-zA-Z0-9\._]{1,30}$ + example: huisnummer + code: + description: Systeemcode die het type fout aangeeft + type: string + pattern: ^[a-zA-Z0-9]{1,25}$ + example: integer + reason: + description: Beschrijving van de fout op de parameterwaarde + type: string + pattern: ^[a-zA-Z0-9\., ]{1,80}$ + example: Waarde is geen geldig getal. + BadRequestFoutbericht: + allOf: + - $ref: '#/components/schemas/Foutbericht' + - type: object + properties: + invalidParams: + description: | + Foutmelding per fout in een parameter. Alle gevonden fouten worden één keer teruggemeld. + type: array + items: + $ref: '#/components/schemas/InvalidParam' + responses: + '400': + description: Bad Request + content: + application/problem+json: + schema: + $ref: '#/components/schemas/BadRequestFoutbericht' + example: + type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1 + title: Ten minste één parameter moet worden opgegeven. + status: 400 + detail: The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modification. + instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde + code: paramsRequired + invalidParams: + - type: https://www.vng.nl/realisatie/api/validaties/integer + name: huisnummer + code: integer + reason: Waarde is geen geldig getal. + '401': + description: Unauthorized + content: + application/problem+json: + schema: + $ref: '#/components/schemas/Foutbericht' + example: + type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2 + title: Niet correct geauthenticeerd. + status: 401 + detail: The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.47) containing a challenge applicable to the requested resource. + instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde + code: authentication + '403': + description: Forbidden + content: + application/problem+json: + schema: + $ref: '#/components/schemas/Foutbericht' + example: + type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4 + title: U bent niet geautoriseerd voor deze operatie. + status: 403 + detail: The server understood the request, but is refusing to fulfill it. + instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde + code: autorisation + '406': + description: Not Acceptable + content: + application/problem+json: + schema: + $ref: '#/components/schemas/Foutbericht' + example: + type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.7 + title: Gevraagde contenttype wordt niet ondersteund. + status: 406 + detail: The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to thr accept headers sent in the request + instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde + code: notAcceptable + '415': + description: Unsupported Media Type + content: + application/problem+json: + schema: + $ref: '#/components/schemas/Foutbericht' + example: + type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.16 + title: Unsupported Media Type + status: 415 + detail: The server is refusing the request because the entity of the request is in a format not supported by the requested resource for the requested method. + instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde + code: unsupported + '429': + description: Too Many Requests + content: + application/problem+json: + schema: + $ref: '#/components/schemas/Foutbericht' + example: + type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html + title: Too many request + status: 429 + detail: The user has sent too many requests in a given amount of time (rate limiting). + instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde + code: tooManyRequests + '500': + description: Internal Server Error + content: + application/problem+json: + schema: + $ref: '#/components/schemas/Foutbericht' + example: + type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1 + title: Interne server fout. + status: 500 + detail: The server encountered an unexpected condition which prevented it from fulfilling the request. + instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde + code: serverError + '503': + description: Service Unavailable + content: + application/problem+json: + schema: + $ref: '#/components/schemas/Foutbericht' + example: + type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.4 + title: Bronservice BRP is tijdelijk niet beschikbaar. + status: 503 + detail: The service is currently unable to handle the request due to a temporary overloading or maintenance of the server. + instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde + code: notAvailable From 95c96ebf625bffc62af23a39d336624f6ea91283 Mon Sep 17 00:00:00 2001 From: Melvin Lee Date: Tue, 26 Nov 2024 17:40:45 +0100 Subject: [PATCH 15/22] chore(oas): refactoring tbv gebruik brp-shared type definities --- specificatie/adressering.yaml | 8 +- specificatie/datum.yaml | 113 - specificatie/gba-genereervariant/openapi.json | 1735 ---------- specificatie/gba-genereervariant/openapi.yaml | 1192 ------- specificatie/gba-inonderzoek.yaml | 19 - specificatie/gba-openapi.yaml | 22 - specificatie/geboorte.yaml | 23 +- specificatie/genereervariant/openapi.json | 2965 ----------------- specificatie/genereervariant/openapi.yaml | 1997 ----------- specificatie/immigratie.yaml | 12 +- specificatie/kiesrecht.yaml | 21 +- specificatie/kind.yaml | 13 +- specificatie/naam.yaml | 76 +- specificatie/nationaliteit.yaml | 24 +- specificatie/openapi.yaml | 4 +- specificatie/opschortingbijhouding.yaml | 11 +- specificatie/ouder.yaml | 24 +- specificatie/overlijden.yaml | 13 +- specificatie/partner.yaml | 44 +- specificatie/personen-query-response-v1.yaml | 102 + ...k-personen.yaml => personen-query-v1.yaml} | 100 +- specificatie/persoon.yaml | 126 +- specificatie/verblijfplaats.yaml | 65 +- specificatie/verblijfstitel.yaml | 20 +- specificatie/zoek-gba-personen.yaml | 147 - 25 files changed, 157 insertions(+), 8719 deletions(-) delete mode 100644 specificatie/datum.yaml delete mode 100644 specificatie/gba-genereervariant/openapi.json delete mode 100644 specificatie/gba-genereervariant/openapi.yaml delete mode 100644 specificatie/gba-inonderzoek.yaml delete mode 100644 specificatie/gba-openapi.yaml delete mode 100644 specificatie/genereervariant/openapi.json delete mode 100644 specificatie/genereervariant/openapi.yaml create mode 100644 specificatie/personen-query-response-v1.yaml rename specificatie/{zoek-personen.yaml => personen-query-v1.yaml} (62%) delete mode 100644 specificatie/zoek-gba-personen.yaml diff --git a/specificatie/adressering.yaml b/specificatie/adressering.yaml index e913145af..205eb6b49 100644 --- a/specificatie/adressering.yaml +++ b/specificatie/adressering.yaml @@ -105,11 +105,11 @@ components: gebruikInLopendeTekst: type: boolean datumIngangOnderzoekPersoon: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' datumIngangOnderzoekPartner: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' datumIngangOnderzoekVerblijfplaats: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' AdresseringInOnderzoekBeperkt: description: | Geeft aan welke gegevens over de adressering in onderzoek zijn. @@ -124,4 +124,4 @@ components: land: type: boolean datumIngangOnderzoekVerblijfplaats: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' diff --git a/specificatie/datum.yaml b/specificatie/datum.yaml deleted file mode 100644 index 58ec0cddf..000000000 --- a/specificatie/datum.yaml +++ /dev/null @@ -1,113 +0,0 @@ -openapi: 3.0.3 -info: - title: Datum definities - description: | - Definities voor de volgende datum types: - - datum conform LO GBA - - onbekend datum - - 'volledig' datum conform ISO-8601 - - datum waarvan de dag onbekend is - - datum waarvan de maand en dag onbekend is - version: 2.0.0 - contact: {} -paths: {} -components: - schemas: - AbstractDatum: - type: object - required: - - type - - langFormaat - properties: - type: - type: string - langFormaat: - type: string - pattern: ^[a-z0-9 ]{1,17}$ - discriminator: - propertyName: type - mapping: - Datum: '#/components/schemas/VolledigeDatum' - DatumOnbekend: '#/components/schemas/DatumOnbekend' - JaarDatum: '#/components/schemas/JaarDatum' - JaarMaandDatum: '#/components/schemas/JaarMaandDatum' - GbaDatum: - type: string - pattern: ^[0-9]{8}$ - example: "20180700" - VolledigeDatum: - description: Datum conform iso8601 - allOf: - - $ref: '#/components/schemas/AbstractDatum' - - type: object - properties: - datum: - type: string - format: date - required: - - datum - example: - value: - type: Datum - datum: "2018-07-01" - langFormaat: "1 juli 2018" - DatumOnbekend: - description: representatie voor een volledig onbekend datum - allOf: - - $ref: '#/components/schemas/AbstractDatum' - - type: object - properties: - onbekend: - type: boolean - default: true - required: - - onbekend - example: - value: - type: DatumOnbekend - onbekend: true - langFormaat: "onbekend" - JaarDatum: - description: representatie voor een datum waarvan maand en dag onbekend zijn - allOf: - - $ref: '#/components/schemas/AbstractDatum' - - type: object - properties: - jaar: - $ref: '#/components/schemas/Jaar' - required: - - jaar - example: - value: - type: JaarDatum - jaar: 2018 - langFormaat: 2018 - JaarMaandDatum: - description: representatie voor een datum waarvan de dag onbekend is - allOf: - - $ref: '#/components/schemas/AbstractDatum' - - type: object - properties: - jaar: - $ref: '#/components/schemas/Jaar' - maand: - $ref: '#/components/schemas/Maand' - required: - - jaar - - maand - example: - value: - type: JaarMaandDatum - jaar: 2018 - maand: 7 - langFormaat: "juli 2018" - Jaar: - type: integer - format: int32 - minimum: 1 - maximum: 9999 - Maand: - type: integer - format: int32 - minimum: 1 - maximum: 12 diff --git a/specificatie/gba-genereervariant/openapi.json b/specificatie/gba-genereervariant/openapi.json deleted file mode 100644 index 3915e1b34..000000000 --- a/specificatie/gba-genereervariant/openapi.json +++ /dev/null @@ -1,1735 +0,0 @@ -{ - "openapi": "3.1.0", - "info": { - "title": "BRP API Personen", - "description": "API voor het bevragen van personen uit de basisregistratie personen (BRP), inclusief de registratie niet-ingezeten (RNI). Met deze API kun je personen zoeken en actuele gegevens over personen, kinderen, partners en ouders raadplegen.\n\nGegevens die er niet zijn of niet actueel zijn krijg je niet terug. Had een persoon bijvoorbeeld een verblijfstitel die nu niet meer geldig is, dan wordt die verblijfstitel niet opgenomen. In partners wordt alleen de actuele of de laatst ontbonden partner geleverd.\n", - "version": "2.3.0", - "contact": { - "url": "https://github.com/VNG-Realisatie/Haal-Centraal-BRP-bevragen" - }, - "license": { - "name": "European Union Public License, version 1.2 (EUPL-1.2)", - "url": "https://eupl.eu/1.2/nl/" - } - }, - "servers": [ - { - "description": "Proef omgeving\n", - "url": "https://proefomgeving-gba.haalcentraal.nl/haalcentraal/api/brp" - } - ], - "tags": [ - { - "name": "Personen" - } - ], - "paths": { - "/personen": { - "post": { - "operationId": "GetPersonen", - "summary": "Zoek personen", - "description": "Zoek personen met één van de onderstaande verplichte combinaties van parameters en vul ze evt. aan met optionele parameters.\n\n1. Raadpleeg met burgerservicenummer\n2. Zoek met geslachtsnaam en geboortedatum\n3. Zoek met geslachtsnaam, voornamen en gemeente van inschrijving\n4. Zoek met postcode en huisnummer\n5. Zoek met straat, huisnummer en gemeente van inschrijving\n6. Zoek met nummeraanduiding identificatie\n\nDefault krijg je personen terug die nog in leven zijn, tenzij je de inclusiefoverledenpersonen=true opgeeft.\n\nGebruik de fields parameter om alleen die gegevens op te vragen die je nodig hebt en waarvoor je geautoriseerd bent.\n", - "requestBody": { - "content": { - "application/json; charset=utf-8": { - "schema": { - "$ref": "#/components/schemas/PersonenQuery" - } - } - } - }, - "responses": { - "200": { - "description": "Zoekactie geslaagd\n", - "headers": { - "warning": { - "$ref": "#/components/headers/warning" - }, - "X-Rate-Limit-Limit": { - "$ref": "#/components/headers/X_Rate_Limit_Limit" - }, - "X-Rate-Limit-Remaining": { - "$ref": "#/components/headers/X_Rate_Limit_Remaining" - }, - "X-Rate-Limit-Reset": { - "$ref": "#/components/headers/X_Rate_Limit_Reset" - } - }, - "content": { - "application/json; charset=utf-8": { - "schema": { - "$ref": "#/components/schemas/PersonenQueryResponse" - } - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "406": { - "$ref": "#/components/responses/406" - }, - "415": { - "$ref": "#/components/responses/415" - }, - "429": { - "$ref": "#/components/responses/429" - }, - "500": { - "$ref": "#/components/responses/500" - }, - "503": { - "$ref": "#/components/responses/503" - }, - "default": { - "$ref": "#/components/responses/default" - } - }, - "tags": [ - "Personen" - ] - } - } - }, - "components": { - "schemas": { - "PersonenQuery": { - "type": "object", - "required": [ - "type", - "fields" - ], - "discriminator": { - "propertyName": "type", - "mapping": { - "ZoekMetGeslachtsnaamEnGeboortedatum": "#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatum", - "ZoekMetNaamEnGemeenteVanInschrijving": "#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijving", - "RaadpleegMetBurgerservicenummer": "#/components/schemas/RaadpleegMetBurgerservicenummer", - "ZoekMetPostcodeEnHuisnummer": "#/components/schemas/ZoekMetPostcodeEnHuisnummer", - "ZoekMetStraatHuisnummerEnGemeenteVanInschrijving": "#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijving", - "ZoekMetNummeraanduidingIdentificatie": "#/components/schemas/ZoekMetNummeraanduidingIdentificatie", - "ZoekMetAdresseerbaarObjectIdentificatie": "#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatie" - } - }, - "properties": { - "type": { - "type": "string" - }, - "fields": { - "description": "Hiermee kun je de velden opgeven die je wenst te ontvangen.\n\nVelden die automatisch worden geleverd (inOnderzoek, geheimhoudingPersoonsgegevens, opschortingBijhouding, rni en verificatie) mag je niet opgeven in fields.\nOpgave van een pad dat verwijst naar een niet-bestaand veld of naar een automatisch geleverd veld leidt tot een 400 Bad Request.\n\nMeer details over hoe fields werkt lees je in het [feature overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht#filteren-van-de-velden-van-de-gevonden-personen).\nStel je fields eenvoudig samen met de [fields tool](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/fields){:target=\"_blank\" rel=\"noopener\"}.\n", - "type": "array", - "maxItems": 130, - "minItems": 1, - "items": { - "$ref": "#/components/schemas/Field" - } - }, - "gemeenteVanInschrijving": { - "$ref": "#/components/schemas/GemeenteVanInschrijving" - } - } - }, - "InclusiefOverledenPersonen": { - "description": "Als je ook overleden personen in het antwoord wilt, geef dan de parameter inclusiefOverledenPersonen op met waarde True.\n", - "type": "boolean", - "example": true - }, - "GeslachtsnaamFilter": { - "description": "De (geslachts)naam waarvan de eventueel aanwezige voorvoegsels zijn afgesplitst. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.**\n", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,200}$|^[a-zA-Z0-9À-ž \\.\\-\\']{3,199}\\*{1}$", - "example": "Vries" - }, - "GeslachtFilter": { - "description": "Geeft aan dat de persoon een man of een vrouw is, of dat het geslacht (nog) onbekend is.\n", - "type": "string", - "pattern": "^([Mm]|[Vv]|[Oo])$", - "example": "V" - }, - "VoorvoegselFilter": { - "description": "Deel van de geslachtsnaam dat vooraf gaat aan de rest van de geslachtsnaam. **Zoeken met tekstvelden is case-insensitive.**\n", - "type": "string", - "pattern": "^[a-zA-Z \\']{1,10}$", - "example": "de" - }, - "VoornamenOptioneelFilter": { - "description": "De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan.** **Zoeken met tekstvelden is case-insensitive.**\n", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,199}\\*{0,1}$", - "example": "Dirk" - }, - "ZoekMetGeslachtsnaamEnGeboortedatum": { - "required": [ - "geslachtsnaam", - "geboortedatum" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "geboortedatum": { - "description": "Je kunt alleen zoeken met een volledige geboortedatum.\n", - "type": "string", - "format": "date", - "example": "1964-09-24" - }, - "geslachtsnaam": { - "$ref": "#/components/schemas/GeslachtsnaamFilter" - }, - "geslacht": { - "$ref": "#/components/schemas/GeslachtFilter" - }, - "voorvoegsel": { - "$ref": "#/components/schemas/VoorvoegselFilter" - }, - "voornamen": { - "$ref": "#/components/schemas/VoornamenOptioneelFilter" - } - } - } - ] - }, - "VoornamenVerplichtFilter": { - "description": "De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.**\n", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,200}$|^[a-zA-Z0-9À-ž \\.\\-\\']{3,199}\\*{1}$", - "example": "Dirk" - }, - "ZoekMetNaamEnGemeenteVanInschrijving": { - "required": [ - "geslachtsnaam", - "gemeenteVanInschrijving", - "voornamen" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "geslacht": { - "$ref": "#/components/schemas/GeslachtFilter" - }, - "geslachtsnaam": { - "$ref": "#/components/schemas/GeslachtsnaamFilter" - }, - "voorvoegsel": { - "$ref": "#/components/schemas/VoorvoegselFilter" - }, - "voornamen": { - "$ref": "#/components/schemas/VoornamenVerplichtFilter" - } - } - } - ] - }, - "Burgerservicenummer": { - "type": "string", - "pattern": "^[0-9]{9}$", - "example": "555555021" - }, - "RaadpleegMetBurgerservicenummer": { - "required": [ - "burgerservicenummer" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "burgerservicenummer": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "minItems": 1, - "maxItems": 20 - } - } - } - ] - }, - "Huisletter": { - "description": "Een toevoeging aan een huisnummer in de vorm van een letter die door de gemeente aan een adresseerbaar object is gegeven.\n", - "type": "string", - "pattern": "^[a-zA-Z]{1}$", - "example": "a" - }, - "Huisnummer": { - "description": "Een nummer dat door de gemeente aan een adresseerbaar object is gegeven.\n", - "type": "integer", - "minimum": 1, - "maximum": 99999, - "example": 14 - }, - "Huisnummertoevoeging": { - "description": "Een toevoeging aan een huisnummer of een combinatie van huisnummer en huisletter die door de gemeente aan een adresseerbaar object is gegeven.\n", - "type": "string", - "pattern": "^[a-zA-Z0-9 \\-]{1,4}$", - "example": "bis" - }, - "Postcode": { - "description": "De door PostNL vastgestelde code die bij een bepaalde combinatie van een straatnaam en een huisnummer hoort.\n", - "type": "string", - "pattern": "^[1-9]{1}[0-9]{3}[ ]?[A-Za-z]{2}$", - "example": "2341SX" - }, - "ZoekMetPostcodeEnHuisnummer": { - "required": [ - "postcode", - "huisnummer" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "huisletter": { - "$ref": "#/components/schemas/Huisletter" - }, - "huisnummer": { - "$ref": "#/components/schemas/Huisnummer" - }, - "huisnummertoevoeging": { - "$ref": "#/components/schemas/Huisnummertoevoeging" - }, - "postcode": { - "$ref": "#/components/schemas/Postcode" - }, - "geboortedatum": { - "description": "Je kunt alleen zoeken met een volledige geboortedatum.\n", - "type": "string", - "format": "date", - "example": "1964-09-24" - } - } - } - ] - }, - "StraatFilter": { - "description": "Een naam die door de gemeente aan een openbare ruimte is gegeven. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 7 letters.** **Zoeken met tekstvelden is case-insensitive.** \n", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\-\\'\\.]{1,80}$|^[a-zA-Z0-9À-ž \\-\\'\\.]{7,79}\\*{1}$|^\\*{1}[a-zA-Z0-9À-ž \\-\\'\\.]{7,79}$", - "example": "Tulpstraat" - }, - "ZoekMetStraatHuisnummerEnGemeenteVanInschrijving": { - "required": [ - "straat", - "huisnummer", - "gemeenteVanInschrijving" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "huisletter": { - "$ref": "#/components/schemas/Huisletter" - }, - "huisnummer": { - "$ref": "#/components/schemas/Huisnummer" - }, - "huisnummertoevoeging": { - "$ref": "#/components/schemas/Huisnummertoevoeging" - }, - "straat": { - "$ref": "#/components/schemas/StraatFilter" - } - } - } - ] - }, - "NummeraanduidingIdentificatie": { - "description": "Unieke identificatie van een nummeraanduiding (en het bijbehorende adres) in de BAG.\n", - "type": "string", - "pattern": "^[0-9]{16}$", - "example": "0518200000366054" - }, - "ZoekMetNummeraanduidingIdentificatie": { - "required": [ - "nummeraanduidingIdentificatie" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "nummeraanduidingIdentificatie": { - "$ref": "#/components/schemas/NummeraanduidingIdentificatie" - } - } - } - ] - }, - "AdresseerbaarObjectIdentificatie": { - "type": "string", - "pattern": "^[0-9]{16}$", - "description": "De verblijfplaats van de persoon kan een ligplaats, een standplaats of een verblijfsobject zijn.\n", - "example": "0226010000038820" - }, - "ZoekMetAdresseerbaarObjectIdentificatie": { - "required": [ - "adresseerbaarObjectIdentificatie" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "adresseerbaarObjectIdentificatie": { - "$ref": "#/components/schemas/AdresseerbaarObjectIdentificatie" - } - } - } - ] - }, - "Field": { - "description": "Het pad naar een gewenst veld in punt-gescheiden formaat. Bijvoorbeeld \"burgerservicenummer\", \"geboorte.datum\", \"partners.naam.voornamen\".\n", - "type": "string", - "pattern": "^[a-zA-Z0-9\\._]{1,200}$" - }, - "GemeenteVanInschrijving": { - "description": "Een code die aangeeft in welke gemeente de persoon woont, of de laatste gemeente waar de persoon heeft gewoond, of de gemeente waar de persoon voor het eerst is ingeschreven.\n", - "type": "string", - "pattern": "^[0-9]{4}$", - "example": "0518" - }, - "Foutbericht": { - "type": "object", - "description": "Terugmelding bij een fout. JSON representatie in lijn met [RFC7807](https://tools.ietf.org/html/rfc7807).", - "properties": { - "type": { - "type": "string", - "format": "uri", - "description": "Link naar meer informatie over deze fout" - }, - "title": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-]{1,80}$", - "description": "Beschrijving van de fout" - }, - "status": { - "type": "integer", - "minimum": 100, - "maximum": 600, - "description": "Http status code" - }, - "detail": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\(\\)\\,]{1,200}$", - "description": "Details over de fout" - }, - "instance": { - "type": "string", - "format": "uri", - "description": "Uri van de aanroep die de fout heeft veroorzaakt" - }, - "code": { - "type": "string", - "pattern": "^[a-zA-Z0-9]{1,25}$", - "description": "Systeemcode die het type fout aangeeft", - "minLength": 1 - } - } - }, - "PersonenQueryResponse": { - "type": "object", - "required": [ - "type" - ], - "discriminator": { - "propertyName": "type", - "mapping": { - "ZoekMetGeslachtsnaamEnGeboortedatum": "#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatumResponse", - "ZoekMetNaamEnGemeenteVanInschrijving": "#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijvingResponse", - "RaadpleegMetBurgerservicenummer": "#/components/schemas/RaadpleegMetBurgerservicenummerResponse", - "ZoekMetPostcodeEnHuisnummer": "#/components/schemas/ZoekMetPostcodeEnHuisnummerResponse", - "ZoekMetStraatHuisnummerEnGemeenteVanInschrijving": "#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse", - "ZoekMetNummeraanduidingIdentificatie": "#/components/schemas/ZoekMetNummeraanduidingIdentificatieResponse", - "ZoekMetAdresseerbaarObjectIdentificatie": "#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatieResponse" - } - }, - "properties": { - "type": { - "type": "string" - } - } - }, - "GbaDatum": { - "type": "string", - "pattern": "^[0-9]{8}$", - "example": "20180700" - }, - "GbaGeboorteBeperkt": { - "type": "object", - "properties": { - "datum": { - "$ref": "#/components/schemas/GbaDatum" - } - } - }, - "GbaGeheimhoudingPersoonsgegevens": { - "type": "integer" - }, - "Waardetabel": { - "type": "object", - "properties": { - "code": { - "type": "string", - "pattern": "^[a-zA-Z0-9 \\.]+$", - "example": "6030" - }, - "omschrijving": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\'\\,\\(\\)\\.\\-]{1,200}$", - "example": "Nederland" - } - } - }, - "GbaInOnderzoek": { - "type": "object", - "required": [ - "aanduidingGegevensInOnderzoek", - "datumIngangOnderzoek" - ], - "properties": { - "aanduidingGegevensInOnderzoek": { - "type": "string", - "pattern": "^[0-9]{6}$" - }, - "datumIngangOnderzoek": { - "$ref": "#/components/schemas/GbaDatum" - } - } - }, - "Voornamen": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,200}$", - "maxLength": 200, - "description": "De verzameling namen voor de geslachtsnaam, gescheiden door spaties.\n" - }, - "AdellijkeTitelPredicaatSoort": { - "type": "string", - "enum": [ - "titel", - "predicaat" - ] - }, - "AdellijkeTitelPredicaatType": { - "description": "Wordt gevuld met waarden uit de landelijke tabel 'Adellijke titel/predicaat'. De property soort geeft aan of het een 'predicaat' of een 'titel' is.\n", - "allOf": [ - { - "$ref": "#/components/schemas/Waardetabel" - }, - { - "properties": { - "soort": { - "$ref": "#/components/schemas/AdellijkeTitelPredicaatSoort" - } - }, - "example": { - "value": { - "code": "JV", - "omschrijving": "jonkvrouw", - "soort": "predicaat" - } - } - } - ] - }, - "Voorvoegsel": { - "type": "string", - "pattern": "^[a-zA-Z \\']{1,10}$", - "maxLength": 10, - "example": "de" - }, - "Geslachtsnaam": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,200}$", - "description": "De achternaam van een persoon.\n", - "example": "Vries" - }, - "GbaNaamBasis": { - "type": "object", - "properties": { - "voornamen": { - "$ref": "#/components/schemas/Voornamen" - }, - "adellijkeTitelPredicaat": { - "$ref": "#/components/schemas/AdellijkeTitelPredicaatType" - }, - "voorvoegsel": { - "$ref": "#/components/schemas/Voorvoegsel" - }, - "geslachtsnaam": { - "$ref": "#/components/schemas/Geslachtsnaam" - } - } - }, - "OpschortingBijhoudingBasis": { - "type": "object", - "description": "* **reden** - wordt gevuld met waarden voor 'Reden_Opschorting_Bijhouding' in 'tabelwaarden.csv'.\n", - "properties": { - "reden": { - "$ref": "#/components/schemas/Waardetabel" - } - } - }, - "GbaOpschortingBijhouding": { - "allOf": [ - { - "$ref": "#/components/schemas/OpschortingBijhoudingBasis" - }, - { - "type": "object", - "description": "* **datum**: de datum waarop de bijhouding van de persoonsgegevens is gestaakt.\n", - "properties": { - "datum": { - "$ref": "#/components/schemas/GbaDatum" - } - } - } - ] - }, - "Straat": { - "type": "string", - "maxLength": 24, - "example": "Tulpstraat" - }, - "Woonplaats": { - "description": "Een woonplaats is een gedeelte van het grondgebied van de gemeente met een naam.\n", - "title": "woonplaats naam", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\(\\)\\,\\.\\-\\']{1,80}$", - "example": "Duiven" - }, - "Locatiebeschrijving": { - "type": "string", - "maxLength": 35, - "description": "Omschrijving van de ligging van een verblijfsobject, standplaats of ligplaats.\n", - "example": "Naast de derde brug" - }, - "Regel1": { - "type": "string", - "maxLength": 40, - "description": "Het eerste deel van een buitenlands adres. Vaak is dit een combinatie van de straat en huisnummer.\n", - "example": "1600 Pennsylvania Avenue NW" - }, - "Regel2": { - "type": "string", - "maxLength": 50, - "description": "Het tweede deel van een buitenlands adres. Vaak is dit een combinatie van woonplaats eventueel in combinatie met de postcode.\n", - "example": "Washington, DC 20500" - }, - "Regel3": { - "type": "string", - "maxLength": 35, - "description": "Het derde deel van een buitenlands adres is optioneel. Het gaat om een of meer geografische gebieden van het adres in het buitenland.\n", - "example": "Selangor" - }, - "GbaVerblijfplaatsBeperkt": { - "type": "object", - "properties": { - "straat": { - "$ref": "#/components/schemas/Straat" - }, - "huisnummer": { - "$ref": "#/components/schemas/Huisnummer" - }, - "huisletter": { - "$ref": "#/components/schemas/Huisletter" - }, - "huisnummertoevoeging": { - "$ref": "#/components/schemas/Huisnummertoevoeging" - }, - "aanduidingBijHuisnummer": { - "$ref": "#/components/schemas/Waardetabel" - }, - "postcode": { - "$ref": "#/components/schemas/Postcode" - }, - "woonplaats": { - "$ref": "#/components/schemas/Woonplaats" - }, - "locatiebeschrijving": { - "$ref": "#/components/schemas/Locatiebeschrijving" - }, - "land": { - "$ref": "#/components/schemas/Waardetabel" - }, - "regel1": { - "$ref": "#/components/schemas/Regel1" - }, - "regel2": { - "$ref": "#/components/schemas/Regel2" - }, - "regel3": { - "$ref": "#/components/schemas/Regel3" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - } - } - }, - "OmschrijvingVerdrag": { - "type": "string", - "description": "Omschrijving van het verdrag op basis waarvan een zusterorganisatie in het buitenland de gegevens bij de RNI-deelnemer heeft aangeleverd.\n", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,50}$" - }, - "Categorie": { - "type": "string", - "description": "Naam van categorie waarop de RNI-deelnemer gegevens heeft aangeleverd", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\'\\/]{1,40}$", - "example": "Verblijfplaats" - }, - "RniDeelnemer": { - "type": "object", - "description": "Gegevens over de RNI-deelnemer die de gegevens in de betrokken categorie heeft aangeleverd.", - "properties": { - "deelnemer": { - "$ref": "#/components/schemas/Waardetabel" - }, - "omschrijvingVerdrag": { - "$ref": "#/components/schemas/OmschrijvingVerdrag" - }, - "categorie": { - "$ref": "#/components/schemas/Categorie" - } - } - }, - "OmschrijvingVerificatie": { - "type": "string", - "description": "Omschrijving van de verificatie van de rni-gegevens\n", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,50}$" - }, - "GbaVerificatie": { - "type": "object", - "properties": { - "datum": { - "$ref": "#/components/schemas/GbaDatum" - }, - "omschrijving": { - "$ref": "#/components/schemas/OmschrijvingVerificatie" - } - } - }, - "GbaPersoonBeperkt": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "geboorte": { - "$ref": "#/components/schemas/GbaGeboorteBeperkt" - }, - "geheimhoudingPersoonsgegevens": { - "$ref": "#/components/schemas/GbaGeheimhoudingPersoonsgegevens" - }, - "geslacht": { - "$ref": "#/components/schemas/Waardetabel" - }, - "persoonInOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - }, - "naam": { - "$ref": "#/components/schemas/GbaNaamBasis" - }, - "opschortingBijhouding": { - "$ref": "#/components/schemas/GbaOpschortingBijhouding" - }, - "gemeenteVanInschrijving": { - "$ref": "#/components/schemas/Waardetabel" - }, - "verblijfplaats": { - "$ref": "#/components/schemas/GbaVerblijfplaatsBeperkt" - }, - "rni": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RniDeelnemer" - } - }, - "verificatie": { - "$ref": "#/components/schemas/GbaVerificatie" - } - } - }, - "ZoekMetGeslachtsnaamEnGeboortedatumResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaPersoonBeperkt" - } - } - } - } - ] - }, - "ZoekMetNaamEnGemeenteVanInschrijvingResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaPersoonBeperkt" - } - } - } - } - ] - }, - "ANummer": { - "description": "Het A-nummer van de persoon\n", - "type": "string", - "pattern": "^[0-9]{10}$" - }, - "GbaUitsluitingKiesrecht": { - "type": "object", - "properties": { - "uitgeslotenVanKiesrecht": { - "type": "boolean", - "example": true - }, - "einddatum": { - "$ref": "#/components/schemas/GbaDatum" - } - } - }, - "GbaEuropeesKiesrecht": { - "type": "object", - "description": "* **aanduiding** - Geeft aan of persoon een oproep moet ontvangen voor verkiezingen voor het Europees parlement. Wordt gevuld met waarden voor 'Europees_Kiesrecht' in 'tabelwaarden.csv'.\n", - "properties": { - "aanduiding": { - "$ref": "#/components/schemas/Waardetabel" - }, - "einddatumUitsluiting": { - "$ref": "#/components/schemas/GbaDatum" - } - } - }, - "GbaNaamPersoon": { - "allOf": [ - { - "$ref": "#/components/schemas/GbaNaamBasis" - }, - { - "properties": { - "aanduidingNaamgebruik": { - "$ref": "#/components/schemas/Waardetabel" - } - } - } - ] - }, - "GbaNationaliteit": { - "type": "object", - "properties": { - "aanduidingBijzonderNederlanderschap": { - "type": "string", - "pattern": "^(B|V)$" - }, - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/GbaDatum" - }, - "nationaliteit": { - "$ref": "#/components/schemas/Waardetabel" - }, - "redenOpname": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - } - } - }, - "GbaGeboorte": { - "allOf": [ - { - "$ref": "#/components/schemas/GbaGeboorteBeperkt" - }, - { - "type": "object", - "properties": { - "land": { - "$ref": "#/components/schemas/Waardetabel" - }, - "plaats": { - "$ref": "#/components/schemas/Waardetabel" - } - } - } - ] - }, - "GbaOverlijden": { - "type": "object", - "properties": { - "datum": { - "$ref": "#/components/schemas/GbaDatum" - }, - "land": { - "$ref": "#/components/schemas/Waardetabel" - }, - "plaats": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - } - } - }, - "NaamOpenbareRuimte": { - "type": "string", - "maxLength": 80 - }, - "GbaVerblijfplaats": { - "allOf": [ - { - "$ref": "#/components/schemas/GbaVerblijfplaatsBeperkt" - }, - { - "type": "object", - "properties": { - "adresseerbaarObjectIdentificatie": { - "$ref": "#/components/schemas/AdresseerbaarObjectIdentificatie" - }, - "nummeraanduidingIdentificatie": { - "$ref": "#/components/schemas/NummeraanduidingIdentificatie" - }, - "datumAanvangAdresBuitenland": { - "$ref": "#/components/schemas/GbaDatum" - }, - "datumAanvangAdreshouding": { - "$ref": "#/components/schemas/GbaDatum" - }, - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/GbaDatum", - "deprecated": true - }, - "functieAdres": { - "$ref": "#/components/schemas/Waardetabel" - }, - "naamOpenbareRuimte": { - "$ref": "#/components/schemas/NaamOpenbareRuimte" - } - } - } - ] - }, - "GbaImmigratie": { - "type": "object", - "description": "Gegevens over het het immigratie van een persoon.\n * **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland.\n", - "properties": { - "datumVestigingInNederland": { - "$ref": "#/components/schemas/GbaDatum" - }, - "landVanwaarIngeschreven": { - "$ref": "#/components/schemas/Waardetabel" - } - } - }, - "IndicatieCurateleRegister": { - "type": "boolean", - "description": "Geeft aan dat de persoon onder curatele is gesteld.\n", - "example": true - }, - "AbstractGezagsrelatie": { - "type": "object", - "required": [ - "type", - "minderjarige" - ], - "properties": { - "type": { - "type": "string" - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" - } - }, - "discriminator": { - "propertyName": "type", - "mapping": { - "TweehoofdigOuderlijkGezag": "#/components/schemas/TweehoofdigOuderlijkGezag", - "EenhoofdigOuderlijkGezag": "#/components/schemas/EenhoofdigOuderlijkGezag", - "GezamenlijkGezag": "#/components/schemas/GezamenlijkGezag", - "Voogdij": "#/components/schemas/Voogdij", - "TijdelijkGeenGezag": "#/components/schemas/TijdelijkGeenGezag", - "GezagNietTeBepalen": "#/components/schemas/GezagNietTeBepalen" - } - }, - "example": { - "type": "TweehoofdigOuderlijkGezag", - "ouders": [ - { - "burgerservicenummer": "999998870" - }, - { - "burgerservicenummer": "999998882" - } - ], - "minderjarige": { - "burgerservicenummer": "999998894" - } - } - }, - "GezagOuder": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - } - }, - "required": [ - "burgerservicenummer" - ] - }, - "TweehoofdigOuderlijkGezag": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "ouders": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GezagOuder" - }, - "minItems": 2, - "maxItems": 2 - } - } - } - ] - }, - "EenhoofdigOuderlijkGezag": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "ouder": { - "$ref": "#/components/schemas/GezagOuder" - } - } - } - ] - }, - "Meerderjarige": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - } - } - }, - "GezamenlijkGezag": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "ouder": { - "$ref": "#/components/schemas/GezagOuder" - }, - "derde": { - "$ref": "#/components/schemas/Meerderjarige" - } - } - } - ] - }, - "Voogdij": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "derden": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Meerderjarige" - }, - "minItems": 0, - "maxItems": 2 - } - } - } - ] - }, - "Toelichting": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" - }, - "TijdelijkGeenGezag": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "toelichting": { - "$ref": "#/components/schemas/Toelichting" - } - } - } - ] - }, - "GezagNietTeBepalen": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "toelichting": { - "$ref": "#/components/schemas/Toelichting" - } - } - } - ] - }, - "Minderjarige": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - } - }, - "required": [ - "burgerservicenummer" - ] - }, - "Gezag": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - "minItems": 0 - }, - "GbaVerblijfstitel": { - "type": "object", - "description": "Gegevens over de verblijfsrechtelijke status van de persoon.\n* **datumEinde**: Datum waarop de geldigheid van de gegevens over de verblijfstitel is beëindigd.\n* **datumIngang**: Datum waarop de gegevens over de verblijfstitel geldig zijn geworden.\n* **aanduiding** : Verblijfstiteltabel die aangeeft over welke verblijfsrechtelijke status de persoon beschikt. Wordt gevuld met waarden uit de landelijke tabel 'Verblijfstitel'.\n", - "properties": { - "aanduiding": { - "$ref": "#/components/schemas/Waardetabel" - }, - "datumEinde": { - "$ref": "#/components/schemas/GbaDatum" - }, - "datumIngang": { - "$ref": "#/components/schemas/GbaDatum" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - } - } - }, - "GbaKind": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - }, - "naam": { - "$ref": "#/components/schemas/GbaNaamBasis" - }, - "geboorte": { - "$ref": "#/components/schemas/GbaGeboorte" - } - } - }, - "OuderAanduiding": { - "type": "string", - "pattern": "^[1|2]$", - "example": "1" - }, - "GbaOuder": { - "type": "object", - "description": "Gegevens over de ouder van de persoon.\n* **datumIngangFamilierechtelijkeBetrekking** - De datum waarop de familierechtelijke betrekking is ontstaan.\n", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "geslacht": { - "$ref": "#/components/schemas/Waardetabel" - }, - "ouderAanduiding": { - "$ref": "#/components/schemas/OuderAanduiding" - }, - "datumIngangFamilierechtelijkeBetrekking": { - "$ref": "#/components/schemas/GbaDatum" - }, - "naam": { - "$ref": "#/components/schemas/GbaNaamBasis" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - }, - "geboorte": { - "$ref": "#/components/schemas/GbaGeboorte" - } - } - }, - "GbaAangaanHuwelijkPartnerschap": { - "type": "object", - "description": "Gegevens over de voltrekking van het huwelijk of het aangaan van het geregistreerd partnerschap.\n* **datum** - De datum waarop het huwelijk is voltrokken of het partnerschap is aangegaan.\n* **land** - Het land waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel 'Landen'.\n* **plaats** - De gemeente waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel \"Gemeenten\" voor een gemeente in Nederland of de omschrijving van een buitenlandse plaats.\n", - "properties": { - "datum": { - "$ref": "#/components/schemas/GbaDatum" - }, - "land": { - "$ref": "#/components/schemas/Waardetabel" - }, - "plaats": { - "$ref": "#/components/schemas/Waardetabel" - } - } - }, - "GbaOntbindingHuwelijkPartnerschap": { - "type": "object", - "properties": { - "datum": { - "$ref": "#/components/schemas/GbaDatum" - } - } - }, - "GbaPartner": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "geslacht": { - "$ref": "#/components/schemas/Waardetabel" - }, - "soortVerbintenis": { - "$ref": "#/components/schemas/Waardetabel" - }, - "naam": { - "$ref": "#/components/schemas/GbaNaamBasis" - }, - "geboorte": { - "$ref": "#/components/schemas/GbaGeboorte" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - }, - "aangaanHuwelijkPartnerschap": { - "$ref": "#/components/schemas/GbaAangaanHuwelijkPartnerschap" - }, - "ontbindingHuwelijkPartnerschap": { - "$ref": "#/components/schemas/GbaOntbindingHuwelijkPartnerschap" - } - } - }, - "GbaPersoon": { - "type": "object", - "properties": { - "aNummer": { - "$ref": "#/components/schemas/ANummer" - }, - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "datumEersteInschrijvingGBA": { - "$ref": "#/components/schemas/GbaDatum" - }, - "geheimhoudingPersoonsgegevens": { - "$ref": "#/components/schemas/GbaGeheimhoudingPersoonsgegevens" - }, - "geslacht": { - "$ref": "#/components/schemas/Waardetabel" - }, - "persoonInOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - }, - "gezagInOnderzoek": { - "$ref": "#/components/schemas/GbaInOnderzoek" - }, - "uitsluitingKiesrecht": { - "$ref": "#/components/schemas/GbaUitsluitingKiesrecht" - }, - "europeesKiesrecht": { - "$ref": "#/components/schemas/GbaEuropeesKiesrecht" - }, - "naam": { - "$ref": "#/components/schemas/GbaNaamPersoon" - }, - "nationaliteiten": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaNationaliteit" - } - }, - "geboorte": { - "$ref": "#/components/schemas/GbaGeboorte" - }, - "opschortingBijhouding": { - "$ref": "#/components/schemas/GbaOpschortingBijhouding" - }, - "overlijden": { - "$ref": "#/components/schemas/GbaOverlijden" - }, - "verblijfplaats": { - "$ref": "#/components/schemas/GbaVerblijfplaats" - }, - "immigratie": { - "$ref": "#/components/schemas/GbaImmigratie" - }, - "gemeenteVanInschrijving": { - "$ref": "#/components/schemas/Waardetabel" - }, - "datumInschrijvingInGemeente": { - "$ref": "#/components/schemas/GbaDatum" - }, - "indicatieCurateleRegister": { - "$ref": "#/components/schemas/IndicatieCurateleRegister" - }, - "indicatieGezagMinderjarige": { - "$ref": "#/components/schemas/Waardetabel", - "deprecated": true - }, - "gezag": { - "$ref": "#/components/schemas/Gezag" - }, - "verblijfstitel": { - "$ref": "#/components/schemas/GbaVerblijfstitel" - }, - "kinderen": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaKind" - } - }, - "ouders": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaOuder" - } - }, - "partners": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaPartner" - } - }, - "rni": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RniDeelnemer" - } - }, - "verificatie": { - "$ref": "#/components/schemas/GbaVerificatie" - } - } - }, - "RaadpleegMetBurgerservicenummerResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaPersoon" - } - } - } - } - ] - }, - "ZoekMetPostcodeEnHuisnummerResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaPersoonBeperkt" - } - } - } - } - ] - }, - "ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaPersoonBeperkt" - } - } - } - } - ] - }, - "ZoekMetNummeraanduidingIdentificatieResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaPersoonBeperkt" - } - } - } - } - ] - }, - "GbaGezagPersoonBeperkt": { - "allOf": [ - { - "$ref": "#/components/schemas/GbaPersoonBeperkt" - }, - { - "type": "object", - "properties": { - "gezag": { - "$ref": "#/components/schemas/Gezag" - } - } - } - ] - }, - "ZoekMetAdresseerbaarObjectIdentificatieResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GbaGezagPersoonBeperkt" - } - } - } - } - ] - }, - "InvalidParams": { - "type": "object", - "description": "Details over fouten in opgegeven parameters", - "properties": { - "type": { - "type": "string", - "format": "uri", - "example": "https://www.vng.nl/realisatie/api/{major-versie}/validaties/integer" - }, - "name": { - "type": "string", - "pattern": "^[a-zA-Z0-9\\.,_]{1,30}$", - "description": "Naam van de parameter", - "example": "huisnummer" - }, - "code": { - "type": "string", - "pattern": "^[a-zA-Z0-9\\.,_]{1,25}$", - "description": "Systeemcode die het type fout aangeeft", - "minLength": 1, - "example": "integer" - }, - "reason": { - "type": "string", - "pattern": "^[a-zA-Z0-9\\.,_ ]{1,80}$", - "description": "Beschrijving van de fout op de parameterwaarde", - "example": "Waarde is geen geldig getal." - } - } - }, - "BadRequestFoutbericht": { - "allOf": [ - { - "$ref": "#/components/schemas/Foutbericht" - }, - { - "type": "object", - "properties": { - "invalidParams": { - "description": "Foutmelding per fout in een parameter. Alle gevonden fouten worden één keer teruggemeld.", - "type": "array", - "items": { - "$ref": "#/components/schemas/InvalidParams" - } - } - } - } - ] - } - }, - "responses": { - "400": { - "description": "Bad Request", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/BadRequestFoutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", - "title": "Ten minste één parameter moet worden opgegeven.", - "status": 400, - "detail": "The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modification.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "paramsRequired", - "invalidParams": [ - { - "type": "https://www.vng.nl/realisatie/api/validaties/integer", - "name": "huisnummer", - "code": "integer", - "reason": "Waarde is geen geldig getal." - } - ] - } - } - } - }, - "401": { - "description": "Unauthorized", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2", - "title": "Niet correct geauthenticeerd.", - "status": 401, - "detail": "The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.47) containing a challenge applicable to the requested resource.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "authentication" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4", - "title": "U bent niet geautoriseerd voor deze operatie.", - "status": 403, - "detail": "The server understood the request, but is refusing to fulfill it.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "autorisation" - } - } - } - }, - "406": { - "description": "Not Acceptable", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.7", - "title": "Gevraagde contenttype wordt niet ondersteund.", - "status": 406, - "detail": "The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to thr accept headers sent in the request", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "notAcceptable" - } - } - } - }, - "415": { - "description": "Unsupported Media Type", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.16", - "title": "Unsupported Media Type", - "status": 415, - "detail": "The server is refusing the request because the entity of the request is in a format not supported by the requested resource for the requested method.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "unsupported" - } - } - } - }, - "429": { - "description": "Too Many Requests", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html", - "title": "Too many request", - "status": 429, - "detail": "The user has sent too many requests in a given amount of time (rate limiting).", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "tooManyRequests" - } - } - } - }, - "500": { - "description": "Internal Server Error", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1", - "title": "Interne server fout.", - "status": 500, - "detail": "The server encountered an unexpected condition which prevented it from fulfilling the request.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "serverError" - } - } - } - }, - "503": { - "description": "Service Unavailable", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.4", - "title": "Bronservice BRP is tijdelijk niet beschikbaar.", - "status": 503, - "detail": "The service is currently unable to handle the request due to a temporary overloading or maintenance of the server.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "notAvailable" - } - } - } - }, - "default": { - "description": "Er is een onverwachte fout opgetreden", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - } - } - } - } - }, - "headers": { - "warning": { - "schema": { - "type": "string", - "maxLength": 500, - "description": "zie RFC 7234. In het geval een major versie wordt uitgefaseerd, gebruiken we warn-code 299 (\"Miscellaneous Persistent Warning\") en het API end-point (inclusief versienummer) als de warn-agent van de warning, gevolgd door de warn-text met de human-readable waarschuwing", - "example": "299 https://service.../api/.../v1 \"Deze versie van de API is verouderd en zal uit dienst worden genomen op 2018-02-01. Raadpleeg voor meer informatie hier de documentatie: https://omgevingswet.../api/.../v1\"." - } - }, - "X_Rate_Limit_Limit": { - "schema": { - "type": "integer" - } - }, - "X_Rate_Limit_Remaining": { - "schema": { - "type": "integer" - } - }, - "X_Rate_Limit_Reset": { - "schema": { - "type": "integer" - } - } - } - } -} \ No newline at end of file diff --git a/specificatie/gba-genereervariant/openapi.yaml b/specificatie/gba-genereervariant/openapi.yaml deleted file mode 100644 index d2eec5822..000000000 --- a/specificatie/gba-genereervariant/openapi.yaml +++ /dev/null @@ -1,1192 +0,0 @@ -openapi: 3.1.0 -info: - title: BRP API Personen - description: | - API voor het bevragen van personen uit de basisregistratie personen (BRP), inclusief de registratie niet-ingezeten (RNI). Met deze API kun je personen zoeken en actuele gegevens over personen, kinderen, partners en ouders raadplegen. - - Gegevens die er niet zijn of niet actueel zijn krijg je niet terug. Had een persoon bijvoorbeeld een verblijfstitel die nu niet meer geldig is, dan wordt die verblijfstitel niet opgenomen. In partners wordt alleen de actuele of de laatst ontbonden partner geleverd. - version: 2.3.0 - contact: - url: https://github.com/VNG-Realisatie/Haal-Centraal-BRP-bevragen - license: - name: European Union Public License, version 1.2 (EUPL-1.2) - url: https://eupl.eu/1.2/nl/ -servers: - - description: | - Proef omgeving - url: https://proefomgeving-gba.haalcentraal.nl/haalcentraal/api/brp -tags: - - name: Personen -paths: - /personen: - post: - operationId: GetPersonen - summary: Zoek personen - description: | - Zoek personen met één van de onderstaande verplichte combinaties van parameters en vul ze evt. aan met optionele parameters. - - 1. Raadpleeg met burgerservicenummer - 2. Zoek met geslachtsnaam en geboortedatum - 3. Zoek met geslachtsnaam, voornamen en gemeente van inschrijving - 4. Zoek met postcode en huisnummer - 5. Zoek met straat, huisnummer en gemeente van inschrijving - 6. Zoek met nummeraanduiding identificatie - - Default krijg je personen terug die nog in leven zijn, tenzij je de inclusiefoverledenpersonen=true opgeeft. - - Gebruik de fields parameter om alleen die gegevens op te vragen die je nodig hebt en waarvoor je geautoriseerd bent. - requestBody: - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/PersonenQuery' - responses: - '200': - description: | - Zoekactie geslaagd - headers: - warning: - $ref: '#/components/headers/warning' - X-Rate-Limit-Limit: - $ref: '#/components/headers/X_Rate_Limit_Limit' - X-Rate-Limit-Remaining: - $ref: '#/components/headers/X_Rate_Limit_Remaining' - X-Rate-Limit-Reset: - $ref: '#/components/headers/X_Rate_Limit_Reset' - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/PersonenQueryResponse' - '400': - $ref: '#/components/responses/400' - '401': - $ref: '#/components/responses/401' - '403': - $ref: '#/components/responses/403' - '406': - $ref: '#/components/responses/406' - '415': - $ref: '#/components/responses/415' - '429': - $ref: '#/components/responses/429' - '500': - $ref: '#/components/responses/500' - '503': - $ref: '#/components/responses/503' - default: - $ref: '#/components/responses/default' - tags: - - Personen -components: - schemas: - PersonenQuery: - type: object - required: - - type - - fields - discriminator: - propertyName: type - mapping: - ZoekMetGeslachtsnaamEnGeboortedatum: '#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatum' - ZoekMetNaamEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijving' - RaadpleegMetBurgerservicenummer: '#/components/schemas/RaadpleegMetBurgerservicenummer' - ZoekMetPostcodeEnHuisnummer: '#/components/schemas/ZoekMetPostcodeEnHuisnummer' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijving' - ZoekMetNummeraanduidingIdentificatie: '#/components/schemas/ZoekMetNummeraanduidingIdentificatie' - ZoekMetAdresseerbaarObjectIdentificatie: '#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatie' - properties: - type: - type: string - fields: - description: | - Hiermee kun je de velden opgeven die je wenst te ontvangen. - - Velden die automatisch worden geleverd (inOnderzoek, geheimhoudingPersoonsgegevens, opschortingBijhouding, rni en verificatie) mag je niet opgeven in fields. - Opgave van een pad dat verwijst naar een niet-bestaand veld of naar een automatisch geleverd veld leidt tot een 400 Bad Request. - - Meer details over hoe fields werkt lees je in het [feature overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht#filteren-van-de-velden-van-de-gevonden-personen). - Stel je fields eenvoudig samen met de [fields tool](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/fields){:target="_blank" rel="noopener"}. - type: array - maxItems: 130 - minItems: 1 - items: - $ref: '#/components/schemas/Field' - gemeenteVanInschrijving: - $ref: '#/components/schemas/GemeenteVanInschrijving' - InclusiefOverledenPersonen: - description: | - Als je ook overleden personen in het antwoord wilt, geef dan de parameter inclusiefOverledenPersonen op met waarde True. - type: boolean - example: true - GeslachtsnaamFilter: - description: | - De (geslachts)naam waarvan de eventueel aanwezige voorvoegsels zijn afgesplitst. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$|^[a-zA-Z0-9À-ž \.\-\']{3,199}\*{1}$ - example: Vries - GeslachtFilter: - description: | - Geeft aan dat de persoon een man of een vrouw is, of dat het geslacht (nog) onbekend is. - type: string - pattern: ^([Mm]|[Vv]|[Oo])$ - example: V - VoorvoegselFilter: - description: | - Deel van de geslachtsnaam dat vooraf gaat aan de rest van de geslachtsnaam. **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z \']{1,10}$ - example: de - VoornamenOptioneelFilter: - description: | - De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan.** **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,199}\*{0,1}$ - example: Dirk - ZoekMetGeslachtsnaamEnGeboortedatum: - required: - - geslachtsnaam - - geboortedatum - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - geboortedatum: - description: | - Je kunt alleen zoeken met een volledige geboortedatum. - type: string - format: date - example: '1964-09-24' - geslachtsnaam: - $ref: '#/components/schemas/GeslachtsnaamFilter' - geslacht: - $ref: '#/components/schemas/GeslachtFilter' - voorvoegsel: - $ref: '#/components/schemas/VoorvoegselFilter' - voornamen: - $ref: '#/components/schemas/VoornamenOptioneelFilter' - VoornamenVerplichtFilter: - description: | - De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$|^[a-zA-Z0-9À-ž \.\-\']{3,199}\*{1}$ - example: Dirk - ZoekMetNaamEnGemeenteVanInschrijving: - required: - - geslachtsnaam - - gemeenteVanInschrijving - - voornamen - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - geslacht: - $ref: '#/components/schemas/GeslachtFilter' - geslachtsnaam: - $ref: '#/components/schemas/GeslachtsnaamFilter' - voorvoegsel: - $ref: '#/components/schemas/VoorvoegselFilter' - voornamen: - $ref: '#/components/schemas/VoornamenVerplichtFilter' - Burgerservicenummer: - type: string - pattern: ^[0-9]{9}$ - example: '555555021' - RaadpleegMetBurgerservicenummer: - required: - - burgerservicenummer - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - burgerservicenummer: - type: array - items: - $ref: '#/components/schemas/Burgerservicenummer' - minItems: 1 - maxItems: 20 - Huisletter: - description: | - Een toevoeging aan een huisnummer in de vorm van een letter die door de gemeente aan een adresseerbaar object is gegeven. - type: string - pattern: ^[a-zA-Z]{1}$ - example: a - Huisnummer: - description: | - Een nummer dat door de gemeente aan een adresseerbaar object is gegeven. - type: integer - minimum: 1 - maximum: 99999 - example: 14 - Huisnummertoevoeging: - description: | - Een toevoeging aan een huisnummer of een combinatie van huisnummer en huisletter die door de gemeente aan een adresseerbaar object is gegeven. - type: string - pattern: ^[a-zA-Z0-9 \-]{1,4}$ - example: bis - Postcode: - description: | - De door PostNL vastgestelde code die bij een bepaalde combinatie van een straatnaam en een huisnummer hoort. - type: string - pattern: ^[1-9]{1}[0-9]{3}[ ]?[A-Za-z]{2}$ - example: 2341SX - ZoekMetPostcodeEnHuisnummer: - required: - - postcode - - huisnummer - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - huisletter: - $ref: '#/components/schemas/Huisletter' - huisnummer: - $ref: '#/components/schemas/Huisnummer' - huisnummertoevoeging: - $ref: '#/components/schemas/Huisnummertoevoeging' - postcode: - $ref: '#/components/schemas/Postcode' - geboortedatum: - description: | - Je kunt alleen zoeken met een volledige geboortedatum. - type: string - format: date - example: '1964-09-24' - StraatFilter: - description: | - Een naam die door de gemeente aan een openbare ruimte is gegeven. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 7 letters.** **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z0-9À-ž \-\'\.]{1,80}$|^[a-zA-Z0-9À-ž \-\'\.]{7,79}\*{1}$|^\*{1}[a-zA-Z0-9À-ž \-\'\.]{7,79}$ - example: Tulpstraat - ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: - required: - - straat - - huisnummer - - gemeenteVanInschrijving - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - huisletter: - $ref: '#/components/schemas/Huisletter' - huisnummer: - $ref: '#/components/schemas/Huisnummer' - huisnummertoevoeging: - $ref: '#/components/schemas/Huisnummertoevoeging' - straat: - $ref: '#/components/schemas/StraatFilter' - NummeraanduidingIdentificatie: - description: | - Unieke identificatie van een nummeraanduiding (en het bijbehorende adres) in de BAG. - type: string - pattern: ^[0-9]{16}$ - example: '0518200000366054' - ZoekMetNummeraanduidingIdentificatie: - required: - - nummeraanduidingIdentificatie - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - nummeraanduidingIdentificatie: - $ref: '#/components/schemas/NummeraanduidingIdentificatie' - AdresseerbaarObjectIdentificatie: - type: string - pattern: ^[0-9]{16}$ - description: | - De verblijfplaats van de persoon kan een ligplaats, een standplaats of een verblijfsobject zijn. - example: '0226010000038820' - ZoekMetAdresseerbaarObjectIdentificatie: - required: - - adresseerbaarObjectIdentificatie - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - adresseerbaarObjectIdentificatie: - $ref: '#/components/schemas/AdresseerbaarObjectIdentificatie' - Field: - description: | - Het pad naar een gewenst veld in punt-gescheiden formaat. Bijvoorbeeld "burgerservicenummer", "geboorte.datum", "partners.naam.voornamen". - type: string - pattern: ^[a-zA-Z0-9\._]{1,200}$ - GemeenteVanInschrijving: - description: | - Een code die aangeeft in welke gemeente de persoon woont, of de laatste gemeente waar de persoon heeft gewoond, of de gemeente waar de persoon voor het eerst is ingeschreven. - type: string - pattern: ^[0-9]{4}$ - example: '0518' - Foutbericht: - type: object - description: Terugmelding bij een fout. JSON representatie in lijn met [RFC7807](https://tools.ietf.org/html/rfc7807). - properties: - type: - type: string - format: uri - description: Link naar meer informatie over deze fout - title: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-]{1,80}$ - description: Beschrijving van de fout - status: - type: integer - minimum: 100 - maximum: 600 - description: Http status code - detail: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\(\)\,]{1,200}$ - description: Details over de fout - instance: - type: string - format: uri - description: Uri van de aanroep die de fout heeft veroorzaakt - code: - type: string - pattern: ^[a-zA-Z0-9]{1,25}$ - description: Systeemcode die het type fout aangeeft - minLength: 1 - PersonenQueryResponse: - type: object - required: - - type - discriminator: - propertyName: type - mapping: - ZoekMetGeslachtsnaamEnGeboortedatum: '#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatumResponse' - ZoekMetNaamEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijvingResponse' - RaadpleegMetBurgerservicenummer: '#/components/schemas/RaadpleegMetBurgerservicenummerResponse' - ZoekMetPostcodeEnHuisnummer: '#/components/schemas/ZoekMetPostcodeEnHuisnummerResponse' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse' - ZoekMetNummeraanduidingIdentificatie: '#/components/schemas/ZoekMetNummeraanduidingIdentificatieResponse' - ZoekMetAdresseerbaarObjectIdentificatie: '#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatieResponse' - properties: - type: - type: string - GbaDatum: - type: string - pattern: ^[0-9]{8}$ - example: '20180700' - GbaGeboorteBeperkt: - type: object - properties: - datum: - $ref: '#/components/schemas/GbaDatum' - GbaGeheimhoudingPersoonsgegevens: - type: integer - Waardetabel: - type: object - properties: - code: - type: string - pattern: ^[a-zA-Z0-9 \.]+$ - example: '6030' - omschrijving: - type: string - pattern: ^[a-zA-Z0-9À-ž \'\,\(\)\.\-]{1,200}$ - example: Nederland - GbaInOnderzoek: - type: object - required: - - aanduidingGegevensInOnderzoek - - datumIngangOnderzoek - properties: - aanduidingGegevensInOnderzoek: - type: string - pattern: ^[0-9]{6}$ - datumIngangOnderzoek: - $ref: '#/components/schemas/GbaDatum' - Voornamen: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$ - maxLength: 200 - description: | - De verzameling namen voor de geslachtsnaam, gescheiden door spaties. - AdellijkeTitelPredicaatSoort: - type: string - enum: - - titel - - predicaat - AdellijkeTitelPredicaatType: - description: | - Wordt gevuld met waarden uit de landelijke tabel 'Adellijke titel/predicaat'. De property soort geeft aan of het een 'predicaat' of een 'titel' is. - allOf: - - $ref: '#/components/schemas/Waardetabel' - - properties: - soort: - $ref: '#/components/schemas/AdellijkeTitelPredicaatSoort' - example: - value: - code: JV - omschrijving: jonkvrouw - soort: predicaat - Voorvoegsel: - type: string - pattern: ^[a-zA-Z \']{1,10}$ - maxLength: 10 - example: de - Geslachtsnaam: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$ - description: | - De achternaam van een persoon. - example: Vries - GbaNaamBasis: - type: object - properties: - voornamen: - $ref: '#/components/schemas/Voornamen' - adellijkeTitelPredicaat: - $ref: '#/components/schemas/AdellijkeTitelPredicaatType' - voorvoegsel: - $ref: '#/components/schemas/Voorvoegsel' - geslachtsnaam: - $ref: '#/components/schemas/Geslachtsnaam' - OpschortingBijhoudingBasis: - type: object - description: | - * **reden** - wordt gevuld met waarden voor 'Reden_Opschorting_Bijhouding' in 'tabelwaarden.csv'. - properties: - reden: - $ref: '#/components/schemas/Waardetabel' - GbaOpschortingBijhouding: - allOf: - - $ref: '#/components/schemas/OpschortingBijhoudingBasis' - - type: object - description: | - * **datum**: de datum waarop de bijhouding van de persoonsgegevens is gestaakt. - properties: - datum: - $ref: '#/components/schemas/GbaDatum' - Straat: - type: string - maxLength: 24 - example: Tulpstraat - Woonplaats: - description: | - Een woonplaats is een gedeelte van het grondgebied van de gemeente met een naam. - title: woonplaats naam - type: string - pattern: ^[a-zA-Z0-9À-ž \(\)\,\.\-\']{1,80}$ - example: Duiven - Locatiebeschrijving: - type: string - maxLength: 35 - description: | - Omschrijving van de ligging van een verblijfsobject, standplaats of ligplaats. - example: Naast de derde brug - Regel1: - type: string - maxLength: 40 - description: | - Het eerste deel van een buitenlands adres. Vaak is dit een combinatie van de straat en huisnummer. - example: 1600 Pennsylvania Avenue NW - Regel2: - type: string - maxLength: 50 - description: | - Het tweede deel van een buitenlands adres. Vaak is dit een combinatie van woonplaats eventueel in combinatie met de postcode. - example: Washington, DC 20500 - Regel3: - type: string - maxLength: 35 - description: | - Het derde deel van een buitenlands adres is optioneel. Het gaat om een of meer geografische gebieden van het adres in het buitenland. - example: Selangor - GbaVerblijfplaatsBeperkt: - type: object - properties: - straat: - $ref: '#/components/schemas/Straat' - huisnummer: - $ref: '#/components/schemas/Huisnummer' - huisletter: - $ref: '#/components/schemas/Huisletter' - huisnummertoevoeging: - $ref: '#/components/schemas/Huisnummertoevoeging' - aanduidingBijHuisnummer: - $ref: '#/components/schemas/Waardetabel' - postcode: - $ref: '#/components/schemas/Postcode' - woonplaats: - $ref: '#/components/schemas/Woonplaats' - locatiebeschrijving: - $ref: '#/components/schemas/Locatiebeschrijving' - land: - $ref: '#/components/schemas/Waardetabel' - regel1: - $ref: '#/components/schemas/Regel1' - regel2: - $ref: '#/components/schemas/Regel2' - regel3: - $ref: '#/components/schemas/Regel3' - inOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - OmschrijvingVerdrag: - type: string - description: | - Omschrijving van het verdrag op basis waarvan een zusterorganisatie in het buitenland de gegevens bij de RNI-deelnemer heeft aangeleverd. - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,50}$ - Categorie: - type: string - description: Naam van categorie waarop de RNI-deelnemer gegevens heeft aangeleverd - pattern: ^[a-zA-Z0-9À-ž \.\-\'\/]{1,40}$ - example: Verblijfplaats - RniDeelnemer: - type: object - description: Gegevens over de RNI-deelnemer die de gegevens in de betrokken categorie heeft aangeleverd. - properties: - deelnemer: - $ref: '#/components/schemas/Waardetabel' - omschrijvingVerdrag: - $ref: '#/components/schemas/OmschrijvingVerdrag' - categorie: - $ref: '#/components/schemas/Categorie' - OmschrijvingVerificatie: - type: string - description: | - Omschrijving van de verificatie van de rni-gegevens - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,50}$ - GbaVerificatie: - type: object - properties: - datum: - $ref: '#/components/schemas/GbaDatum' - omschrijving: - $ref: '#/components/schemas/OmschrijvingVerificatie' - GbaPersoonBeperkt: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - geboorte: - $ref: '#/components/schemas/GbaGeboorteBeperkt' - geheimhoudingPersoonsgegevens: - $ref: '#/components/schemas/GbaGeheimhoudingPersoonsgegevens' - geslacht: - $ref: '#/components/schemas/Waardetabel' - persoonInOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - naam: - $ref: '#/components/schemas/GbaNaamBasis' - opschortingBijhouding: - $ref: '#/components/schemas/GbaOpschortingBijhouding' - gemeenteVanInschrijving: - $ref: '#/components/schemas/Waardetabel' - verblijfplaats: - $ref: '#/components/schemas/GbaVerblijfplaatsBeperkt' - rni: - type: array - items: - $ref: '#/components/schemas/RniDeelnemer' - verificatie: - $ref: '#/components/schemas/GbaVerificatie' - ZoekMetGeslachtsnaamEnGeboortedatumResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: '#/components/schemas/GbaPersoonBeperkt' - ZoekMetNaamEnGemeenteVanInschrijvingResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: '#/components/schemas/GbaPersoonBeperkt' - ANummer: - description: | - Het A-nummer van de persoon - type: string - pattern: ^[0-9]{10}$ - GbaUitsluitingKiesrecht: - type: object - properties: - uitgeslotenVanKiesrecht: - type: boolean - example: true - einddatum: - $ref: '#/components/schemas/GbaDatum' - GbaEuropeesKiesrecht: - type: object - description: | - * **aanduiding** - Geeft aan of persoon een oproep moet ontvangen voor verkiezingen voor het Europees parlement. Wordt gevuld met waarden voor 'Europees_Kiesrecht' in 'tabelwaarden.csv'. - properties: - aanduiding: - $ref: '#/components/schemas/Waardetabel' - einddatumUitsluiting: - $ref: '#/components/schemas/GbaDatum' - GbaNaamPersoon: - allOf: - - $ref: '#/components/schemas/GbaNaamBasis' - - properties: - aanduidingNaamgebruik: - $ref: '#/components/schemas/Waardetabel' - GbaNationaliteit: - type: object - properties: - aanduidingBijzonderNederlanderschap: - type: string - pattern: ^(B|V)$ - datumIngangGeldigheid: - $ref: '#/components/schemas/GbaDatum' - nationaliteit: - $ref: '#/components/schemas/Waardetabel' - redenOpname: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - GbaGeboorte: - allOf: - - $ref: '#/components/schemas/GbaGeboorteBeperkt' - - type: object - properties: - land: - $ref: '#/components/schemas/Waardetabel' - plaats: - $ref: '#/components/schemas/Waardetabel' - GbaOverlijden: - type: object - properties: - datum: - $ref: '#/components/schemas/GbaDatum' - land: - $ref: '#/components/schemas/Waardetabel' - plaats: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - NaamOpenbareRuimte: - type: string - maxLength: 80 - GbaVerblijfplaats: - allOf: - - $ref: '#/components/schemas/GbaVerblijfplaatsBeperkt' - - type: object - properties: - adresseerbaarObjectIdentificatie: - $ref: '#/components/schemas/AdresseerbaarObjectIdentificatie' - nummeraanduidingIdentificatie: - $ref: '#/components/schemas/NummeraanduidingIdentificatie' - datumAanvangAdresBuitenland: - $ref: '#/components/schemas/GbaDatum' - datumAanvangAdreshouding: - $ref: '#/components/schemas/GbaDatum' - datumIngangGeldigheid: - $ref: '#/components/schemas/GbaDatum' - deprecated: true - functieAdres: - $ref: '#/components/schemas/Waardetabel' - naamOpenbareRuimte: - $ref: '#/components/schemas/NaamOpenbareRuimte' - GbaImmigratie: - type: object - description: | - Gegevens over het het immigratie van een persoon. - * **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland. - properties: - datumVestigingInNederland: - $ref: '#/components/schemas/GbaDatum' - landVanwaarIngeschreven: - $ref: '#/components/schemas/Waardetabel' - IndicatieCurateleRegister: - type: boolean - description: | - Geeft aan dat de persoon onder curatele is gesteld. - example: true - AbstractGezagsrelatie: - type: object - required: - - type - - minderjarige - properties: - type: - type: string - minderjarige: - $ref: '#/components/schemas/Minderjarige' - discriminator: - propertyName: type - mapping: - TweehoofdigOuderlijkGezag: '#/components/schemas/TweehoofdigOuderlijkGezag' - EenhoofdigOuderlijkGezag: '#/components/schemas/EenhoofdigOuderlijkGezag' - GezamenlijkGezag: '#/components/schemas/GezamenlijkGezag' - Voogdij: '#/components/schemas/Voogdij' - TijdelijkGeenGezag: '#/components/schemas/TijdelijkGeenGezag' - GezagNietTeBepalen: '#/components/schemas/GezagNietTeBepalen' - example: - type: TweehoofdigOuderlijkGezag - ouders: - - burgerservicenummer: '999998870' - - burgerservicenummer: '999998882' - minderjarige: - burgerservicenummer: '999998894' - GezagOuder: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - required: - - burgerservicenummer - TweehoofdigOuderlijkGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - ouders: - type: array - items: - $ref: '#/components/schemas/GezagOuder' - minItems: 2 - maxItems: 2 - EenhoofdigOuderlijkGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - ouder: - $ref: '#/components/schemas/GezagOuder' - Meerderjarige: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - GezamenlijkGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - ouder: - $ref: '#/components/schemas/GezagOuder' - derde: - $ref: '#/components/schemas/Meerderjarige' - Voogdij: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - derden: - type: array - items: - $ref: '#/components/schemas/Meerderjarige' - minItems: 0 - maxItems: 2 - Toelichting: - type: string - pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ - TijdelijkGeenGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - toelichting: - $ref: '#/components/schemas/Toelichting' - GezagNietTeBepalen: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - toelichting: - $ref: '#/components/schemas/Toelichting' - Minderjarige: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - required: - - burgerservicenummer - Gezag: - type: array - items: - $ref: '#/components/schemas/AbstractGezagsrelatie' - minItems: 0 - GbaVerblijfstitel: - type: object - description: | - Gegevens over de verblijfsrechtelijke status van de persoon. - * **datumEinde**: Datum waarop de geldigheid van de gegevens over de verblijfstitel is beëindigd. - * **datumIngang**: Datum waarop de gegevens over de verblijfstitel geldig zijn geworden. - * **aanduiding** : Verblijfstiteltabel die aangeeft over welke verblijfsrechtelijke status de persoon beschikt. Wordt gevuld met waarden uit de landelijke tabel 'Verblijfstitel'. - properties: - aanduiding: - $ref: '#/components/schemas/Waardetabel' - datumEinde: - $ref: '#/components/schemas/GbaDatum' - datumIngang: - $ref: '#/components/schemas/GbaDatum' - inOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - GbaKind: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - inOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - naam: - $ref: '#/components/schemas/GbaNaamBasis' - geboorte: - $ref: '#/components/schemas/GbaGeboorte' - OuderAanduiding: - type: string - pattern: ^[1|2]$ - example: '1' - GbaOuder: - type: object - description: | - Gegevens over de ouder van de persoon. - * **datumIngangFamilierechtelijkeBetrekking** - De datum waarop de familierechtelijke betrekking is ontstaan. - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - geslacht: - $ref: '#/components/schemas/Waardetabel' - ouderAanduiding: - $ref: '#/components/schemas/OuderAanduiding' - datumIngangFamilierechtelijkeBetrekking: - $ref: '#/components/schemas/GbaDatum' - naam: - $ref: '#/components/schemas/GbaNaamBasis' - inOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - geboorte: - $ref: '#/components/schemas/GbaGeboorte' - GbaAangaanHuwelijkPartnerschap: - type: object - description: | - Gegevens over de voltrekking van het huwelijk of het aangaan van het geregistreerd partnerschap. - * **datum** - De datum waarop het huwelijk is voltrokken of het partnerschap is aangegaan. - * **land** - Het land waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. - * **plaats** - De gemeente waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten" voor een gemeente in Nederland of de omschrijving van een buitenlandse plaats. - properties: - datum: - $ref: '#/components/schemas/GbaDatum' - land: - $ref: '#/components/schemas/Waardetabel' - plaats: - $ref: '#/components/schemas/Waardetabel' - GbaOntbindingHuwelijkPartnerschap: - type: object - properties: - datum: - $ref: '#/components/schemas/GbaDatum' - GbaPartner: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - geslacht: - $ref: '#/components/schemas/Waardetabel' - soortVerbintenis: - $ref: '#/components/schemas/Waardetabel' - naam: - $ref: '#/components/schemas/GbaNaamBasis' - geboorte: - $ref: '#/components/schemas/GbaGeboorte' - inOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - aangaanHuwelijkPartnerschap: - $ref: '#/components/schemas/GbaAangaanHuwelijkPartnerschap' - ontbindingHuwelijkPartnerschap: - $ref: '#/components/schemas/GbaOntbindingHuwelijkPartnerschap' - GbaPersoon: - type: object - properties: - aNummer: - $ref: '#/components/schemas/ANummer' - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - datumEersteInschrijvingGBA: - $ref: '#/components/schemas/GbaDatum' - geheimhoudingPersoonsgegevens: - $ref: '#/components/schemas/GbaGeheimhoudingPersoonsgegevens' - geslacht: - $ref: '#/components/schemas/Waardetabel' - persoonInOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - gezagInOnderzoek: - $ref: '#/components/schemas/GbaInOnderzoek' - uitsluitingKiesrecht: - $ref: '#/components/schemas/GbaUitsluitingKiesrecht' - europeesKiesrecht: - $ref: '#/components/schemas/GbaEuropeesKiesrecht' - naam: - $ref: '#/components/schemas/GbaNaamPersoon' - nationaliteiten: - type: array - items: - $ref: '#/components/schemas/GbaNationaliteit' - geboorte: - $ref: '#/components/schemas/GbaGeboorte' - opschortingBijhouding: - $ref: '#/components/schemas/GbaOpschortingBijhouding' - overlijden: - $ref: '#/components/schemas/GbaOverlijden' - verblijfplaats: - $ref: '#/components/schemas/GbaVerblijfplaats' - immigratie: - $ref: '#/components/schemas/GbaImmigratie' - gemeenteVanInschrijving: - $ref: '#/components/schemas/Waardetabel' - datumInschrijvingInGemeente: - $ref: '#/components/schemas/GbaDatum' - indicatieCurateleRegister: - $ref: '#/components/schemas/IndicatieCurateleRegister' - indicatieGezagMinderjarige: - $ref: '#/components/schemas/Waardetabel' - deprecated: true - gezag: - $ref: '#/components/schemas/Gezag' - verblijfstitel: - $ref: '#/components/schemas/GbaVerblijfstitel' - kinderen: - type: array - items: - $ref: '#/components/schemas/GbaKind' - ouders: - type: array - items: - $ref: '#/components/schemas/GbaOuder' - partners: - type: array - items: - $ref: '#/components/schemas/GbaPartner' - rni: - type: array - items: - $ref: '#/components/schemas/RniDeelnemer' - verificatie: - $ref: '#/components/schemas/GbaVerificatie' - RaadpleegMetBurgerservicenummerResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: '#/components/schemas/GbaPersoon' - ZoekMetPostcodeEnHuisnummerResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: '#/components/schemas/GbaPersoonBeperkt' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: '#/components/schemas/GbaPersoonBeperkt' - ZoekMetNummeraanduidingIdentificatieResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: '#/components/schemas/GbaPersoonBeperkt' - GbaGezagPersoonBeperkt: - allOf: - - $ref: '#/components/schemas/GbaPersoonBeperkt' - - type: object - properties: - gezag: - $ref: '#/components/schemas/Gezag' - ZoekMetAdresseerbaarObjectIdentificatieResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: '#/components/schemas/GbaGezagPersoonBeperkt' - InvalidParams: - type: object - description: Details over fouten in opgegeven parameters - properties: - type: - type: string - format: uri - example: https://www.vng.nl/realisatie/api/{major-versie}/validaties/integer - name: - type: string - pattern: ^[a-zA-Z0-9\.,_]{1,30}$ - description: Naam van de parameter - example: huisnummer - code: - type: string - pattern: ^[a-zA-Z0-9\.,_]{1,25}$ - description: Systeemcode die het type fout aangeeft - minLength: 1 - example: integer - reason: - type: string - pattern: ^[a-zA-Z0-9\.,_ ]{1,80}$ - description: Beschrijving van de fout op de parameterwaarde - example: Waarde is geen geldig getal. - BadRequestFoutbericht: - allOf: - - $ref: '#/components/schemas/Foutbericht' - - type: object - properties: - invalidParams: - description: Foutmelding per fout in een parameter. Alle gevonden fouten worden één keer teruggemeld. - type: array - items: - $ref: '#/components/schemas/InvalidParams' - responses: - '400': - description: Bad Request - content: - application/problem+json: - schema: - $ref: '#/components/schemas/BadRequestFoutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1 - title: Ten minste één parameter moet worden opgegeven. - status: 400 - detail: The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modification. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: paramsRequired - invalidParams: - - type: https://www.vng.nl/realisatie/api/validaties/integer - name: huisnummer - code: integer - reason: Waarde is geen geldig getal. - '401': - description: Unauthorized - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2 - title: Niet correct geauthenticeerd. - status: 401 - detail: The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.47) containing a challenge applicable to the requested resource. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: authentication - '403': - description: Forbidden - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4 - title: U bent niet geautoriseerd voor deze operatie. - status: 403 - detail: The server understood the request, but is refusing to fulfill it. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: autorisation - '406': - description: Not Acceptable - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.7 - title: Gevraagde contenttype wordt niet ondersteund. - status: 406 - detail: The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to thr accept headers sent in the request - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: notAcceptable - '415': - description: Unsupported Media Type - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.16 - title: Unsupported Media Type - status: 415 - detail: The server is refusing the request because the entity of the request is in a format not supported by the requested resource for the requested method. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: unsupported - '429': - description: Too Many Requests - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html - title: Too many request - status: 429 - detail: The user has sent too many requests in a given amount of time (rate limiting). - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: tooManyRequests - '500': - description: Internal Server Error - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1 - title: Interne server fout. - status: 500 - detail: The server encountered an unexpected condition which prevented it from fulfilling the request. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: serverError - '503': - description: Service Unavailable - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.4 - title: Bronservice BRP is tijdelijk niet beschikbaar. - status: 503 - detail: The service is currently unable to handle the request due to a temporary overloading or maintenance of the server. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: notAvailable - default: - description: Er is een onverwachte fout opgetreden - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - headers: - warning: - schema: - type: string - maxLength: 500 - description: zie RFC 7234. In het geval een major versie wordt uitgefaseerd, gebruiken we warn-code 299 ("Miscellaneous Persistent Warning") en het API end-point (inclusief versienummer) als de warn-agent van de warning, gevolgd door de warn-text met de human-readable waarschuwing - example: '299 https://service.../api/.../v1 "Deze versie van de API is verouderd en zal uit dienst worden genomen op 2018-02-01. Raadpleeg voor meer informatie hier de documentatie: https://omgevingswet.../api/.../v1".' - X_Rate_Limit_Limit: - schema: - type: integer - X_Rate_Limit_Remaining: - schema: - type: integer - X_Rate_Limit_Reset: - schema: - type: integer diff --git a/specificatie/gba-inonderzoek.yaml b/specificatie/gba-inonderzoek.yaml deleted file mode 100644 index b31e302c6..000000000 --- a/specificatie/gba-inonderzoek.yaml +++ /dev/null @@ -1,19 +0,0 @@ -openapi: 3.0.3 -info: - title: GbaInOnderzoek definities - version: 2.0.0 - contact: {} -paths: {} -components: - schemas: - GbaInOnderzoek: - type: object - required: - - aanduidingGegevensInOnderzoek - - datumIngangOnderzoek - properties: - aanduidingGegevensInOnderzoek: - type: string - pattern: ^[0-9]{6}$ - datumIngangOnderzoek: - $ref: 'datum.yaml#/components/schemas/GbaDatum' diff --git a/specificatie/gba-openapi.yaml b/specificatie/gba-openapi.yaml deleted file mode 100644 index 3636a011e..000000000 --- a/specificatie/gba-openapi.yaml +++ /dev/null @@ -1,22 +0,0 @@ -openapi: 3.1.0 -servers: - - description: | - Proef omgeving - url: https://proefomgeving-gba.haalcentraal.nl/haalcentraal/api/brp -info: - title: BRP API Personen - description: | - API voor het bevragen van personen uit de basisregistratie personen (BRP), inclusief de registratie niet-ingezeten (RNI). Met deze API kun je personen zoeken en actuele gegevens over personen, kinderen, partners en ouders raadplegen. - - Gegevens die er niet zijn of niet actueel zijn krijg je niet terug. Had een persoon bijvoorbeeld een verblijfstitel die nu niet meer geldig is, dan wordt die verblijfstitel niet opgenomen. In partners wordt alleen de actuele of de laatst ontbonden partner geleverd. - version: 2.3.0 - contact: - url: https://github.com/VNG-Realisatie/Haal-Centraal-BRP-bevragen - license: - name: European Union Public License, version 1.2 (EUPL-1.2) - url: https://eupl.eu/1.2/nl/ -tags: - - name: Personen -paths: - /personen: - $ref: 'zoek-gba-personen.yaml#/paths/~1personen' diff --git a/specificatie/geboorte.yaml b/specificatie/geboorte.yaml index 9ba8f147a..be79a6f10 100644 --- a/specificatie/geboorte.yaml +++ b/specificatie/geboorte.yaml @@ -6,28 +6,9 @@ info: paths: {} components: schemas: - GbaGeboorteBeperkt: - type: object - properties: - datum: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - GbaGeboorte: - allOf: - - $ref: '#/components/schemas/GbaGeboorteBeperkt' - - type: object - properties: - land: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - plaats: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - GeboorteBasis: - type: object - properties: - datum: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' GeboorteBeperkt: allOf: - - $ref: '#/components/schemas/GeboorteBasis' + - $ref: 'brp-api/geboorte/geboorte-basis-v1.yaml#/components/schemas/GeboorteBasis' - type: object properties: inOnderzoek: @@ -39,7 +20,7 @@ components: * **land** - land waar de persoon is geboren. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. * **plaats** - gemeente waar de persoon is geboren. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten" voor een gemeente in Nederland of als de persoon is geboren buiten Nederland de omschrijving van een buitenlandse plaatsnaam of aanduiding. allOf: - - $ref: '#/components/schemas/GeboorteBasis' + - $ref: 'brp-api/geboorte/geboorte-basis-v1.yaml#/components/schemas/GeboorteBasis' - type: object properties: land: diff --git a/specificatie/genereervariant/openapi.json b/specificatie/genereervariant/openapi.json deleted file mode 100644 index 83b7d9acf..000000000 --- a/specificatie/genereervariant/openapi.json +++ /dev/null @@ -1,2965 +0,0 @@ -{ - "openapi": "3.1.0", - "info": { - "title": "BRP API Personen", - "description": "API voor het bevragen van personen uit de basisregistratie personen (BRP), inclusief de registratie niet-ingezeten (RNI). Met deze API kun je personen zoeken en actuele gegevens over personen, kinderen, partners en ouders raadplegen.\n\nGegevens die er niet zijn of niet actueel zijn krijg je niet terug. Had een persoon bijvoorbeeld een verblijfstitel die nu niet meer geldig is, dan wordt die verblijfstitel niet opgenomen. In partners wordt alleen de actuele of de laatst ontbonden partner geleverd.\n\nZie de [Features overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht) en [Getting started](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/getting-started) voor nadere toelichting.\n", - "version": "2.3.0", - "contact": { - "url": "https://brp-api.github.io/Haal-Centraal-BRP-bevragen" - }, - "license": { - "name": "European Union Public License, version 1.2 (EUPL-1.2)", - "url": "https://eupl.eu/1.2/nl/" - } - }, - "servers": [ - { - "description": "Proef omgeving\n", - "url": "https://proefomgeving.haalcentraal.nl/haalcentraal/api/brp" - } - ], - "tags": [ - { - "name": "Personen" - } - ], - "externalDocs": { - "description": "BRP API Personen website", - "url": "https://brp-api.github.io/Haal-Centraal-BRP-bevragen" - }, - "paths": { - "/personen": { - "post": { - "operationId": "Personen", - "summary": "Zoek personen", - "description": "Zoek personen met één van de onderstaande verplichte combinaties van parameters en vul ze evt. aan met optionele parameters.\n\n1. Raadpleeg met burgerservicenummer\n2. Zoek met geslachtsnaam en geboortedatum\n3. Zoek met geslachtsnaam, voornamen en gemeente van inschrijving\n4. Zoek met postcode en huisnummer\n5. Zoek met straat, huisnummer en gemeente van inschrijving\n6. Zoek met nummeraanduiding identificatie\n7. Zoek met adresseerbaarobject identificatie\n\nDefault krijg je personen terug die nog in leven zijn, tenzij je de inclusiefoverledenpersonen=true opgeeft.\n\nGebruik de fields parameter om alleen die gegevens op te vragen die je nodig hebt en waarvoor je geautoriseerd bent.\n", - "requestBody": { - "content": { - "application/json; charset=utf-8": { - "schema": { - "$ref": "#/components/schemas/PersonenQuery" - } - } - } - }, - "responses": { - "200": { - "description": "Zoekactie geslaagd\n", - "headers": { - "warning": { - "$ref": "#/components/headers/warning" - }, - "X-Rate-Limit-Limit": { - "$ref": "#/components/headers/X_Rate_Limit_Limit" - }, - "X-Rate-Limit-Remaining": { - "$ref": "#/components/headers/X_Rate_Limit_Remaining" - }, - "X-Rate-Limit-Reset": { - "$ref": "#/components/headers/X_Rate_Limit_Reset" - } - }, - "content": { - "application/json; charset=utf-8": { - "schema": { - "$ref": "#/components/schemas/PersonenQueryResponse" - } - } - } - }, - "400": { - "$ref": "#/components/responses/400" - }, - "401": { - "$ref": "#/components/responses/401" - }, - "403": { - "$ref": "#/components/responses/403" - }, - "406": { - "$ref": "#/components/responses/406" - }, - "415": { - "$ref": "#/components/responses/415" - }, - "429": { - "$ref": "#/components/responses/429" - }, - "500": { - "$ref": "#/components/responses/500" - }, - "503": { - "$ref": "#/components/responses/503" - }, - "default": { - "$ref": "#/components/responses/default" - } - }, - "tags": [ - "Personen" - ] - } - } - }, - "components": { - "schemas": { - "PersonenQuery": { - "type": "object", - "required": [ - "type", - "fields" - ], - "discriminator": { - "propertyName": "type", - "mapping": { - "ZoekMetGeslachtsnaamEnGeboortedatum": "#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatum", - "ZoekMetNaamEnGemeenteVanInschrijving": "#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijving", - "RaadpleegMetBurgerservicenummer": "#/components/schemas/RaadpleegMetBurgerservicenummer", - "ZoekMetPostcodeEnHuisnummer": "#/components/schemas/ZoekMetPostcodeEnHuisnummer", - "ZoekMetStraatHuisnummerEnGemeenteVanInschrijving": "#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijving", - "ZoekMetNummeraanduidingIdentificatie": "#/components/schemas/ZoekMetNummeraanduidingIdentificatie", - "ZoekMetAdresseerbaarObjectIdentificatie": "#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatie" - } - }, - "properties": { - "type": { - "type": "string" - }, - "fields": { - "description": "Hiermee kun je de velden opgeven die je wenst te ontvangen.\n\nVelden die automatisch worden geleverd (inOnderzoek, geheimhoudingPersoonsgegevens, opschortingBijhouding, rni en verificatie) mag je niet opgeven in fields.\nOpgave van een pad dat verwijst naar een niet-bestaand veld of naar een automatisch geleverd veld leidt tot een 400 Bad Request.\n\nMeer details over hoe fields werkt lees je in het [feature overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht#filteren-van-de-velden-van-de-gevonden-personen).\nStel je fields eenvoudig samen met de [fields tool](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/fields){:target=\"_blank\" rel=\"noopener\"}.\n", - "type": "array", - "maxItems": 130, - "minItems": 1, - "items": { - "$ref": "#/components/schemas/Field" - } - }, - "gemeenteVanInschrijving": { - "$ref": "#/components/schemas/GemeenteVanInschrijving" - } - } - }, - "InclusiefOverledenPersonen": { - "description": "Als je ook overleden personen in het antwoord wilt, geef dan de parameter inclusiefOverledenPersonen op met waarde True.\n", - "type": "boolean", - "example": true - }, - "GeslachtsnaamFilter": { - "description": "De (geslachts)naam waarvan de eventueel aanwezige voorvoegsels zijn afgesplitst. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.**\n", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,200}$|^[a-zA-Z0-9À-ž \\.\\-\\']{3,199}\\*{1}$", - "example": "Vries" - }, - "GeslachtFilter": { - "description": "Geeft aan dat de persoon een man of een vrouw is, of dat het geslacht (nog) onbekend is.\n", - "type": "string", - "pattern": "^([Mm]|[Vv]|[Oo])$", - "example": "V" - }, - "VoorvoegselFilter": { - "description": "Deel van de geslachtsnaam dat vooraf gaat aan de rest van de geslachtsnaam. **Zoeken met tekstvelden is case-insensitive.**\n", - "type": "string", - "pattern": "^[a-zA-Z \\']{1,10}$", - "example": "de" - }, - "VoornamenOptioneelFilter": { - "description": "De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan.** **Zoeken met tekstvelden is case-insensitive.**\n", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,199}\\*{0,1}$", - "example": "Dirk" - }, - "ZoekMetGeslachtsnaamEnGeboortedatum": { - "required": [ - "geslachtsnaam", - "geboortedatum" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "geboortedatum": { - "description": "Je kunt alleen zoeken met een volledige geboortedatum.\n", - "type": "string", - "format": "date", - "example": "1964-09-24" - }, - "geslachtsnaam": { - "$ref": "#/components/schemas/GeslachtsnaamFilter" - }, - "geslacht": { - "$ref": "#/components/schemas/GeslachtFilter" - }, - "voorvoegsel": { - "$ref": "#/components/schemas/VoorvoegselFilter" - }, - "voornamen": { - "$ref": "#/components/schemas/VoornamenOptioneelFilter" - } - } - } - ] - }, - "VoornamenVerplichtFilter": { - "description": "De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.**\n", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,200}$|^[a-zA-Z0-9À-ž \\.\\-\\']{3,199}\\*{1}$", - "example": "Dirk" - }, - "ZoekMetNaamEnGemeenteVanInschrijving": { - "required": [ - "geslachtsnaam", - "gemeenteVanInschrijving", - "voornamen" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "geslacht": { - "$ref": "#/components/schemas/GeslachtFilter" - }, - "geslachtsnaam": { - "$ref": "#/components/schemas/GeslachtsnaamFilter" - }, - "voorvoegsel": { - "$ref": "#/components/schemas/VoorvoegselFilter" - }, - "voornamen": { - "$ref": "#/components/schemas/VoornamenVerplichtFilter" - } - } - } - ] - }, - "Burgerservicenummer": { - "type": "string", - "pattern": "^[0-9]{9}$", - "example": "555555021" - }, - "RaadpleegMetBurgerservicenummer": { - "required": [ - "burgerservicenummer" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "burgerservicenummer": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "minItems": 1, - "maxItems": 20 - } - } - } - ] - }, - "Huisletter": { - "description": "Een toevoeging aan een huisnummer in de vorm van een letter die door de gemeente aan een adresseerbaar object is gegeven.\n", - "type": "string", - "pattern": "^[a-zA-Z]{1}$", - "example": "a" - }, - "Huisnummer": { - "description": "Een nummer dat door de gemeente aan een adresseerbaar object is gegeven.\n", - "type": "integer", - "minimum": 1, - "maximum": 99999, - "example": 14 - }, - "Huisnummertoevoeging": { - "description": "Een toevoeging aan een huisnummer of een combinatie van huisnummer en huisletter die door de gemeente aan een adresseerbaar object is gegeven.\n", - "type": "string", - "pattern": "^[a-zA-Z0-9 \\-]{1,4}$", - "example": "bis" - }, - "Postcode": { - "description": "De door PostNL vastgestelde code die bij een bepaalde combinatie van een straatnaam en een huisnummer hoort.\n", - "type": "string", - "pattern": "^[1-9]{1}[0-9]{3}[ ]?[A-Za-z]{2}$", - "example": "2341SX" - }, - "ZoekMetPostcodeEnHuisnummer": { - "required": [ - "postcode", - "huisnummer" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "huisletter": { - "$ref": "#/components/schemas/Huisletter" - }, - "huisnummer": { - "$ref": "#/components/schemas/Huisnummer" - }, - "huisnummertoevoeging": { - "$ref": "#/components/schemas/Huisnummertoevoeging" - }, - "postcode": { - "$ref": "#/components/schemas/Postcode" - }, - "geboortedatum": { - "description": "Je kunt alleen zoeken met een volledige geboortedatum.\n", - "type": "string", - "format": "date", - "example": "1964-09-24" - } - } - } - ] - }, - "StraatFilter": { - "description": "Een naam die door de gemeente aan een openbare ruimte is gegeven. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 7 letters.** **Zoeken met tekstvelden is case-insensitive.** \n", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\-\\'\\.]{1,80}$|^[a-zA-Z0-9À-ž \\-\\'\\.]{7,79}\\*{1}$|^\\*{1}[a-zA-Z0-9À-ž \\-\\'\\.]{7,79}$", - "example": "Tulpstraat" - }, - "ZoekMetStraatHuisnummerEnGemeenteVanInschrijving": { - "required": [ - "straat", - "huisnummer", - "gemeenteVanInschrijving" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "huisletter": { - "$ref": "#/components/schemas/Huisletter" - }, - "huisnummer": { - "$ref": "#/components/schemas/Huisnummer" - }, - "huisnummertoevoeging": { - "$ref": "#/components/schemas/Huisnummertoevoeging" - }, - "straat": { - "$ref": "#/components/schemas/StraatFilter" - } - } - } - ] - }, - "NummeraanduidingIdentificatie": { - "description": "Unieke identificatie van een nummeraanduiding (en het bijbehorende adres) in de BAG.\n", - "type": "string", - "pattern": "^[0-9]{16}$", - "example": "0518200000366054" - }, - "ZoekMetNummeraanduidingIdentificatie": { - "required": [ - "nummeraanduidingIdentificatie" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "nummeraanduidingIdentificatie": { - "$ref": "#/components/schemas/NummeraanduidingIdentificatie" - } - } - } - ] - }, - "AdresseerbaarObjectIdentificatie": { - "type": "string", - "pattern": "^[0-9]{16}$", - "description": "De verblijfplaats van de persoon kan een ligplaats, een standplaats of een verblijfsobject zijn.\n", - "example": "0226010000038820" - }, - "ZoekMetAdresseerbaarObjectIdentificatie": { - "required": [ - "adresseerbaarObjectIdentificatie" - ], - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQuery" - }, - { - "type": "object", - "properties": { - "inclusiefOverledenPersonen": { - "$ref": "#/components/schemas/InclusiefOverledenPersonen" - }, - "adresseerbaarObjectIdentificatie": { - "$ref": "#/components/schemas/AdresseerbaarObjectIdentificatie" - } - } - } - ] - }, - "Field": { - "description": "Het pad naar een gewenst veld in punt-gescheiden formaat. Bijvoorbeeld \"burgerservicenummer\", \"geboorte.datum\", \"partners.naam.voornamen\".\n", - "type": "string", - "pattern": "^[a-zA-Z0-9\\._]{1,200}$" - }, - "GemeenteVanInschrijving": { - "description": "Een code die aangeeft in welke gemeente de persoon woont, of de laatste gemeente waar de persoon heeft gewoond, of de gemeente waar de persoon voor het eerst is ingeschreven.\n", - "type": "string", - "pattern": "^[0-9]{4}$", - "example": "0518" - }, - "Foutbericht": { - "type": "object", - "description": "Terugmelding bij een fout. JSON representatie in lijn met [RFC7807](https://tools.ietf.org/html/rfc7807).", - "properties": { - "type": { - "type": "string", - "format": "uri", - "description": "Link naar meer informatie over deze fout" - }, - "title": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-]{1,80}$", - "description": "Beschrijving van de fout" - }, - "status": { - "type": "integer", - "minimum": 100, - "maximum": 600, - "description": "Http status code" - }, - "detail": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\(\\)\\,]{1,200}$", - "description": "Details over de fout" - }, - "instance": { - "type": "string", - "format": "uri", - "description": "Uri van de aanroep die de fout heeft veroorzaakt" - }, - "code": { - "type": "string", - "pattern": "^[a-zA-Z0-9]{1,25}$", - "description": "Systeemcode die het type fout aangeeft", - "minLength": 1 - } - } - }, - "PersonenQueryResponse": { - "type": "object", - "required": [ - "type" - ], - "discriminator": { - "propertyName": "type", - "mapping": { - "ZoekMetGeslachtsnaamEnGeboortedatum": "#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatumResponse", - "ZoekMetNaamEnGemeenteVanInschrijving": "#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijvingResponse", - "RaadpleegMetBurgerservicenummer": "#/components/schemas/RaadpleegMetBurgerservicenummerResponse", - "ZoekMetPostcodeEnHuisnummer": "#/components/schemas/ZoekMetPostcodeEnHuisnummerResponse", - "ZoekMetStraatHuisnummerEnGemeenteVanInschrijving": "#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse", - "ZoekMetNummeraanduidingIdentificatie": "#/components/schemas/ZoekMetNummeraanduidingIdentificatieResponse", - "ZoekMetAdresseerbaarObjectIdentificatie": "#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatieResponse" - } - }, - "properties": { - "type": { - "type": "string" - } - } - }, - "AbstractDatum": { - "type": "object", - "required": [ - "type", - "langFormaat" - ], - "properties": { - "type": { - "type": "string" - }, - "langFormaat": { - "type": "string", - "pattern": "^[a-z0-9 ]{1,17}$" - } - }, - "discriminator": { - "propertyName": "type", - "mapping": { - "Datum": "#/components/schemas/VolledigeDatum", - "DatumOnbekend": "#/components/schemas/DatumOnbekend", - "JaarDatum": "#/components/schemas/JaarDatum", - "JaarMaandDatum": "#/components/schemas/JaarMaandDatum" - } - } - }, - "VolledigeDatum": { - "description": "Datum conform iso8601", - "allOf": [ - { - "$ref": "#/components/schemas/AbstractDatum" - }, - { - "type": "object", - "properties": { - "datum": { - "type": "string", - "format": "date" - } - } - } - ], - "required": [ - "datum" - ], - "example": { - "value": { - "type": "Datum", - "datum": "2018-07-01", - "langFormaat": "1 juli 2018" - } - } - }, - "DatumOnbekend": { - "description": "representatie voor een volledig onbekend datum", - "allOf": [ - { - "$ref": "#/components/schemas/AbstractDatum" - }, - { - "type": "object", - "properties": { - "onbekend": { - "type": "boolean", - "default": true - } - } - } - ], - "required": [ - "onbekend" - ], - "example": { - "value": { - "type": "DatumOnbekend", - "onbekend": true, - "langFormaat": "onbekend" - } - } - }, - "Jaar": { - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 9999 - }, - "JaarDatum": { - "description": "representatie voor een datum waarvan maand en dag onbekend zijn", - "allOf": [ - { - "$ref": "#/components/schemas/AbstractDatum" - }, - { - "type": "object", - "properties": { - "jaar": { - "$ref": "#/components/schemas/Jaar" - } - } - } - ], - "required": [ - "jaar" - ], - "example": { - "value": { - "type": "JaarDatum", - "jaar": 2018, - "langFormaat": 2018 - } - } - }, - "Maand": { - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 12 - }, - "JaarMaandDatum": { - "description": "representatie voor een datum waarvan de dag onbekend is", - "allOf": [ - { - "$ref": "#/components/schemas/AbstractDatum" - }, - { - "type": "object", - "properties": { - "jaar": { - "$ref": "#/components/schemas/Jaar" - }, - "maand": { - "$ref": "#/components/schemas/Maand" - } - } - } - ], - "required": [ - "jaar", - "maand" - ], - "example": { - "value": { - "type": "JaarMaandDatum", - "jaar": 2018, - "maand": 7, - "langFormaat": "juli 2018" - } - } - }, - "GeboorteBasis": { - "type": "object", - "properties": { - "datum": { - "$ref": "#/components/schemas/AbstractDatum" - } - } - }, - "InOnderzoek": { - "type": "object", - "properties": { - "datumIngangOnderzoek": { - "$ref": "#/components/schemas/AbstractDatum" - } - } - }, - "GeboorteInOnderzoekBeperkt": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "datum": { - "type": "boolean" - } - } - } - ] - }, - "GeboorteBeperkt": { - "allOf": [ - { - "$ref": "#/components/schemas/GeboorteBasis" - }, - { - "type": "object", - "properties": { - "inOnderzoek": { - "$ref": "#/components/schemas/GeboorteInOnderzoekBeperkt" - } - } - } - ] - }, - "GeheimhoudingPersoonsgegevens": { - "description": "Gegevens mogen niet worden verstrekt aan derden / maatschappelijke instellingen.\n", - "type": "boolean" - }, - "Waardetabel": { - "type": "object", - "properties": { - "code": { - "type": "string", - "pattern": "^[a-zA-Z0-9 \\.]+$", - "example": "6030" - }, - "omschrijving": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\'\\,\\(\\)\\.\\-]{1,200}$", - "example": "Nederland" - } - } - }, - "PersoonInOnderzoekBeperkt": { - "description": "Geeft aan welke gegevens van de persoon in onderzoek zijn.\n* **datumIngangOnderzoekPersoon - Deze datum heeft betrekking op burgerservicenummer, geslacht en leeftijd\n", - "type": "object", - "properties": { - "datumIngangOnderzoekPersoon": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "burgerservicenummer": { - "type": "boolean" - }, - "geslacht": { - "type": "boolean" - }, - "leeftijd": { - "type": "boolean" - } - } - }, - "Leeftijd": { - "type": "integer", - "description": "Leeftijd in jaren op het moment van bevragen.\n", - "example": 34, - "minimum": 0, - "maximum": 150 - }, - "Voornamen": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,200}$", - "maxLength": 200, - "description": "De verzameling namen voor de geslachtsnaam, gescheiden door spaties.\n" - }, - "AdellijkeTitelPredicaatSoort": { - "type": "string", - "enum": [ - "titel", - "predicaat" - ] - }, - "AdellijkeTitelPredicaatType": { - "description": "Wordt gevuld met waarden uit de landelijke tabel 'Adellijke titel/predicaat'. De property soort geeft aan of het een 'predicaat' of een 'titel' is.\n", - "allOf": [ - { - "$ref": "#/components/schemas/Waardetabel" - }, - { - "properties": { - "soort": { - "$ref": "#/components/schemas/AdellijkeTitelPredicaatSoort" - } - }, - "example": { - "value": { - "code": "JV", - "omschrijving": "jonkvrouw", - "soort": "predicaat" - } - } - } - ] - }, - "Voorvoegsel": { - "type": "string", - "pattern": "^[a-zA-Z \\']{1,10}$", - "maxLength": 10, - "example": "de" - }, - "Geslachtsnaam": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,200}$", - "description": "De achternaam van een persoon.\n", - "example": "Vries" - }, - "Voorletters": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.]{1,40}$", - "description": "De voorletters van de persoon, afgeleid van de voornamen.\n", - "example": "P.J." - }, - "VolledigeNaam": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,450}$", - "description": "Combinatie van predicaat, voornamen, adellijke titel, voorvoegsels en geslachtsnaam, zonder toevoeging van een eventuele partnernaam.\n", - "example": "Pieter Jan de Vries" - }, - "NaamBasis": { - "type": "object", - "properties": { - "voornamen": { - "$ref": "#/components/schemas/Voornamen" - }, - "adellijkeTitelPredicaat": { - "$ref": "#/components/schemas/AdellijkeTitelPredicaatType" - }, - "voorvoegsel": { - "$ref": "#/components/schemas/Voorvoegsel" - }, - "geslachtsnaam": { - "$ref": "#/components/schemas/Geslachtsnaam" - }, - "voorletters": { - "$ref": "#/components/schemas/Voorletters" - }, - "volledigeNaam": { - "$ref": "#/components/schemas/VolledigeNaam" - } - } - }, - "NaamInOnderzoek": { - "description": "Geeft aan welke gegevens over de naam in onderzoek zijn.\n", - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "voornamen": { - "type": "boolean" - }, - "adellijkeTitelPredicaat": { - "type": "boolean" - }, - "voorvoegsel": { - "type": "boolean" - }, - "geslachtsnaam": { - "type": "boolean" - }, - "voorletters": { - "type": "boolean" - } - } - } - ] - }, - "NaamPersoonInOnderzoekBeperkt": { - "allOf": [ - { - "$ref": "#/components/schemas/NaamInOnderzoek" - }, - { - "type": "object", - "properties": { - "volledigeNaam": { - "type": "boolean" - } - } - } - ] - }, - "NaamPersoonBeperkt": { - "description": "Gegevens over de naam van de persoon.\n", - "allOf": [ - { - "$ref": "#/components/schemas/NaamBasis" - }, - { - "properties": { - "inOnderzoek": { - "$ref": "#/components/schemas/NaamPersoonInOnderzoekBeperkt" - } - } - } - ] - }, - "OpschortingBijhoudingBasis": { - "type": "object", - "description": "* **reden** - wordt gevuld met waarden voor 'Reden_Opschorting_Bijhouding' in 'tabelwaarden.csv'.\n", - "properties": { - "reden": { - "$ref": "#/components/schemas/Waardetabel" - } - } - }, - "OpschortingBijhouding": { - "allOf": [ - { - "$ref": "#/components/schemas/OpschortingBijhoudingBasis" - }, - { - "type": "object", - "description": "* **datum**: de datum waarop de bijhouding van de persoonsgegevens is gestaakt.\n", - "properties": { - "datum": { - "$ref": "#/components/schemas/AbstractDatum" - } - } - } - ] - }, - "Adresregel1": { - "type": "string", - "maxLength": 40, - "description": "Het eerste deel van een adres is een combinatie van de straat en huisnummer.\n", - "example": "Kappeyne v d Cappellostr 26A-3" - }, - "Adresregel2": { - "type": "string", - "maxLength": 50, - "description": "Het tweede deel van een adres is een combinatie van woonplaats eventueel in combinatie met de postcode.\n", - "example": "1234AA Nootdorp" - }, - "Adresregel3": { - "type": "string", - "maxLength": 35, - "description": "Het derde deel van een adres is optioneel. Het gaat om een of meer geografische gebieden van het adres in het buitenland.\n", - "example": "Selangor" - }, - "IndicatieVastgesteldVerblijftNietOpAdres": { - "description": "Geeft aan dat is vastgesteld dat de persoon niet meer op de geregistreerde adres/locatie staat ingeschreven.\n", - "type": "boolean" - }, - "AdresseringBasis": { - "type": "object", - "description": "", - "properties": { - "adresregel1": { - "$ref": "#/components/schemas/Adresregel1" - }, - "adresregel2": { - "$ref": "#/components/schemas/Adresregel2" - }, - "adresregel3": { - "$ref": "#/components/schemas/Adresregel3" - }, - "land": { - "$ref": "#/components/schemas/Waardetabel" - }, - "indicatieVastgesteldVerblijftNietOpAdres": { - "$ref": "#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres" - } - } - }, - "AdresseringInOnderzoekBeperkt": { - "description": "Geeft aan welke gegevens over de adressering in onderzoek zijn.\n", - "type": "object", - "properties": { - "adresregel1": { - "type": "boolean" - }, - "adresregel2": { - "type": "boolean" - }, - "adresregel3": { - "type": "boolean" - }, - "land": { - "type": "boolean" - }, - "datumIngangOnderzoekVerblijfplaats": { - "$ref": "#/components/schemas/AbstractDatum" - } - } - }, - "AdresseringBeperkt": { - "allOf": [ - { - "$ref": "#/components/schemas/AdresseringBasis" - }, - { - "properties": { - "inOnderzoek": { - "$ref": "#/components/schemas/AdresseringInOnderzoekBeperkt" - } - } - } - ] - }, - "OmschrijvingVerdrag": { - "type": "string", - "description": "Omschrijving van het verdrag op basis waarvan een zusterorganisatie in het buitenland de gegevens bij de RNI-deelnemer heeft aangeleverd.\n", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,50}$" - }, - "Categorie": { - "type": "string", - "description": "Naam van categorie waarop de RNI-deelnemer gegevens heeft aangeleverd", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\'\\/]{1,40}$", - "example": "Verblijfplaats" - }, - "RniDeelnemer": { - "type": "object", - "description": "Gegevens over de RNI-deelnemer die de gegevens in de betrokken categorie heeft aangeleverd.", - "properties": { - "deelnemer": { - "$ref": "#/components/schemas/Waardetabel" - }, - "omschrijvingVerdrag": { - "$ref": "#/components/schemas/OmschrijvingVerdrag" - }, - "categorie": { - "$ref": "#/components/schemas/Categorie" - } - } - }, - "OmschrijvingVerificatie": { - "type": "string", - "description": "Omschrijving van de verificatie van de rni-gegevens\n", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,50}$" - }, - "Verificatie": { - "type": "object", - "properties": { - "datum": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "omschrijving": { - "$ref": "#/components/schemas/OmschrijvingVerificatie" - } - } - }, - "PersoonBeperkt": { - "type": "object", - "description": "* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "geboorte": { - "$ref": "#/components/schemas/GeboorteBeperkt" - }, - "geheimhoudingPersoonsgegevens": { - "$ref": "#/components/schemas/GeheimhoudingPersoonsgegevens" - }, - "geslacht": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/PersoonInOnderzoekBeperkt" - }, - "leeftijd": { - "$ref": "#/components/schemas/Leeftijd" - }, - "naam": { - "$ref": "#/components/schemas/NaamPersoonBeperkt" - }, - "opschortingBijhouding": { - "$ref": "#/components/schemas/OpschortingBijhouding" - }, - "adressering": { - "$ref": "#/components/schemas/AdresseringBeperkt" - }, - "rni": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RniDeelnemer" - } - }, - "verificatie": { - "$ref": "#/components/schemas/Verificatie" - } - } - }, - "ZoekMetGeslachtsnaamEnGeboortedatumResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "description": "* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "items": { - "$ref": "#/components/schemas/PersoonBeperkt" - } - } - } - } - ] - }, - "ZoekMetNaamEnGemeenteVanInschrijvingResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "description": "* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "items": { - "$ref": "#/components/schemas/PersoonBeperkt" - } - } - } - } - ] - }, - "ANummer": { - "description": "Het A-nummer van de persoon\n", - "type": "string", - "pattern": "^[0-9]{10}$" - }, - "PersoonInOnderzoek": { - "description": "Geeft aan welke gegevens van de persoon in onderzoek zijn.\n* **datumIngangOnderzoekPersoon - Deze datum heeft betrekking op burgerservicenummer, geslacht en leeftijd\n* **datumIngangOnderzoekGemeente - Deze datum heeft betrekking op gemeenteVanInschrijving en datumInschrijvingInGemeente\n* **datumIngangOnderzoekGezag - Deze datumingang heeft betrekking op indicatieCurateleRegister en indicatieGezagMinderjarige\n", - "type": "object", - "properties": { - "datumIngangOnderzoekPersoon": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "datumIngangOnderzoekGemeente": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "datumIngangOnderzoekGezag": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "burgerservicenummer": { - "type": "boolean" - }, - "geslacht": { - "type": "boolean" - }, - "leeftijd": { - "type": "boolean" - }, - "gemeenteVanInschrijving": { - "type": "boolean" - }, - "datumInschrijvingInGemeente": { - "type": "boolean" - }, - "indicatieCurateleRegister": { - "type": "boolean" - }, - "indicatieGezagMinderjarige": { - "type": "boolean", - "deprecated": true - } - } - }, - "UitsluitingKiesrecht": { - "type": "object", - "properties": { - "uitgeslotenVanKiesrecht": { - "type": "boolean", - "example": true - }, - "einddatum": { - "$ref": "#/components/schemas/AbstractDatum" - } - } - }, - "EuropeesKiesrecht": { - "type": "object", - "description": "* **aanduiding** - Geeft aan of persoon een oproep moet ontvangen voor verkiezingen voor het Europees parlement. Wordt gevuld met waarden voor 'Europees_Kiesrecht' in 'tabelwaarden.csv'.\n", - "properties": { - "aanduiding": { - "$ref": "#/components/schemas/Waardetabel" - }, - "einddatumUitsluiting": { - "$ref": "#/components/schemas/AbstractDatum" - } - } - }, - "NaamPersoonInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/NaamInOnderzoek" - }, - { - "type": "object", - "properties": { - "aanduidingNaamgebruik": { - "type": "boolean" - }, - "volledigeNaam": { - "type": "boolean" - } - } - } - ] - }, - "NaamPersoon": { - "description": "Gegevens over de naam van de persoon.\n* **aanduidingNaamgebruik** - wordt gevuld met waarden voor 'Naamgebruik' in 'tabelwaarden.csv'.\n", - "allOf": [ - { - "$ref": "#/components/schemas/NaamBasis" - }, - { - "properties": { - "aanduidingNaamgebruik": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/NaamPersoonInOnderzoek" - } - } - } - ] - }, - "AbstractNationaliteit": { - "type": "object", - "description": "* **redenOpname** - De reden op grond waarvan de persoon de nationaliteit gekregen heeft. Wordt gevuld met waarden uit de landelijke tabel 'Reden opnemen/beëindigen nationaliteit'.\n", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string" - }, - "redenOpname": { - "$ref": "#/components/schemas/Waardetabel" - } - }, - "discriminator": { - "propertyName": "type", - "mapping": { - "Nationaliteit": "#/components/schemas/NationaliteitBekend", - "BehandeldAlsNederlander": "#/components/schemas/BehandeldAlsNederlander", - "VastgesteldNietNederlander": "#/components/schemas/VastgesteldNietNederlander", - "Staatloos": "#/components/schemas/Staatloos", - "NationaliteitOnbekend": "#/components/schemas/NationaliteitOnbekend" - } - } - }, - "NationaliteitBekendInOnderzoek": { - "description": "Geeft aan welke gegevens over de nationaliteit in onderzoek zijn.\n", - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "type": { - "type": "boolean" - }, - "nationaliteit": { - "type": "boolean" - }, - "redenOpname": { - "type": "boolean" - } - } - } - ] - }, - "NationaliteitBekend": { - "description": "* **nationaliteit** - wordt gevuld met waarden uit de landelijke tabel 'Nationaliteiten'.\n", - "allOf": [ - { - "$ref": "#/components/schemas/AbstractNationaliteit" - }, - { - "type": "object", - "properties": { - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "nationaliteit": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/NationaliteitBekendInOnderzoek" - } - } - } - ] - }, - "BijzonderNederlanderschapInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "type": { - "type": "boolean" - }, - "redenOpname": { - "type": "boolean" - } - } - } - ] - }, - "BehandeldAlsNederlander": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractNationaliteit" - }, - { - "type": "object", - "properties": { - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/BijzonderNederlanderschapInOnderzoek" - } - } - } - ] - }, - "VastgesteldNietNederlander": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractNationaliteit" - }, - { - "type": "object", - "properties": { - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/BijzonderNederlanderschapInOnderzoek" - } - } - } - ] - }, - "StaatloosInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "type": { - "type": "boolean" - }, - "redenOpname": { - "type": "boolean" - } - } - } - ] - }, - "Staatloos": { - "description": "* **redenOpname** : De reden op grond waarvan de persoon de nationaliteit gekregen heeft.\n", - "allOf": [ - { - "$ref": "#/components/schemas/AbstractNationaliteit" - }, - { - "type": "object", - "properties": { - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/StaatloosInOnderzoek" - } - } - } - ] - }, - "NationaliteitOnbekendInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "type": { - "type": "boolean" - }, - "redenOpname": { - "type": "boolean" - } - } - } - ] - }, - "NationaliteitOnbekend": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractNationaliteit" - }, - { - "type": "object", - "properties": { - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/NationaliteitOnbekendInOnderzoek" - } - } - } - ] - }, - "GeboorteInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "datum": { - "type": "boolean" - }, - "land": { - "type": "boolean" - }, - "plaats": { - "type": "boolean" - } - } - } - ] - }, - "Geboorte": { - "description": "Gegevens over de geboorte.\n* **datum** - datum waarop de persoon is geboren.\n* **land** - land waar de persoon is geboren. Wordt gevuld met waarden uit de landelijke tabel 'Landen'.\n* **plaats** - gemeente waar de persoon is geboren. Wordt gevuld met waarden uit de landelijke tabel \"Gemeenten\" voor een gemeente in Nederland of als de persoon is geboren buiten Nederland de omschrijving van een buitenlandse plaatsnaam of aanduiding.\n", - "allOf": [ - { - "$ref": "#/components/schemas/GeboorteBasis" - }, - { - "type": "object", - "properties": { - "land": { - "$ref": "#/components/schemas/Waardetabel" - }, - "plaats": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/GeboorteInOnderzoek" - } - } - } - ] - }, - "OverlijdenInOnderzoek": { - "description": "Geeft aan welke gegevens over het overlijden van de persoon in onderzoek zijn.\n", - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "datum": { - "type": "boolean" - }, - "land": { - "type": "boolean" - }, - "plaats": { - "type": "boolean" - } - } - } - ] - }, - "Overlijden": { - "description": "Gegevens over het overlijden.\n* **datum** - datum waarop de persoon is overleden.\n* **land** - land waar de persoon is overleden. Wordt gevuld met waarden uit de landelijke tabel 'Landen'.\n* **plaats** - gemeente waar de persoon is overleden. Wordt gevuld met waarden uit de landelijke tabel \"Gemeenten\".\n", - "type": "object", - "properties": { - "datum": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "land": { - "$ref": "#/components/schemas/Waardetabel" - }, - "plaats": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/OverlijdenInOnderzoek" - } - } - }, - "AbstractVerblijfplaats": { - "type": "object", - "description": "Gegevens over het verblijf of de woonlocatie van een persoon.\n", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string" - } - }, - "discriminator": { - "propertyName": "type", - "mapping": { - "VerblijfplaatsBuitenland": "#/components/schemas/VerblijfplaatsBuitenland", - "Adres": "#/components/schemas/Adres", - "VerblijfplaatsOnbekend": "#/components/schemas/VerblijfplaatsOnbekend", - "Locatie": "#/components/schemas/Locatie" - } - }, - "example": { - "type": "Adres", - "functieAdres": { - "code": "W", - "omschrijving": "woonadres" - }, - "adresseerbaarObjectIdentificatie": 226010000038820 - } - }, - "Regel1": { - "type": "string", - "maxLength": 40, - "description": "Het eerste deel van een buitenlands adres. Vaak is dit een combinatie van de straat en huisnummer.\n", - "example": "1600 Pennsylvania Avenue NW" - }, - "Regel2": { - "type": "string", - "maxLength": 50, - "description": "Het tweede deel van een buitenlands adres. Vaak is dit een combinatie van woonplaats eventueel in combinatie met de postcode.\n", - "example": "Washington, DC 20500" - }, - "Regel3": { - "type": "string", - "maxLength": 35, - "description": "Het derde deel van een buitenlands adres is optioneel. Het gaat om een of meer geografische gebieden van het adres in het buitenland.\n", - "example": "Selangor" - }, - "VerblijfadresBuitenlandInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "regel1": { - "type": "boolean" - }, - "regel2": { - "type": "boolean" - }, - "regel3": { - "type": "boolean" - }, - "land": { - "type": "boolean" - } - } - } - ] - }, - "VerblijfadresBuitenland": { - "type": "object", - "properties": { - "regel1": { - "$ref": "#/components/schemas/Regel1" - }, - "regel2": { - "$ref": "#/components/schemas/Regel2" - }, - "regel3": { - "$ref": "#/components/schemas/Regel3" - }, - "land": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/VerblijfadresBuitenlandInOnderzoek" - } - } - }, - "VerblijfplaatsBuitenlandInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "type": { - "type": "boolean" - }, - "datumVan": { - "type": "boolean" - }, - "datumIngangGeldigheid": { - "type": "boolean", - "deprecated": true - } - } - } - ] - }, - "VerblijfplaatsBuitenland": { - "description": "* **gemeenteVanInschrijving** - wordt gevuld met waarden uit de landelijke tabel 'Gemeenten'.\n* **land** - land waar de persoon is overleden. Wordt gevuld met waarden uit de landelijke tabel 'Landen'.\n", - "allOf": [ - { - "$ref": "#/components/schemas/AbstractVerblijfplaats" - }, - { - "type": "object", - "properties": { - "verblijfadres": { - "$ref": "#/components/schemas/VerblijfadresBuitenland" - }, - "datumVan": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/AbstractDatum", - "deprecated": true - }, - "inOnderzoek": { - "$ref": "#/components/schemas/VerblijfplaatsBuitenlandInOnderzoek" - } - } - } - ] - }, - "OfficieleStraatnaam": { - "description": "De officiële naam van een openbare ruimte uit de Basisregistratie Gebouwen en Adressen (BAG).\n", - "type": "string", - "maxLength": 80 - }, - "KorteStraatnaam": { - "description": "De officiële naam van een openbare ruimte uit de Basisregistratie Gebouwen en Adressen (BAG), zo nodig verkort tot maximaal 24 tekens, of de straatnaam van een niet-BAG adres.\n", - "type": "string", - "maxLength": 24 - }, - "Woonplaats": { - "description": "Een woonplaats is een gedeelte van het grondgebied van de gemeente met een naam.\n", - "title": "woonplaats naam", - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\(\\)\\,\\.\\-\\']{1,80}$", - "example": "Duiven" - }, - "VerblijfadresBinnenlandInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "aanduidingBijHuisnummer": { - "type": "boolean" - }, - "huisletter": { - "type": "boolean" - }, - "huisnummer": { - "type": "boolean" - }, - "huisnummertoevoeging": { - "type": "boolean" - }, - "officieleStraatnaam": { - "type": "boolean" - }, - "postcode": { - "type": "boolean" - }, - "korteStraatnaam": { - "type": "boolean" - }, - "woonplaats": { - "type": "boolean" - } - } - } - ] - }, - "VerblijfadresBinnenland": { - "type": "object", - "properties": { - "officieleStraatnaam": { - "$ref": "#/components/schemas/OfficieleStraatnaam" - }, - "korteStraatnaam": { - "$ref": "#/components/schemas/KorteStraatnaam" - }, - "huisnummer": { - "$ref": "#/components/schemas/Huisnummer" - }, - "huisletter": { - "$ref": "#/components/schemas/Huisletter" - }, - "huisnummertoevoeging": { - "$ref": "#/components/schemas/Huisnummertoevoeging" - }, - "aanduidingBijHuisnummer": { - "$ref": "#/components/schemas/Waardetabel" - }, - "postcode": { - "$ref": "#/components/schemas/Postcode" - }, - "woonplaats": { - "$ref": "#/components/schemas/Woonplaats" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/VerblijfadresBinnenlandInOnderzoek" - } - } - }, - "AdresInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "type": { - "type": "boolean" - }, - "datumVan": { - "type": "boolean" - }, - "datumIngangGeldigheid": { - "type": "boolean", - "deprecated": true - }, - "nummeraanduidingIdentificatie": { - "type": "boolean" - }, - "adresseerbaarObjectIdentificatie": { - "type": "boolean" - }, - "functieAdres": { - "type": "boolean" - } - } - } - ] - }, - "Adres": { - "description": "Gegevens over het adres van een persoon.\n* **gemeenteVanInschrijving** - wordt gevuld met waarden uit de landelijke tabel 'Gemeenten'.\n* **functieAdres** - wordt gevuld met waarden voor 'Functie_Adres' in 'tabelwaarden.csv'.\n* **aanduidingBijHuisnummer** - wordt gevuld met waarden voor 'Aanduiding_Bij_Huisnummer' in 'tabelwaarden.csv'.\n* **datumVan** : de datum van aangifte of ambtshalve melding van verblijf en adres.\n* **datumIngangGeldigheid** : datum waarop de gegevens over de verblijfplaats geldig zijn geworden.\n", - "allOf": [ - { - "$ref": "#/components/schemas/AbstractVerblijfplaats" - }, - { - "type": "object", - "properties": { - "verblijfadres": { - "$ref": "#/components/schemas/VerblijfadresBinnenland" - }, - "functieAdres": { - "$ref": "#/components/schemas/Waardetabel" - }, - "adresseerbaarObjectIdentificatie": { - "$ref": "#/components/schemas/AdresseerbaarObjectIdentificatie" - }, - "nummeraanduidingIdentificatie": { - "$ref": "#/components/schemas/NummeraanduidingIdentificatie" - }, - "datumVan": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/AbstractDatum", - "deprecated": true - }, - "indicatieVastgesteldVerblijftNietOpAdres": { - "$ref": "#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/AdresInOnderzoek" - } - } - } - ] - }, - "VerblijfplaatsOnbekendInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "type": { - "type": "boolean" - }, - "datumVan": { - "type": "boolean" - }, - "datumIngangGeldigheid": { - "type": "boolean", - "deprecated": true - } - } - } - ] - }, - "VerblijfplaatsOnbekend": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractVerblijfplaats" - }, - { - "type": "object", - "properties": { - "datumVan": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/AbstractDatum", - "deprecated": true - }, - "inOnderzoek": { - "$ref": "#/components/schemas/VerblijfplaatsOnbekendInOnderzoek" - } - } - } - ] - }, - "Locatiebeschrijving": { - "type": "string", - "maxLength": 35, - "description": "Omschrijving van de ligging van een verblijfsobject, standplaats of ligplaats.\n", - "example": "Naast de derde brug" - }, - "VerblijfadresLocatieInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "locatiebeschrijving": { - "type": "boolean" - } - } - } - ] - }, - "VerblijfadresLocatie": { - "type": "object", - "properties": { - "locatiebeschrijving": { - "$ref": "#/components/schemas/Locatiebeschrijving" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/VerblijfadresLocatieInOnderzoek" - } - } - }, - "LocatieInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "type": { - "type": "boolean" - }, - "datumVan": { - "type": "boolean" - }, - "functieAdres": { - "type": "boolean" - }, - "datumIngangGeldigheid": { - "type": "boolean", - "deprecated": true - } - } - } - ] - }, - "Locatie": { - "description": "* **gemeenteVanInschrijving** - wordt gevuld met waarden uit de landelijke tabel 'Gemeenten'.\n* **functieAdres** - wordt gevuld met waarden voor 'Functie_Adres' in 'tabelwaarden.csv'.\n* **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland. Wordt gevuld met waarden uit de landelijke tabel 'Landen'.\n", - "allOf": [ - { - "$ref": "#/components/schemas/AbstractVerblijfplaats" - }, - { - "type": "object", - "properties": { - "datumVan": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "functieAdres": { - "$ref": "#/components/schemas/Waardetabel" - }, - "verblijfadres": { - "$ref": "#/components/schemas/VerblijfadresLocatie" - }, - "datumIngangGeldigheid": { - "$ref": "#/components/schemas/AbstractDatum", - "deprecated": true - }, - "indicatieVastgesteldVerblijftNietOpAdres": { - "$ref": "#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/LocatieInOnderzoek" - } - } - } - ] - }, - "VanuitVerblijfplaatsOnbekend": { - "type": "boolean", - "description": "Geeft aan dat de persoon is teruggekeerd uit een situatie van onbekende verblijfplaats\n" - }, - "IndicatieVestigingVanuitBuitenland": { - "type": "boolean", - "description": "Geeft aan dat de persoon zich vanuit het buitenland heeft ingeschreven.\n" - }, - "ImmigratieInOnderzoek": { - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "datumVestigingInNederland": { - "type": "boolean" - }, - "landVanwaarIngeschreven": { - "type": "boolean" - }, - "vanuitVerblijfplaatsOnbekend": { - "type": "boolean" - }, - "indicatieVestigingVanuitBuitenland": { - "type": "boolean" - } - } - } - ] - }, - "Immigratie": { - "type": "object", - "description": "Gegevens over het het immigratie van een persoon.\n * **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland.\n", - "properties": { - "datumVestigingInNederland": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "landVanwaarIngeschreven": { - "$ref": "#/components/schemas/Waardetabel" - }, - "vanuitVerblijfplaatsOnbekend": { - "$ref": "#/components/schemas/VanuitVerblijfplaatsOnbekend" - }, - "indicatieVestigingVanuitBuitenland": { - "$ref": "#/components/schemas/IndicatieVestigingVanuitBuitenland" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/ImmigratieInOnderzoek" - } - } - }, - "Aanhef": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,650}$", - "description": "Kun je gebruiken als aanhef in een brief gericht aan persoon.\n", - "example": "Hoogwelgeboren heer" - }, - "Aanschrijfwijze": { - "type": "object", - "description": "Samengestelde naam en aanspreekvorm die je kunt gebruiken in de communicatie met de persoon.\n", - "properties": { - "naam": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,650}$", - "example": "H.W. baron van den Aedel" - }, - "aanspreekvorm": { - "description": "Deze regel moet als aparte regel boven de samengestelde naam worden geplaatst. Komt alleen voor bij personen met een adellijke titel of predicaat.\n", - "type": "string", - "pattern": "^[a-zA-Z ]{1,25}$", - "example": "De hoogwelgeboren heer" - } - } - }, - "GebruikInLopendeTekst": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\.\\-\\']{1,650}$", - "description": "Naam van persoon die je kunt gebruiken als je in lopende tekst (bijvoorbeeld in een brief) aan persoon refereert.\n", - "example": "baron Van den Aedel" - }, - "AdresseringInOnderzoek": { - "description": "Geeft aan welke gegevens over de adressering in onderzoek zijn.\n", - "type": "object", - "properties": { - "aanhef": { - "type": "boolean" - }, - "adresregel1": { - "type": "boolean" - }, - "adresregel2": { - "type": "boolean" - }, - "adresregel3": { - "type": "boolean" - }, - "land": { - "type": "boolean" - }, - "aanschrijfwijze": { - "type": "boolean" - }, - "gebruikInLopendeTekst": { - "type": "boolean" - }, - "datumIngangOnderzoekPersoon": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "datumIngangOnderzoekPartner": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "datumIngangOnderzoekVerblijfplaats": { - "$ref": "#/components/schemas/AbstractDatum" - } - } - }, - "Adressering": { - "allOf": [ - { - "$ref": "#/components/schemas/AdresseringBasis" - }, - { - "properties": { - "aanhef": { - "$ref": "#/components/schemas/Aanhef" - }, - "aanschrijfwijze": { - "$ref": "#/components/schemas/Aanschrijfwijze" - }, - "gebruikInLopendeTekst": { - "$ref": "#/components/schemas/GebruikInLopendeTekst" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/AdresseringInOnderzoek" - } - } - } - ] - }, - "IndicatieCurateleRegister": { - "type": "boolean", - "description": "Geeft aan dat de persoon onder curatele is gesteld.\n", - "example": true - }, - "AbstractGezagsrelatie": { - "type": "object", - "required": [ - "type", - "minderjarige" - ], - "properties": { - "type": { - "type": "string" - }, - "minderjarige": { - "$ref": "#/components/schemas/Minderjarige" - } - }, - "discriminator": { - "propertyName": "type", - "mapping": { - "TweehoofdigOuderlijkGezag": "#/components/schemas/TweehoofdigOuderlijkGezag", - "EenhoofdigOuderlijkGezag": "#/components/schemas/EenhoofdigOuderlijkGezag", - "GezamenlijkGezag": "#/components/schemas/GezamenlijkGezag", - "Voogdij": "#/components/schemas/Voogdij", - "TijdelijkGeenGezag": "#/components/schemas/TijdelijkGeenGezag", - "GezagNietTeBepalen": "#/components/schemas/GezagNietTeBepalen" - } - }, - "example": { - "type": "TweehoofdigOuderlijkGezag", - "ouders": [ - { - "burgerservicenummer": "999998870" - }, - { - "burgerservicenummer": "999998882" - } - ], - "minderjarige": { - "burgerservicenummer": "999998894" - } - } - }, - "GezagOuder": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - } - }, - "required": [ - "burgerservicenummer" - ] - }, - "TweehoofdigOuderlijkGezag": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "ouders": { - "type": "array", - "items": { - "$ref": "#/components/schemas/GezagOuder" - }, - "minItems": 2, - "maxItems": 2 - } - } - } - ] - }, - "EenhoofdigOuderlijkGezag": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "ouder": { - "$ref": "#/components/schemas/GezagOuder" - } - } - } - ] - }, - "Meerderjarige": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - } - } - }, - "GezamenlijkGezag": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "ouder": { - "$ref": "#/components/schemas/GezagOuder" - }, - "derde": { - "$ref": "#/components/schemas/Meerderjarige" - } - } - } - ] - }, - "Voogdij": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "derden": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Meerderjarige" - }, - "minItems": 0, - "maxItems": 2 - } - } - } - ] - }, - "Toelichting": { - "type": "string", - "pattern": "^[a-zA-Z0-9À-ž \\/\\;\\:\\.\\-\\?\\(\\)]{1,400}$" - }, - "TijdelijkGeenGezag": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "toelichting": { - "$ref": "#/components/schemas/Toelichting" - } - } - } - ] - }, - "GezagNietTeBepalen": { - "allOf": [ - { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - { - "type": "object", - "properties": { - "toelichting": { - "$ref": "#/components/schemas/Toelichting" - } - } - } - ] - }, - "Minderjarige": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - } - }, - "required": [ - "burgerservicenummer" - ] - }, - "Gezag": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AbstractGezagsrelatie" - }, - "minItems": 0 - }, - "VerblijfstitelInOnderzoek": { - "description": "Geeft aan welke gegevens over de verblijfstitel in onderzoek zijn.\n", - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "aanduiding": { - "type": "boolean" - }, - "datumEinde": { - "type": "boolean" - }, - "datumIngang": { - "type": "boolean" - } - } - } - ] - }, - "Verblijfstitel": { - "type": "object", - "description": "Gegevens over de verblijfsrechtelijke status van de persoon.\n* **datumEinde**: Datum waarop de geldigheid van de gegevens over de verblijfstitel is beëindigd.\n* **datumIngang**: Datum waarop de gegevens over de verblijfstitel geldig zijn geworden.\n* **aanduiding** : Verblijfstiteltabel die aangeeft over welke verblijfsrechtelijke status de persoon beschikt. Wordt gevuld met waarden uit de landelijke tabel 'Verblijfstitel'.\n", - "properties": { - "aanduiding": { - "$ref": "#/components/schemas/Waardetabel" - }, - "datumEinde": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "datumIngang": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/VerblijfstitelInOnderzoek" - } - } - }, - "KindInOnderzoek": { - "description": "Geeft aan of de gegevens over het kind van de persoon in onderzoek zijn.\n", - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "burgerservicenummer": { - "type": "boolean" - } - } - } - ] - }, - "NaamGerelateerde": { - "type": "object", - "properties": { - "voornamen": { - "$ref": "#/components/schemas/Voornamen" - }, - "adellijkeTitelPredicaat": { - "$ref": "#/components/schemas/AdellijkeTitelPredicaatType" - }, - "voorvoegsel": { - "$ref": "#/components/schemas/Voorvoegsel" - }, - "geslachtsnaam": { - "$ref": "#/components/schemas/Geslachtsnaam" - }, - "voorletters": { - "$ref": "#/components/schemas/Voorletters" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/NaamInOnderzoek" - } - } - }, - "Kind": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/KindInOnderzoek" - }, - "naam": { - "$ref": "#/components/schemas/NaamGerelateerde" - }, - "geboorte": { - "$ref": "#/components/schemas/Geboorte" - } - } - }, - "OuderAanduiding": { - "type": "string", - "pattern": "^[1|2]$", - "example": "1" - }, - "OuderInOnderzoek": { - "description": "Geeft aan welke gegevens van de de ouder in onderzoek zijn.\n", - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "burgerservicenummer": { - "type": "boolean" - }, - "datumIngangFamilierechtelijkeBetrekking": { - "type": "boolean" - }, - "geslacht": { - "type": "boolean" - } - } - } - ] - }, - "Ouder": { - "description": "Gegevens over de ouder van de persoon.\n* **datumIngangFamilierechtelijkeBetrekking** - De datum waarop de familierechtelijke betrekking is ontstaan.\n* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "geslacht": { - "$ref": "#/components/schemas/Waardetabel" - }, - "ouderAanduiding": { - "$ref": "#/components/schemas/OuderAanduiding" - }, - "datumIngangFamilierechtelijkeBetrekking": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "naam": { - "$ref": "#/components/schemas/NaamGerelateerde" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/OuderInOnderzoek" - }, - "geboorte": { - "$ref": "#/components/schemas/Geboorte" - } - } - }, - "PartnerInOnderzoek": { - "description": "Geeft aan welke gegevens over het huwelijk of het partnerschap in onderzoek zijn.\n", - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "burgerservicenummer": { - "type": "boolean" - }, - "geslacht": { - "type": "boolean" - }, - "soortVerbintenis": { - "type": "boolean" - } - } - } - ] - }, - "AangaanHuwelijkPartnerschapInOnderzoek": { - "description": "Geeft aan welke gegevens over het voltrekken van het huwelijk of aangaan van het partnerschap in onderzoek zijn.\n", - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "datum": { - "type": "boolean" - }, - "land": { - "type": "boolean" - }, - "plaats": { - "type": "boolean" - } - } - } - ] - }, - "AangaanHuwelijkPartnerschap": { - "type": "object", - "description": "Gegevens over de voltrekking van het huwelijk of het aangaan van het geregistreerd partnerschap.\n* **datum** - De datum waarop het huwelijk is voltrokken of het partnerschap is aangegaan.\n* **land** - Het land waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel 'Landen'.\n* **plaats** - De gemeente waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel \"Gemeenten\" voor een gemeente in Nederland of de omschrijving van een buitenlandse plaats.\n", - "properties": { - "datum": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "land": { - "$ref": "#/components/schemas/Waardetabel" - }, - "plaats": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/AangaanHuwelijkPartnerschapInOnderzoek" - } - } - }, - "OntbindingHuwelijkPartnerschapInOnderzoek": { - "description": "Geeft aan welke gegevens over het onbinden van het huwelijk of aangaan van het partnerschap in onderzoek zijn.\n", - "allOf": [ - { - "$ref": "#/components/schemas/InOnderzoek" - }, - { - "type": "object", - "properties": { - "datum": { - "type": "boolean" - } - } - } - ] - }, - "OntbindingHuwelijkPartnerschap": { - "type": "object", - "description": "Gegevens over de ontbinding van het huwelijk of het geregistreerd partnerschap.\n* **datum** : De datum waarop het huwelijk of het partnerschap is ontbonden.\n", - "properties": { - "datum": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/OntbindingHuwelijkPartnerschapInOnderzoek" - } - } - }, - "Partner": { - "type": "object", - "properties": { - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "geslacht": { - "$ref": "#/components/schemas/Waardetabel" - }, - "soortVerbintenis": { - "$ref": "#/components/schemas/Waardetabel" - }, - "naam": { - "$ref": "#/components/schemas/NaamGerelateerde" - }, - "geboorte": { - "$ref": "#/components/schemas/Geboorte" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/PartnerInOnderzoek" - }, - "aangaanHuwelijkPartnerschap": { - "$ref": "#/components/schemas/AangaanHuwelijkPartnerschap" - }, - "ontbindingHuwelijkPartnerschap": { - "$ref": "#/components/schemas/OntbindingHuwelijkPartnerschap" - } - } - }, - "Persoon": { - "type": "object", - "description": "* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "properties": { - "aNummer": { - "$ref": "#/components/schemas/ANummer" - }, - "burgerservicenummer": { - "$ref": "#/components/schemas/Burgerservicenummer" - }, - "datumEersteInschrijvingGBA": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "geheimhoudingPersoonsgegevens": { - "$ref": "#/components/schemas/GeheimhoudingPersoonsgegevens" - }, - "geslacht": { - "$ref": "#/components/schemas/Waardetabel" - }, - "inOnderzoek": { - "$ref": "#/components/schemas/PersoonInOnderzoek" - }, - "uitsluitingKiesrecht": { - "$ref": "#/components/schemas/UitsluitingKiesrecht" - }, - "europeesKiesrecht": { - "$ref": "#/components/schemas/EuropeesKiesrecht" - }, - "leeftijd": { - "$ref": "#/components/schemas/Leeftijd" - }, - "naam": { - "$ref": "#/components/schemas/NaamPersoon" - }, - "nationaliteiten": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AbstractNationaliteit" - } - }, - "geboorte": { - "$ref": "#/components/schemas/Geboorte" - }, - "opschortingBijhouding": { - "$ref": "#/components/schemas/OpschortingBijhouding" - }, - "overlijden": { - "$ref": "#/components/schemas/Overlijden" - }, - "verblijfplaats": { - "$ref": "#/components/schemas/AbstractVerblijfplaats" - }, - "immigratie": { - "$ref": "#/components/schemas/Immigratie" - }, - "gemeenteVanInschrijving": { - "$ref": "#/components/schemas/Waardetabel" - }, - "datumInschrijvingInGemeente": { - "$ref": "#/components/schemas/AbstractDatum" - }, - "adressering": { - "$ref": "#/components/schemas/Adressering" - }, - "indicatieCurateleRegister": { - "$ref": "#/components/schemas/IndicatieCurateleRegister" - }, - "indicatieGezagMinderjarige": { - "$ref": "#/components/schemas/Waardetabel", - "deprecated": true - }, - "gezag": { - "$ref": "#/components/schemas/Gezag" - }, - "verblijfstitel": { - "$ref": "#/components/schemas/Verblijfstitel" - }, - "kinderen": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Kind" - } - }, - "ouders": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Ouder" - } - }, - "partners": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Partner" - } - }, - "rni": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RniDeelnemer" - } - }, - "verificatie": { - "$ref": "#/components/schemas/Verificatie" - } - } - }, - "RaadpleegMetBurgerservicenummerResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "description": "* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "items": { - "$ref": "#/components/schemas/Persoon" - } - } - } - } - ] - }, - "ZoekMetPostcodeEnHuisnummerResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "description": "* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "items": { - "$ref": "#/components/schemas/PersoonBeperkt" - } - } - } - } - ] - }, - "ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "description": "* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "items": { - "$ref": "#/components/schemas/PersoonBeperkt" - } - } - } - } - ] - }, - "ZoekMetNummeraanduidingIdentificatieResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "description": "* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "items": { - "$ref": "#/components/schemas/PersoonBeperkt" - } - } - } - } - ] - }, - "GezagPersoonBeperkt": { - "allOf": [ - { - "$ref": "#/components/schemas/PersoonBeperkt" - }, - { - "type": "object", - "properties": { - "gezag": { - "$ref": "#/components/schemas/Gezag" - } - } - } - ] - }, - "ZoekMetAdresseerbaarObjectIdentificatieResponse": { - "allOf": [ - { - "$ref": "#/components/schemas/PersonenQueryResponse" - }, - { - "type": "object", - "properties": { - "personen": { - "type": "array", - "description": "* **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'.\n", - "items": { - "$ref": "#/components/schemas/GezagPersoonBeperkt" - } - } - } - } - ] - }, - "InvalidParams": { - "type": "object", - "description": "Details over fouten in opgegeven parameters", - "properties": { - "type": { - "type": "string", - "format": "uri", - "example": "https://www.vng.nl/realisatie/api/{major-versie}/validaties/integer" - }, - "name": { - "type": "string", - "pattern": "^[a-zA-Z0-9\\.,_]{1,30}$", - "description": "Naam van de parameter", - "example": "huisnummer" - }, - "code": { - "type": "string", - "pattern": "^[a-zA-Z0-9\\.,_]{1,25}$", - "description": "Systeemcode die het type fout aangeeft", - "minLength": 1, - "example": "integer" - }, - "reason": { - "type": "string", - "pattern": "^[a-zA-Z0-9\\.,_ ]{1,80}$", - "description": "Beschrijving van de fout op de parameterwaarde", - "example": "Waarde is geen geldig getal." - } - } - }, - "BadRequestFoutbericht": { - "allOf": [ - { - "$ref": "#/components/schemas/Foutbericht" - }, - { - "type": "object", - "properties": { - "invalidParams": { - "description": "Foutmelding per fout in een parameter. Alle gevonden fouten worden één keer teruggemeld.", - "type": "array", - "items": { - "$ref": "#/components/schemas/InvalidParams" - } - } - } - } - ] - } - }, - "responses": { - "400": { - "description": "Bad Request", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/BadRequestFoutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", - "title": "Ten minste één parameter moet worden opgegeven.", - "status": 400, - "detail": "The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modification.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "paramsRequired", - "invalidParams": [ - { - "type": "https://www.vng.nl/realisatie/api/validaties/integer", - "name": "huisnummer", - "code": "integer", - "reason": "Waarde is geen geldig getal." - } - ] - } - } - } - }, - "401": { - "description": "Unauthorized", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2", - "title": "Niet correct geauthenticeerd.", - "status": 401, - "detail": "The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.47) containing a challenge applicable to the requested resource.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "authentication" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4", - "title": "U bent niet geautoriseerd voor deze operatie.", - "status": 403, - "detail": "The server understood the request, but is refusing to fulfill it.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "autorisation" - } - } - } - }, - "406": { - "description": "Not Acceptable", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.7", - "title": "Gevraagde contenttype wordt niet ondersteund.", - "status": 406, - "detail": "The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to thr accept headers sent in the request", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "notAcceptable" - } - } - } - }, - "415": { - "description": "Unsupported Media Type", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.16", - "title": "Unsupported Media Type", - "status": 415, - "detail": "The server is refusing the request because the entity of the request is in a format not supported by the requested resource for the requested method.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "unsupported" - } - } - } - }, - "429": { - "description": "Too Many Requests", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html", - "title": "Too many request", - "status": 429, - "detail": "The user has sent too many requests in a given amount of time (rate limiting).", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "tooManyRequests" - } - } - } - }, - "500": { - "description": "Internal Server Error", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1", - "title": "Interne server fout.", - "status": 500, - "detail": "The server encountered an unexpected condition which prevented it from fulfilling the request.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "serverError" - } - } - } - }, - "503": { - "description": "Service Unavailable", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - }, - "example": { - "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.4", - "title": "Bronservice BRP is tijdelijk niet beschikbaar.", - "status": 503, - "detail": "The service is currently unable to handle the request due to a temporary overloading or maintenance of the server.", - "instance": "https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde", - "code": "notAvailable" - } - } - } - }, - "default": { - "description": "Er is een onverwachte fout opgetreden", - "content": { - "application/problem+json": { - "schema": { - "$ref": "#/components/schemas/Foutbericht" - } - } - } - } - }, - "headers": { - "warning": { - "schema": { - "type": "string", - "maxLength": 500, - "description": "zie RFC 7234. In het geval een major versie wordt uitgefaseerd, gebruiken we warn-code 299 (\"Miscellaneous Persistent Warning\") en het API end-point (inclusief versienummer) als de warn-agent van de warning, gevolgd door de warn-text met de human-readable waarschuwing", - "example": "299 https://service.../api/.../v1 \"Deze versie van de API is verouderd en zal uit dienst worden genomen op 2018-02-01. Raadpleeg voor meer informatie hier de documentatie: https://omgevingswet.../api/.../v1\"." - } - }, - "X_Rate_Limit_Limit": { - "schema": { - "type": "integer" - } - }, - "X_Rate_Limit_Remaining": { - "schema": { - "type": "integer" - } - }, - "X_Rate_Limit_Reset": { - "schema": { - "type": "integer" - } - } - } - } -} \ No newline at end of file diff --git a/specificatie/genereervariant/openapi.yaml b/specificatie/genereervariant/openapi.yaml deleted file mode 100644 index ba0e9af97..000000000 --- a/specificatie/genereervariant/openapi.yaml +++ /dev/null @@ -1,1997 +0,0 @@ -openapi: 3.1.0 -info: - title: BRP API Personen - description: | - API voor het bevragen van personen uit de basisregistratie personen (BRP), inclusief de registratie niet-ingezeten (RNI). Met deze API kun je personen zoeken en actuele gegevens over personen, kinderen, partners en ouders raadplegen. - - Gegevens die er niet zijn of niet actueel zijn krijg je niet terug. Had een persoon bijvoorbeeld een verblijfstitel die nu niet meer geldig is, dan wordt die verblijfstitel niet opgenomen. In partners wordt alleen de actuele of de laatst ontbonden partner geleverd. - - Zie de [Features overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht) en [Getting started](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/getting-started) voor nadere toelichting. - version: 2.3.0 - contact: - url: https://brp-api.github.io/Haal-Centraal-BRP-bevragen - license: - name: European Union Public License, version 1.2 (EUPL-1.2) - url: https://eupl.eu/1.2/nl/ -servers: - - description: | - Proef omgeving - url: https://proefomgeving.haalcentraal.nl/haalcentraal/api/brp -tags: - - name: Personen -externalDocs: - description: BRP API Personen website - url: https://brp-api.github.io/Haal-Centraal-BRP-bevragen -paths: - /personen: - post: - operationId: Personen - summary: Zoek personen - description: | - Zoek personen met één van de onderstaande verplichte combinaties van parameters en vul ze evt. aan met optionele parameters. - - 1. Raadpleeg met burgerservicenummer - 2. Zoek met geslachtsnaam en geboortedatum - 3. Zoek met geslachtsnaam, voornamen en gemeente van inschrijving - 4. Zoek met postcode en huisnummer - 5. Zoek met straat, huisnummer en gemeente van inschrijving - 6. Zoek met nummeraanduiding identificatie - 7. Zoek met adresseerbaarobject identificatie - - Default krijg je personen terug die nog in leven zijn, tenzij je de inclusiefoverledenpersonen=true opgeeft. - - Gebruik de fields parameter om alleen die gegevens op te vragen die je nodig hebt en waarvoor je geautoriseerd bent. - requestBody: - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/PersonenQuery' - responses: - '200': - description: | - Zoekactie geslaagd - headers: - warning: - $ref: '#/components/headers/warning' - X-Rate-Limit-Limit: - $ref: '#/components/headers/X_Rate_Limit_Limit' - X-Rate-Limit-Remaining: - $ref: '#/components/headers/X_Rate_Limit_Remaining' - X-Rate-Limit-Reset: - $ref: '#/components/headers/X_Rate_Limit_Reset' - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/PersonenQueryResponse' - '400': - $ref: '#/components/responses/400' - '401': - $ref: '#/components/responses/401' - '403': - $ref: '#/components/responses/403' - '406': - $ref: '#/components/responses/406' - '415': - $ref: '#/components/responses/415' - '429': - $ref: '#/components/responses/429' - '500': - $ref: '#/components/responses/500' - '503': - $ref: '#/components/responses/503' - default: - $ref: '#/components/responses/default' - tags: - - Personen -components: - schemas: - PersonenQuery: - type: object - required: - - type - - fields - discriminator: - propertyName: type - mapping: - ZoekMetGeslachtsnaamEnGeboortedatum: '#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatum' - ZoekMetNaamEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijving' - RaadpleegMetBurgerservicenummer: '#/components/schemas/RaadpleegMetBurgerservicenummer' - ZoekMetPostcodeEnHuisnummer: '#/components/schemas/ZoekMetPostcodeEnHuisnummer' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijving' - ZoekMetNummeraanduidingIdentificatie: '#/components/schemas/ZoekMetNummeraanduidingIdentificatie' - ZoekMetAdresseerbaarObjectIdentificatie: '#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatie' - properties: - type: - type: string - fields: - description: | - Hiermee kun je de velden opgeven die je wenst te ontvangen. - - Velden die automatisch worden geleverd (inOnderzoek, geheimhoudingPersoonsgegevens, opschortingBijhouding, rni en verificatie) mag je niet opgeven in fields. - Opgave van een pad dat verwijst naar een niet-bestaand veld of naar een automatisch geleverd veld leidt tot een 400 Bad Request. - - Meer details over hoe fields werkt lees je in het [feature overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht#filteren-van-de-velden-van-de-gevonden-personen). - Stel je fields eenvoudig samen met de [fields tool](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/fields){:target="_blank" rel="noopener"}. - type: array - maxItems: 130 - minItems: 1 - items: - $ref: '#/components/schemas/Field' - gemeenteVanInschrijving: - $ref: '#/components/schemas/GemeenteVanInschrijving' - InclusiefOverledenPersonen: - description: | - Als je ook overleden personen in het antwoord wilt, geef dan de parameter inclusiefOverledenPersonen op met waarde True. - type: boolean - example: true - GeslachtsnaamFilter: - description: | - De (geslachts)naam waarvan de eventueel aanwezige voorvoegsels zijn afgesplitst. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$|^[a-zA-Z0-9À-ž \.\-\']{3,199}\*{1}$ - example: Vries - GeslachtFilter: - description: | - Geeft aan dat de persoon een man of een vrouw is, of dat het geslacht (nog) onbekend is. - type: string - pattern: ^([Mm]|[Vv]|[Oo])$ - example: V - VoorvoegselFilter: - description: | - Deel van de geslachtsnaam dat vooraf gaat aan de rest van de geslachtsnaam. **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z \']{1,10}$ - example: de - VoornamenOptioneelFilter: - description: | - De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan.** **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,199}\*{0,1}$ - example: Dirk - ZoekMetGeslachtsnaamEnGeboortedatum: - required: - - geslachtsnaam - - geboortedatum - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - geboortedatum: - description: | - Je kunt alleen zoeken met een volledige geboortedatum. - type: string - format: date - example: '1964-09-24' - geslachtsnaam: - $ref: '#/components/schemas/GeslachtsnaamFilter' - geslacht: - $ref: '#/components/schemas/GeslachtFilter' - voorvoegsel: - $ref: '#/components/schemas/VoorvoegselFilter' - voornamen: - $ref: '#/components/schemas/VoornamenOptioneelFilter' - VoornamenVerplichtFilter: - description: | - De verzameling namen die, gescheiden door spaties, aan de geslachtsnaam voorafgaat. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 3 letters.** **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$|^[a-zA-Z0-9À-ž \.\-\']{3,199}\*{1}$ - example: Dirk - ZoekMetNaamEnGemeenteVanInschrijving: - required: - - geslachtsnaam - - gemeenteVanInschrijving - - voornamen - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - geslacht: - $ref: '#/components/schemas/GeslachtFilter' - geslachtsnaam: - $ref: '#/components/schemas/GeslachtsnaamFilter' - voorvoegsel: - $ref: '#/components/schemas/VoorvoegselFilter' - voornamen: - $ref: '#/components/schemas/VoornamenVerplichtFilter' - Burgerservicenummer: - type: string - pattern: ^[0-9]{9}$ - example: '555555021' - RaadpleegMetBurgerservicenummer: - required: - - burgerservicenummer - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - burgerservicenummer: - type: array - items: - $ref: '#/components/schemas/Burgerservicenummer' - minItems: 1 - maxItems: 20 - Huisletter: - description: | - Een toevoeging aan een huisnummer in de vorm van een letter die door de gemeente aan een adresseerbaar object is gegeven. - type: string - pattern: ^[a-zA-Z]{1}$ - example: a - Huisnummer: - description: | - Een nummer dat door de gemeente aan een adresseerbaar object is gegeven. - type: integer - minimum: 1 - maximum: 99999 - example: 14 - Huisnummertoevoeging: - description: | - Een toevoeging aan een huisnummer of een combinatie van huisnummer en huisletter die door de gemeente aan een adresseerbaar object is gegeven. - type: string - pattern: ^[a-zA-Z0-9 \-]{1,4}$ - example: bis - Postcode: - description: | - De door PostNL vastgestelde code die bij een bepaalde combinatie van een straatnaam en een huisnummer hoort. - type: string - pattern: ^[1-9]{1}[0-9]{3}[ ]?[A-Za-z]{2}$ - example: 2341SX - ZoekMetPostcodeEnHuisnummer: - required: - - postcode - - huisnummer - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - huisletter: - $ref: '#/components/schemas/Huisletter' - huisnummer: - $ref: '#/components/schemas/Huisnummer' - huisnummertoevoeging: - $ref: '#/components/schemas/Huisnummertoevoeging' - postcode: - $ref: '#/components/schemas/Postcode' - geboortedatum: - description: | - Je kunt alleen zoeken met een volledige geboortedatum. - type: string - format: date - example: '1964-09-24' - StraatFilter: - description: | - Een naam die door de gemeente aan een openbare ruimte is gegeven. **Gebruik van de wildcard is toegestaan bij invoer van ten minste 7 letters.** **Zoeken met tekstvelden is case-insensitive.** - type: string - pattern: ^[a-zA-Z0-9À-ž \-\'\.]{1,80}$|^[a-zA-Z0-9À-ž \-\'\.]{7,79}\*{1}$|^\*{1}[a-zA-Z0-9À-ž \-\'\.]{7,79}$ - example: Tulpstraat - ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: - required: - - straat - - huisnummer - - gemeenteVanInschrijving - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - huisletter: - $ref: '#/components/schemas/Huisletter' - huisnummer: - $ref: '#/components/schemas/Huisnummer' - huisnummertoevoeging: - $ref: '#/components/schemas/Huisnummertoevoeging' - straat: - $ref: '#/components/schemas/StraatFilter' - NummeraanduidingIdentificatie: - description: | - Unieke identificatie van een nummeraanduiding (en het bijbehorende adres) in de BAG. - type: string - pattern: ^[0-9]{16}$ - example: '0518200000366054' - ZoekMetNummeraanduidingIdentificatie: - required: - - nummeraanduidingIdentificatie - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - nummeraanduidingIdentificatie: - $ref: '#/components/schemas/NummeraanduidingIdentificatie' - AdresseerbaarObjectIdentificatie: - type: string - pattern: ^[0-9]{16}$ - description: | - De verblijfplaats van de persoon kan een ligplaats, een standplaats of een verblijfsobject zijn. - example: '0226010000038820' - ZoekMetAdresseerbaarObjectIdentificatie: - required: - - adresseerbaarObjectIdentificatie - allOf: - - $ref: '#/components/schemas/PersonenQuery' - - type: object - properties: - inclusiefOverledenPersonen: - $ref: '#/components/schemas/InclusiefOverledenPersonen' - adresseerbaarObjectIdentificatie: - $ref: '#/components/schemas/AdresseerbaarObjectIdentificatie' - Field: - description: | - Het pad naar een gewenst veld in punt-gescheiden formaat. Bijvoorbeeld "burgerservicenummer", "geboorte.datum", "partners.naam.voornamen". - type: string - pattern: ^[a-zA-Z0-9\._]{1,200}$ - GemeenteVanInschrijving: - description: | - Een code die aangeeft in welke gemeente de persoon woont, of de laatste gemeente waar de persoon heeft gewoond, of de gemeente waar de persoon voor het eerst is ingeschreven. - type: string - pattern: ^[0-9]{4}$ - example: '0518' - Foutbericht: - type: object - description: Terugmelding bij een fout. JSON representatie in lijn met [RFC7807](https://tools.ietf.org/html/rfc7807). - properties: - type: - type: string - format: uri - description: Link naar meer informatie over deze fout - title: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-]{1,80}$ - description: Beschrijving van de fout - status: - type: integer - minimum: 100 - maximum: 600 - description: Http status code - detail: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\(\)\,]{1,200}$ - description: Details over de fout - instance: - type: string - format: uri - description: Uri van de aanroep die de fout heeft veroorzaakt - code: - type: string - pattern: ^[a-zA-Z0-9]{1,25}$ - description: Systeemcode die het type fout aangeeft - minLength: 1 - PersonenQueryResponse: - type: object - required: - - type - discriminator: - propertyName: type - mapping: - ZoekMetGeslachtsnaamEnGeboortedatum: '#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatumResponse' - ZoekMetNaamEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijvingResponse' - RaadpleegMetBurgerservicenummer: '#/components/schemas/RaadpleegMetBurgerservicenummerResponse' - ZoekMetPostcodeEnHuisnummer: '#/components/schemas/ZoekMetPostcodeEnHuisnummerResponse' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse' - ZoekMetNummeraanduidingIdentificatie: '#/components/schemas/ZoekMetNummeraanduidingIdentificatieResponse' - ZoekMetAdresseerbaarObjectIdentificatie: '#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatieResponse' - properties: - type: - type: string - AbstractDatum: - type: object - required: - - type - - langFormaat - properties: - type: - type: string - langFormaat: - type: string - pattern: ^[a-z0-9 ]{1,17}$ - discriminator: - propertyName: type - mapping: - Datum: '#/components/schemas/VolledigeDatum' - DatumOnbekend: '#/components/schemas/DatumOnbekend' - JaarDatum: '#/components/schemas/JaarDatum' - JaarMaandDatum: '#/components/schemas/JaarMaandDatum' - VolledigeDatum: - description: Datum conform iso8601 - allOf: - - $ref: '#/components/schemas/AbstractDatum' - - type: object - properties: - datum: - type: string - format: date - required: - - datum - example: - value: - type: Datum - datum: '2018-07-01' - langFormaat: 1 juli 2018 - DatumOnbekend: - description: representatie voor een volledig onbekend datum - allOf: - - $ref: '#/components/schemas/AbstractDatum' - - type: object - properties: - onbekend: - type: boolean - default: true - required: - - onbekend - example: - value: - type: DatumOnbekend - onbekend: true - langFormaat: onbekend - Jaar: - type: integer - format: int32 - minimum: 1 - maximum: 9999 - JaarDatum: - description: representatie voor een datum waarvan maand en dag onbekend zijn - allOf: - - $ref: '#/components/schemas/AbstractDatum' - - type: object - properties: - jaar: - $ref: '#/components/schemas/Jaar' - required: - - jaar - example: - value: - type: JaarDatum - jaar: 2018 - langFormaat: 2018 - Maand: - type: integer - format: int32 - minimum: 1 - maximum: 12 - JaarMaandDatum: - description: representatie voor een datum waarvan de dag onbekend is - allOf: - - $ref: '#/components/schemas/AbstractDatum' - - type: object - properties: - jaar: - $ref: '#/components/schemas/Jaar' - maand: - $ref: '#/components/schemas/Maand' - required: - - jaar - - maand - example: - value: - type: JaarMaandDatum - jaar: 2018 - maand: 7 - langFormaat: juli 2018 - GeboorteBasis: - type: object - properties: - datum: - $ref: '#/components/schemas/AbstractDatum' - InOnderzoek: - type: object - properties: - datumIngangOnderzoek: - $ref: '#/components/schemas/AbstractDatum' - GeboorteInOnderzoekBeperkt: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - datum: - type: boolean - GeboorteBeperkt: - allOf: - - $ref: '#/components/schemas/GeboorteBasis' - - type: object - properties: - inOnderzoek: - $ref: '#/components/schemas/GeboorteInOnderzoekBeperkt' - GeheimhoudingPersoonsgegevens: - description: | - Gegevens mogen niet worden verstrekt aan derden / maatschappelijke instellingen. - type: boolean - Waardetabel: - type: object - properties: - code: - type: string - pattern: ^[a-zA-Z0-9 \.]+$ - example: '6030' - omschrijving: - type: string - pattern: ^[a-zA-Z0-9À-ž \'\,\(\)\.\-]{1,200}$ - example: Nederland - PersoonInOnderzoekBeperkt: - description: | - Geeft aan welke gegevens van de persoon in onderzoek zijn. - * **datumIngangOnderzoekPersoon - Deze datum heeft betrekking op burgerservicenummer, geslacht en leeftijd - type: object - properties: - datumIngangOnderzoekPersoon: - $ref: '#/components/schemas/AbstractDatum' - burgerservicenummer: - type: boolean - geslacht: - type: boolean - leeftijd: - type: boolean - Leeftijd: - type: integer - description: | - Leeftijd in jaren op het moment van bevragen. - example: 34 - minimum: 0 - maximum: 150 - Voornamen: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$ - maxLength: 200 - description: | - De verzameling namen voor de geslachtsnaam, gescheiden door spaties. - AdellijkeTitelPredicaatSoort: - type: string - enum: - - titel - - predicaat - AdellijkeTitelPredicaatType: - description: | - Wordt gevuld met waarden uit de landelijke tabel 'Adellijke titel/predicaat'. De property soort geeft aan of het een 'predicaat' of een 'titel' is. - allOf: - - $ref: '#/components/schemas/Waardetabel' - - properties: - soort: - $ref: '#/components/schemas/AdellijkeTitelPredicaatSoort' - example: - value: - code: JV - omschrijving: jonkvrouw - soort: predicaat - Voorvoegsel: - type: string - pattern: ^[a-zA-Z \']{1,10}$ - maxLength: 10 - example: de - Geslachtsnaam: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$ - description: | - De achternaam van een persoon. - example: Vries - Voorletters: - type: string - pattern: ^[a-zA-Z0-9À-ž \.]{1,40}$ - description: | - De voorletters van de persoon, afgeleid van de voornamen. - example: P.J. - VolledigeNaam: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,450}$ - description: | - Combinatie van predicaat, voornamen, adellijke titel, voorvoegsels en geslachtsnaam, zonder toevoeging van een eventuele partnernaam. - example: Pieter Jan de Vries - NaamBasis: - type: object - properties: - voornamen: - $ref: '#/components/schemas/Voornamen' - adellijkeTitelPredicaat: - $ref: '#/components/schemas/AdellijkeTitelPredicaatType' - voorvoegsel: - $ref: '#/components/schemas/Voorvoegsel' - geslachtsnaam: - $ref: '#/components/schemas/Geslachtsnaam' - voorletters: - $ref: '#/components/schemas/Voorletters' - volledigeNaam: - $ref: '#/components/schemas/VolledigeNaam' - NaamInOnderzoek: - description: | - Geeft aan welke gegevens over de naam in onderzoek zijn. - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - voornamen: - type: boolean - adellijkeTitelPredicaat: - type: boolean - voorvoegsel: - type: boolean - geslachtsnaam: - type: boolean - voorletters: - type: boolean - NaamPersoonInOnderzoekBeperkt: - allOf: - - $ref: '#/components/schemas/NaamInOnderzoek' - - type: object - properties: - volledigeNaam: - type: boolean - NaamPersoonBeperkt: - description: | - Gegevens over de naam van de persoon. - allOf: - - $ref: '#/components/schemas/NaamBasis' - - properties: - inOnderzoek: - $ref: '#/components/schemas/NaamPersoonInOnderzoekBeperkt' - OpschortingBijhoudingBasis: - type: object - description: | - * **reden** - wordt gevuld met waarden voor 'Reden_Opschorting_Bijhouding' in 'tabelwaarden.csv'. - properties: - reden: - $ref: '#/components/schemas/Waardetabel' - OpschortingBijhouding: - allOf: - - $ref: '#/components/schemas/OpschortingBijhoudingBasis' - - type: object - description: | - * **datum**: de datum waarop de bijhouding van de persoonsgegevens is gestaakt. - properties: - datum: - $ref: '#/components/schemas/AbstractDatum' - Adresregel1: - type: string - maxLength: 40 - description: | - Het eerste deel van een adres is een combinatie van de straat en huisnummer. - example: Kappeyne v d Cappellostr 26A-3 - Adresregel2: - type: string - maxLength: 50 - description: | - Het tweede deel van een adres is een combinatie van woonplaats eventueel in combinatie met de postcode. - example: 1234AA Nootdorp - Adresregel3: - type: string - maxLength: 35 - description: | - Het derde deel van een adres is optioneel. Het gaat om een of meer geografische gebieden van het adres in het buitenland. - example: Selangor - IndicatieVastgesteldVerblijftNietOpAdres: - description: | - Geeft aan dat is vastgesteld dat de persoon niet meer op de geregistreerde adres/locatie staat ingeschreven. - type: boolean - AdresseringBasis: - type: object - description: '' - properties: - adresregel1: - $ref: '#/components/schemas/Adresregel1' - adresregel2: - $ref: '#/components/schemas/Adresregel2' - adresregel3: - $ref: '#/components/schemas/Adresregel3' - land: - $ref: '#/components/schemas/Waardetabel' - indicatieVastgesteldVerblijftNietOpAdres: - $ref: '#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres' - AdresseringInOnderzoekBeperkt: - description: | - Geeft aan welke gegevens over de adressering in onderzoek zijn. - type: object - properties: - adresregel1: - type: boolean - adresregel2: - type: boolean - adresregel3: - type: boolean - land: - type: boolean - datumIngangOnderzoekVerblijfplaats: - $ref: '#/components/schemas/AbstractDatum' - AdresseringBeperkt: - allOf: - - $ref: '#/components/schemas/AdresseringBasis' - - properties: - inOnderzoek: - $ref: '#/components/schemas/AdresseringInOnderzoekBeperkt' - OmschrijvingVerdrag: - type: string - description: | - Omschrijving van het verdrag op basis waarvan een zusterorganisatie in het buitenland de gegevens bij de RNI-deelnemer heeft aangeleverd. - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,50}$ - Categorie: - type: string - description: Naam van categorie waarop de RNI-deelnemer gegevens heeft aangeleverd - pattern: ^[a-zA-Z0-9À-ž \.\-\'\/]{1,40}$ - example: Verblijfplaats - RniDeelnemer: - type: object - description: Gegevens over de RNI-deelnemer die de gegevens in de betrokken categorie heeft aangeleverd. - properties: - deelnemer: - $ref: '#/components/schemas/Waardetabel' - omschrijvingVerdrag: - $ref: '#/components/schemas/OmschrijvingVerdrag' - categorie: - $ref: '#/components/schemas/Categorie' - OmschrijvingVerificatie: - type: string - description: | - Omschrijving van de verificatie van de rni-gegevens - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,50}$ - Verificatie: - type: object - properties: - datum: - $ref: '#/components/schemas/AbstractDatum' - omschrijving: - $ref: '#/components/schemas/OmschrijvingVerificatie' - PersoonBeperkt: - type: object - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - geboorte: - $ref: '#/components/schemas/GeboorteBeperkt' - geheimhoudingPersoonsgegevens: - $ref: '#/components/schemas/GeheimhoudingPersoonsgegevens' - geslacht: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/PersoonInOnderzoekBeperkt' - leeftijd: - $ref: '#/components/schemas/Leeftijd' - naam: - $ref: '#/components/schemas/NaamPersoonBeperkt' - opschortingBijhouding: - $ref: '#/components/schemas/OpschortingBijhouding' - adressering: - $ref: '#/components/schemas/AdresseringBeperkt' - rni: - type: array - items: - $ref: '#/components/schemas/RniDeelnemer' - verificatie: - $ref: '#/components/schemas/Verificatie' - ZoekMetGeslachtsnaamEnGeboortedatumResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: '#/components/schemas/PersoonBeperkt' - ZoekMetNaamEnGemeenteVanInschrijvingResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: '#/components/schemas/PersoonBeperkt' - ANummer: - description: | - Het A-nummer van de persoon - type: string - pattern: ^[0-9]{10}$ - PersoonInOnderzoek: - description: | - Geeft aan welke gegevens van de persoon in onderzoek zijn. - * **datumIngangOnderzoekPersoon - Deze datum heeft betrekking op burgerservicenummer, geslacht en leeftijd - * **datumIngangOnderzoekGemeente - Deze datum heeft betrekking op gemeenteVanInschrijving en datumInschrijvingInGemeente - * **datumIngangOnderzoekGezag - Deze datumingang heeft betrekking op indicatieCurateleRegister en indicatieGezagMinderjarige - type: object - properties: - datumIngangOnderzoekPersoon: - $ref: '#/components/schemas/AbstractDatum' - datumIngangOnderzoekGemeente: - $ref: '#/components/schemas/AbstractDatum' - datumIngangOnderzoekGezag: - $ref: '#/components/schemas/AbstractDatum' - burgerservicenummer: - type: boolean - geslacht: - type: boolean - leeftijd: - type: boolean - gemeenteVanInschrijving: - type: boolean - datumInschrijvingInGemeente: - type: boolean - indicatieCurateleRegister: - type: boolean - indicatieGezagMinderjarige: - type: boolean - deprecated: true - UitsluitingKiesrecht: - type: object - properties: - uitgeslotenVanKiesrecht: - type: boolean - example: true - einddatum: - $ref: '#/components/schemas/AbstractDatum' - EuropeesKiesrecht: - type: object - description: | - * **aanduiding** - Geeft aan of persoon een oproep moet ontvangen voor verkiezingen voor het Europees parlement. Wordt gevuld met waarden voor 'Europees_Kiesrecht' in 'tabelwaarden.csv'. - properties: - aanduiding: - $ref: '#/components/schemas/Waardetabel' - einddatumUitsluiting: - $ref: '#/components/schemas/AbstractDatum' - NaamPersoonInOnderzoek: - allOf: - - $ref: '#/components/schemas/NaamInOnderzoek' - - type: object - properties: - aanduidingNaamgebruik: - type: boolean - volledigeNaam: - type: boolean - NaamPersoon: - description: | - Gegevens over de naam van de persoon. - * **aanduidingNaamgebruik** - wordt gevuld met waarden voor 'Naamgebruik' in 'tabelwaarden.csv'. - allOf: - - $ref: '#/components/schemas/NaamBasis' - - properties: - aanduidingNaamgebruik: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/NaamPersoonInOnderzoek' - AbstractNationaliteit: - type: object - description: | - * **redenOpname** - De reden op grond waarvan de persoon de nationaliteit gekregen heeft. Wordt gevuld met waarden uit de landelijke tabel 'Reden opnemen/beëindigen nationaliteit'. - required: - - type - properties: - type: - type: string - redenOpname: - $ref: '#/components/schemas/Waardetabel' - discriminator: - propertyName: type - mapping: - Nationaliteit: '#/components/schemas/NationaliteitBekend' - BehandeldAlsNederlander: '#/components/schemas/BehandeldAlsNederlander' - VastgesteldNietNederlander: '#/components/schemas/VastgesteldNietNederlander' - Staatloos: '#/components/schemas/Staatloos' - NationaliteitOnbekend: '#/components/schemas/NationaliteitOnbekend' - NationaliteitBekendInOnderzoek: - description: | - Geeft aan welke gegevens over de nationaliteit in onderzoek zijn. - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - type: - type: boolean - nationaliteit: - type: boolean - redenOpname: - type: boolean - NationaliteitBekend: - description: | - * **nationaliteit** - wordt gevuld met waarden uit de landelijke tabel 'Nationaliteiten'. - allOf: - - $ref: '#/components/schemas/AbstractNationaliteit' - - type: object - properties: - datumIngangGeldigheid: - $ref: '#/components/schemas/AbstractDatum' - nationaliteit: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/NationaliteitBekendInOnderzoek' - BijzonderNederlanderschapInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - type: - type: boolean - redenOpname: - type: boolean - BehandeldAlsNederlander: - allOf: - - $ref: '#/components/schemas/AbstractNationaliteit' - - type: object - properties: - datumIngangGeldigheid: - $ref: '#/components/schemas/AbstractDatum' - inOnderzoek: - $ref: '#/components/schemas/BijzonderNederlanderschapInOnderzoek' - VastgesteldNietNederlander: - allOf: - - $ref: '#/components/schemas/AbstractNationaliteit' - - type: object - properties: - datumIngangGeldigheid: - $ref: '#/components/schemas/AbstractDatum' - inOnderzoek: - $ref: '#/components/schemas/BijzonderNederlanderschapInOnderzoek' - StaatloosInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - type: - type: boolean - redenOpname: - type: boolean - Staatloos: - description: | - * **redenOpname** : De reden op grond waarvan de persoon de nationaliteit gekregen heeft. - allOf: - - $ref: '#/components/schemas/AbstractNationaliteit' - - type: object - properties: - datumIngangGeldigheid: - $ref: '#/components/schemas/AbstractDatum' - inOnderzoek: - $ref: '#/components/schemas/StaatloosInOnderzoek' - NationaliteitOnbekendInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - type: - type: boolean - redenOpname: - type: boolean - NationaliteitOnbekend: - allOf: - - $ref: '#/components/schemas/AbstractNationaliteit' - - type: object - properties: - datumIngangGeldigheid: - $ref: '#/components/schemas/AbstractDatum' - inOnderzoek: - $ref: '#/components/schemas/NationaliteitOnbekendInOnderzoek' - GeboorteInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - datum: - type: boolean - land: - type: boolean - plaats: - type: boolean - Geboorte: - description: | - Gegevens over de geboorte. - * **datum** - datum waarop de persoon is geboren. - * **land** - land waar de persoon is geboren. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. - * **plaats** - gemeente waar de persoon is geboren. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten" voor een gemeente in Nederland of als de persoon is geboren buiten Nederland de omschrijving van een buitenlandse plaatsnaam of aanduiding. - allOf: - - $ref: '#/components/schemas/GeboorteBasis' - - type: object - properties: - land: - $ref: '#/components/schemas/Waardetabel' - plaats: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/GeboorteInOnderzoek' - OverlijdenInOnderzoek: - description: | - Geeft aan welke gegevens over het overlijden van de persoon in onderzoek zijn. - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - datum: - type: boolean - land: - type: boolean - plaats: - type: boolean - Overlijden: - description: | - Gegevens over het overlijden. - * **datum** - datum waarop de persoon is overleden. - * **land** - land waar de persoon is overleden. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. - * **plaats** - gemeente waar de persoon is overleden. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten". - type: object - properties: - datum: - $ref: '#/components/schemas/AbstractDatum' - land: - $ref: '#/components/schemas/Waardetabel' - plaats: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/OverlijdenInOnderzoek' - AbstractVerblijfplaats: - type: object - description: | - Gegevens over het verblijf of de woonlocatie van een persoon. - required: - - type - properties: - type: - type: string - discriminator: - propertyName: type - mapping: - VerblijfplaatsBuitenland: '#/components/schemas/VerblijfplaatsBuitenland' - Adres: '#/components/schemas/Adres' - VerblijfplaatsOnbekend: '#/components/schemas/VerblijfplaatsOnbekend' - Locatie: '#/components/schemas/Locatie' - example: - type: Adres - functieAdres: - code: W - omschrijving: woonadres - adresseerbaarObjectIdentificatie: 226010000038820 - Regel1: - type: string - maxLength: 40 - description: | - Het eerste deel van een buitenlands adres. Vaak is dit een combinatie van de straat en huisnummer. - example: 1600 Pennsylvania Avenue NW - Regel2: - type: string - maxLength: 50 - description: | - Het tweede deel van een buitenlands adres. Vaak is dit een combinatie van woonplaats eventueel in combinatie met de postcode. - example: Washington, DC 20500 - Regel3: - type: string - maxLength: 35 - description: | - Het derde deel van een buitenlands adres is optioneel. Het gaat om een of meer geografische gebieden van het adres in het buitenland. - example: Selangor - VerblijfadresBuitenlandInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - regel1: - type: boolean - regel2: - type: boolean - regel3: - type: boolean - land: - type: boolean - VerblijfadresBuitenland: - type: object - properties: - regel1: - $ref: '#/components/schemas/Regel1' - regel2: - $ref: '#/components/schemas/Regel2' - regel3: - $ref: '#/components/schemas/Regel3' - land: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/VerblijfadresBuitenlandInOnderzoek' - VerblijfplaatsBuitenlandInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - type: - type: boolean - datumVan: - type: boolean - datumIngangGeldigheid: - type: boolean - deprecated: true - VerblijfplaatsBuitenland: - description: | - * **gemeenteVanInschrijving** - wordt gevuld met waarden uit de landelijke tabel 'Gemeenten'. - * **land** - land waar de persoon is overleden. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. - allOf: - - $ref: '#/components/schemas/AbstractVerblijfplaats' - - type: object - properties: - verblijfadres: - $ref: '#/components/schemas/VerblijfadresBuitenland' - datumVan: - $ref: '#/components/schemas/AbstractDatum' - datumIngangGeldigheid: - $ref: '#/components/schemas/AbstractDatum' - deprecated: true - inOnderzoek: - $ref: '#/components/schemas/VerblijfplaatsBuitenlandInOnderzoek' - OfficieleStraatnaam: - description: | - De officiële naam van een openbare ruimte uit de Basisregistratie Gebouwen en Adressen (BAG). - type: string - maxLength: 80 - KorteStraatnaam: - description: | - De officiële naam van een openbare ruimte uit de Basisregistratie Gebouwen en Adressen (BAG), zo nodig verkort tot maximaal 24 tekens, of de straatnaam van een niet-BAG adres. - type: string - maxLength: 24 - Woonplaats: - description: | - Een woonplaats is een gedeelte van het grondgebied van de gemeente met een naam. - title: woonplaats naam - type: string - pattern: ^[a-zA-Z0-9À-ž \(\)\,\.\-\']{1,80}$ - example: Duiven - VerblijfadresBinnenlandInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - aanduidingBijHuisnummer: - type: boolean - huisletter: - type: boolean - huisnummer: - type: boolean - huisnummertoevoeging: - type: boolean - officieleStraatnaam: - type: boolean - postcode: - type: boolean - korteStraatnaam: - type: boolean - woonplaats: - type: boolean - VerblijfadresBinnenland: - type: object - properties: - officieleStraatnaam: - $ref: '#/components/schemas/OfficieleStraatnaam' - korteStraatnaam: - $ref: '#/components/schemas/KorteStraatnaam' - huisnummer: - $ref: '#/components/schemas/Huisnummer' - huisletter: - $ref: '#/components/schemas/Huisletter' - huisnummertoevoeging: - $ref: '#/components/schemas/Huisnummertoevoeging' - aanduidingBijHuisnummer: - $ref: '#/components/schemas/Waardetabel' - postcode: - $ref: '#/components/schemas/Postcode' - woonplaats: - $ref: '#/components/schemas/Woonplaats' - inOnderzoek: - $ref: '#/components/schemas/VerblijfadresBinnenlandInOnderzoek' - AdresInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - type: - type: boolean - datumVan: - type: boolean - datumIngangGeldigheid: - type: boolean - deprecated: true - nummeraanduidingIdentificatie: - type: boolean - adresseerbaarObjectIdentificatie: - type: boolean - functieAdres: - type: boolean - Adres: - description: | - Gegevens over het adres van een persoon. - * **gemeenteVanInschrijving** - wordt gevuld met waarden uit de landelijke tabel 'Gemeenten'. - * **functieAdres** - wordt gevuld met waarden voor 'Functie_Adres' in 'tabelwaarden.csv'. - * **aanduidingBijHuisnummer** - wordt gevuld met waarden voor 'Aanduiding_Bij_Huisnummer' in 'tabelwaarden.csv'. - * **datumVan** : de datum van aangifte of ambtshalve melding van verblijf en adres. - * **datumIngangGeldigheid** : datum waarop de gegevens over de verblijfplaats geldig zijn geworden. - allOf: - - $ref: '#/components/schemas/AbstractVerblijfplaats' - - type: object - properties: - verblijfadres: - $ref: '#/components/schemas/VerblijfadresBinnenland' - functieAdres: - $ref: '#/components/schemas/Waardetabel' - adresseerbaarObjectIdentificatie: - $ref: '#/components/schemas/AdresseerbaarObjectIdentificatie' - nummeraanduidingIdentificatie: - $ref: '#/components/schemas/NummeraanduidingIdentificatie' - datumVan: - $ref: '#/components/schemas/AbstractDatum' - datumIngangGeldigheid: - $ref: '#/components/schemas/AbstractDatum' - deprecated: true - indicatieVastgesteldVerblijftNietOpAdres: - $ref: '#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres' - inOnderzoek: - $ref: '#/components/schemas/AdresInOnderzoek' - VerblijfplaatsOnbekendInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - type: - type: boolean - datumVan: - type: boolean - datumIngangGeldigheid: - type: boolean - deprecated: true - VerblijfplaatsOnbekend: - allOf: - - $ref: '#/components/schemas/AbstractVerblijfplaats' - - type: object - properties: - datumVan: - $ref: '#/components/schemas/AbstractDatum' - datumIngangGeldigheid: - $ref: '#/components/schemas/AbstractDatum' - deprecated: true - inOnderzoek: - $ref: '#/components/schemas/VerblijfplaatsOnbekendInOnderzoek' - Locatiebeschrijving: - type: string - maxLength: 35 - description: | - Omschrijving van de ligging van een verblijfsobject, standplaats of ligplaats. - example: Naast de derde brug - VerblijfadresLocatieInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - locatiebeschrijving: - type: boolean - VerblijfadresLocatie: - type: object - properties: - locatiebeschrijving: - $ref: '#/components/schemas/Locatiebeschrijving' - inOnderzoek: - $ref: '#/components/schemas/VerblijfadresLocatieInOnderzoek' - LocatieInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - type: - type: boolean - datumVan: - type: boolean - functieAdres: - type: boolean - datumIngangGeldigheid: - type: boolean - deprecated: true - Locatie: - description: | - * **gemeenteVanInschrijving** - wordt gevuld met waarden uit de landelijke tabel 'Gemeenten'. - * **functieAdres** - wordt gevuld met waarden voor 'Functie_Adres' in 'tabelwaarden.csv'. - * **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. - allOf: - - $ref: '#/components/schemas/AbstractVerblijfplaats' - - type: object - properties: - datumVan: - $ref: '#/components/schemas/AbstractDatum' - functieAdres: - $ref: '#/components/schemas/Waardetabel' - verblijfadres: - $ref: '#/components/schemas/VerblijfadresLocatie' - datumIngangGeldigheid: - $ref: '#/components/schemas/AbstractDatum' - deprecated: true - indicatieVastgesteldVerblijftNietOpAdres: - $ref: '#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres' - inOnderzoek: - $ref: '#/components/schemas/LocatieInOnderzoek' - VanuitVerblijfplaatsOnbekend: - type: boolean - description: | - Geeft aan dat de persoon is teruggekeerd uit een situatie van onbekende verblijfplaats - IndicatieVestigingVanuitBuitenland: - type: boolean - description: | - Geeft aan dat de persoon zich vanuit het buitenland heeft ingeschreven. - ImmigratieInOnderzoek: - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - datumVestigingInNederland: - type: boolean - landVanwaarIngeschreven: - type: boolean - vanuitVerblijfplaatsOnbekend: - type: boolean - indicatieVestigingVanuitBuitenland: - type: boolean - Immigratie: - type: object - description: | - Gegevens over het het immigratie van een persoon. - * **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland. - properties: - datumVestigingInNederland: - $ref: '#/components/schemas/AbstractDatum' - landVanwaarIngeschreven: - $ref: '#/components/schemas/Waardetabel' - vanuitVerblijfplaatsOnbekend: - $ref: '#/components/schemas/VanuitVerblijfplaatsOnbekend' - indicatieVestigingVanuitBuitenland: - $ref: '#/components/schemas/IndicatieVestigingVanuitBuitenland' - inOnderzoek: - $ref: '#/components/schemas/ImmigratieInOnderzoek' - Aanhef: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,650}$ - description: | - Kun je gebruiken als aanhef in een brief gericht aan persoon. - example: Hoogwelgeboren heer - Aanschrijfwijze: - type: object - description: | - Samengestelde naam en aanspreekvorm die je kunt gebruiken in de communicatie met de persoon. - properties: - naam: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,650}$ - example: H.W. baron van den Aedel - aanspreekvorm: - description: | - Deze regel moet als aparte regel boven de samengestelde naam worden geplaatst. Komt alleen voor bij personen met een adellijke titel of predicaat. - type: string - pattern: ^[a-zA-Z ]{1,25}$ - example: De hoogwelgeboren heer - GebruikInLopendeTekst: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,650}$ - description: | - Naam van persoon die je kunt gebruiken als je in lopende tekst (bijvoorbeeld in een brief) aan persoon refereert. - example: baron Van den Aedel - AdresseringInOnderzoek: - description: | - Geeft aan welke gegevens over de adressering in onderzoek zijn. - type: object - properties: - aanhef: - type: boolean - adresregel1: - type: boolean - adresregel2: - type: boolean - adresregel3: - type: boolean - land: - type: boolean - aanschrijfwijze: - type: boolean - gebruikInLopendeTekst: - type: boolean - datumIngangOnderzoekPersoon: - $ref: '#/components/schemas/AbstractDatum' - datumIngangOnderzoekPartner: - $ref: '#/components/schemas/AbstractDatum' - datumIngangOnderzoekVerblijfplaats: - $ref: '#/components/schemas/AbstractDatum' - Adressering: - allOf: - - $ref: '#/components/schemas/AdresseringBasis' - - properties: - aanhef: - $ref: '#/components/schemas/Aanhef' - aanschrijfwijze: - $ref: '#/components/schemas/Aanschrijfwijze' - gebruikInLopendeTekst: - $ref: '#/components/schemas/GebruikInLopendeTekst' - inOnderzoek: - $ref: '#/components/schemas/AdresseringInOnderzoek' - IndicatieCurateleRegister: - type: boolean - description: | - Geeft aan dat de persoon onder curatele is gesteld. - example: true - AbstractGezagsrelatie: - type: object - required: - - type - - minderjarige - properties: - type: - type: string - minderjarige: - $ref: '#/components/schemas/Minderjarige' - discriminator: - propertyName: type - mapping: - TweehoofdigOuderlijkGezag: '#/components/schemas/TweehoofdigOuderlijkGezag' - EenhoofdigOuderlijkGezag: '#/components/schemas/EenhoofdigOuderlijkGezag' - GezamenlijkGezag: '#/components/schemas/GezamenlijkGezag' - Voogdij: '#/components/schemas/Voogdij' - TijdelijkGeenGezag: '#/components/schemas/TijdelijkGeenGezag' - GezagNietTeBepalen: '#/components/schemas/GezagNietTeBepalen' - example: - type: TweehoofdigOuderlijkGezag - ouders: - - burgerservicenummer: '999998870' - - burgerservicenummer: '999998882' - minderjarige: - burgerservicenummer: '999998894' - GezagOuder: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - required: - - burgerservicenummer - TweehoofdigOuderlijkGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - ouders: - type: array - items: - $ref: '#/components/schemas/GezagOuder' - minItems: 2 - maxItems: 2 - EenhoofdigOuderlijkGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - ouder: - $ref: '#/components/schemas/GezagOuder' - Meerderjarige: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - GezamenlijkGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - ouder: - $ref: '#/components/schemas/GezagOuder' - derde: - $ref: '#/components/schemas/Meerderjarige' - Voogdij: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - derden: - type: array - items: - $ref: '#/components/schemas/Meerderjarige' - minItems: 0 - maxItems: 2 - Toelichting: - type: string - pattern: ^[a-zA-Z0-9À-ž \/\;\:\.\-\?\(\)]{1,400}$ - TijdelijkGeenGezag: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - toelichting: - $ref: '#/components/schemas/Toelichting' - GezagNietTeBepalen: - allOf: - - $ref: '#/components/schemas/AbstractGezagsrelatie' - - type: object - properties: - toelichting: - $ref: '#/components/schemas/Toelichting' - Minderjarige: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - required: - - burgerservicenummer - Gezag: - type: array - items: - $ref: '#/components/schemas/AbstractGezagsrelatie' - minItems: 0 - VerblijfstitelInOnderzoek: - description: | - Geeft aan welke gegevens over de verblijfstitel in onderzoek zijn. - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - aanduiding: - type: boolean - datumEinde: - type: boolean - datumIngang: - type: boolean - Verblijfstitel: - type: object - description: | - Gegevens over de verblijfsrechtelijke status van de persoon. - * **datumEinde**: Datum waarop de geldigheid van de gegevens over de verblijfstitel is beëindigd. - * **datumIngang**: Datum waarop de gegevens over de verblijfstitel geldig zijn geworden. - * **aanduiding** : Verblijfstiteltabel die aangeeft over welke verblijfsrechtelijke status de persoon beschikt. Wordt gevuld met waarden uit de landelijke tabel 'Verblijfstitel'. - properties: - aanduiding: - $ref: '#/components/schemas/Waardetabel' - datumEinde: - $ref: '#/components/schemas/AbstractDatum' - datumIngang: - $ref: '#/components/schemas/AbstractDatum' - inOnderzoek: - $ref: '#/components/schemas/VerblijfstitelInOnderzoek' - KindInOnderzoek: - description: | - Geeft aan of de gegevens over het kind van de persoon in onderzoek zijn. - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - burgerservicenummer: - type: boolean - NaamGerelateerde: - type: object - properties: - voornamen: - $ref: '#/components/schemas/Voornamen' - adellijkeTitelPredicaat: - $ref: '#/components/schemas/AdellijkeTitelPredicaatType' - voorvoegsel: - $ref: '#/components/schemas/Voorvoegsel' - geslachtsnaam: - $ref: '#/components/schemas/Geslachtsnaam' - voorletters: - $ref: '#/components/schemas/Voorletters' - inOnderzoek: - $ref: '#/components/schemas/NaamInOnderzoek' - Kind: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - inOnderzoek: - $ref: '#/components/schemas/KindInOnderzoek' - naam: - $ref: '#/components/schemas/NaamGerelateerde' - geboorte: - $ref: '#/components/schemas/Geboorte' - OuderAanduiding: - type: string - pattern: ^[1|2]$ - example: '1' - OuderInOnderzoek: - description: | - Geeft aan welke gegevens van de de ouder in onderzoek zijn. - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - burgerservicenummer: - type: boolean - datumIngangFamilierechtelijkeBetrekking: - type: boolean - geslacht: - type: boolean - Ouder: - description: | - Gegevens over de ouder van de persoon. - * **datumIngangFamilierechtelijkeBetrekking** - De datum waarop de familierechtelijke betrekking is ontstaan. - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - geslacht: - $ref: '#/components/schemas/Waardetabel' - ouderAanduiding: - $ref: '#/components/schemas/OuderAanduiding' - datumIngangFamilierechtelijkeBetrekking: - $ref: '#/components/schemas/AbstractDatum' - naam: - $ref: '#/components/schemas/NaamGerelateerde' - inOnderzoek: - $ref: '#/components/schemas/OuderInOnderzoek' - geboorte: - $ref: '#/components/schemas/Geboorte' - PartnerInOnderzoek: - description: | - Geeft aan welke gegevens over het huwelijk of het partnerschap in onderzoek zijn. - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - burgerservicenummer: - type: boolean - geslacht: - type: boolean - soortVerbintenis: - type: boolean - AangaanHuwelijkPartnerschapInOnderzoek: - description: | - Geeft aan welke gegevens over het voltrekken van het huwelijk of aangaan van het partnerschap in onderzoek zijn. - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - datum: - type: boolean - land: - type: boolean - plaats: - type: boolean - AangaanHuwelijkPartnerschap: - type: object - description: | - Gegevens over de voltrekking van het huwelijk of het aangaan van het geregistreerd partnerschap. - * **datum** - De datum waarop het huwelijk is voltrokken of het partnerschap is aangegaan. - * **land** - Het land waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. - * **plaats** - De gemeente waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten" voor een gemeente in Nederland of de omschrijving van een buitenlandse plaats. - properties: - datum: - $ref: '#/components/schemas/AbstractDatum' - land: - $ref: '#/components/schemas/Waardetabel' - plaats: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/AangaanHuwelijkPartnerschapInOnderzoek' - OntbindingHuwelijkPartnerschapInOnderzoek: - description: | - Geeft aan welke gegevens over het onbinden van het huwelijk of aangaan van het partnerschap in onderzoek zijn. - allOf: - - $ref: '#/components/schemas/InOnderzoek' - - type: object - properties: - datum: - type: boolean - OntbindingHuwelijkPartnerschap: - type: object - description: | - Gegevens over de ontbinding van het huwelijk of het geregistreerd partnerschap. - * **datum** : De datum waarop het huwelijk of het partnerschap is ontbonden. - properties: - datum: - $ref: '#/components/schemas/AbstractDatum' - inOnderzoek: - $ref: '#/components/schemas/OntbindingHuwelijkPartnerschapInOnderzoek' - Partner: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - geslacht: - $ref: '#/components/schemas/Waardetabel' - soortVerbintenis: - $ref: '#/components/schemas/Waardetabel' - naam: - $ref: '#/components/schemas/NaamGerelateerde' - geboorte: - $ref: '#/components/schemas/Geboorte' - inOnderzoek: - $ref: '#/components/schemas/PartnerInOnderzoek' - aangaanHuwelijkPartnerschap: - $ref: '#/components/schemas/AangaanHuwelijkPartnerschap' - ontbindingHuwelijkPartnerschap: - $ref: '#/components/schemas/OntbindingHuwelijkPartnerschap' - Persoon: - type: object - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - properties: - aNummer: - $ref: '#/components/schemas/ANummer' - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - datumEersteInschrijvingGBA: - $ref: '#/components/schemas/AbstractDatum' - geheimhoudingPersoonsgegevens: - $ref: '#/components/schemas/GeheimhoudingPersoonsgegevens' - geslacht: - $ref: '#/components/schemas/Waardetabel' - inOnderzoek: - $ref: '#/components/schemas/PersoonInOnderzoek' - uitsluitingKiesrecht: - $ref: '#/components/schemas/UitsluitingKiesrecht' - europeesKiesrecht: - $ref: '#/components/schemas/EuropeesKiesrecht' - leeftijd: - $ref: '#/components/schemas/Leeftijd' - naam: - $ref: '#/components/schemas/NaamPersoon' - nationaliteiten: - type: array - items: - $ref: '#/components/schemas/AbstractNationaliteit' - geboorte: - $ref: '#/components/schemas/Geboorte' - opschortingBijhouding: - $ref: '#/components/schemas/OpschortingBijhouding' - overlijden: - $ref: '#/components/schemas/Overlijden' - verblijfplaats: - $ref: '#/components/schemas/AbstractVerblijfplaats' - immigratie: - $ref: '#/components/schemas/Immigratie' - gemeenteVanInschrijving: - $ref: '#/components/schemas/Waardetabel' - datumInschrijvingInGemeente: - $ref: '#/components/schemas/AbstractDatum' - adressering: - $ref: '#/components/schemas/Adressering' - indicatieCurateleRegister: - $ref: '#/components/schemas/IndicatieCurateleRegister' - indicatieGezagMinderjarige: - $ref: '#/components/schemas/Waardetabel' - deprecated: true - gezag: - $ref: '#/components/schemas/Gezag' - verblijfstitel: - $ref: '#/components/schemas/Verblijfstitel' - kinderen: - type: array - items: - $ref: '#/components/schemas/Kind' - ouders: - type: array - items: - $ref: '#/components/schemas/Ouder' - partners: - type: array - items: - $ref: '#/components/schemas/Partner' - rni: - type: array - items: - $ref: '#/components/schemas/RniDeelnemer' - verificatie: - $ref: '#/components/schemas/Verificatie' - RaadpleegMetBurgerservicenummerResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: '#/components/schemas/Persoon' - ZoekMetPostcodeEnHuisnummerResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: '#/components/schemas/PersoonBeperkt' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: '#/components/schemas/PersoonBeperkt' - ZoekMetNummeraanduidingIdentificatieResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: '#/components/schemas/PersoonBeperkt' - GezagPersoonBeperkt: - allOf: - - $ref: '#/components/schemas/PersoonBeperkt' - - type: object - properties: - gezag: - $ref: '#/components/schemas/Gezag' - ZoekMetAdresseerbaarObjectIdentificatieResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: '#/components/schemas/GezagPersoonBeperkt' - InvalidParams: - type: object - description: Details over fouten in opgegeven parameters - properties: - type: - type: string - format: uri - example: https://www.vng.nl/realisatie/api/{major-versie}/validaties/integer - name: - type: string - pattern: ^[a-zA-Z0-9\.,_]{1,30}$ - description: Naam van de parameter - example: huisnummer - code: - type: string - pattern: ^[a-zA-Z0-9\.,_]{1,25}$ - description: Systeemcode die het type fout aangeeft - minLength: 1 - example: integer - reason: - type: string - pattern: ^[a-zA-Z0-9\.,_ ]{1,80}$ - description: Beschrijving van de fout op de parameterwaarde - example: Waarde is geen geldig getal. - BadRequestFoutbericht: - allOf: - - $ref: '#/components/schemas/Foutbericht' - - type: object - properties: - invalidParams: - description: Foutmelding per fout in een parameter. Alle gevonden fouten worden één keer teruggemeld. - type: array - items: - $ref: '#/components/schemas/InvalidParams' - responses: - '400': - description: Bad Request - content: - application/problem+json: - schema: - $ref: '#/components/schemas/BadRequestFoutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1 - title: Ten minste één parameter moet worden opgegeven. - status: 400 - detail: The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modification. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: paramsRequired - invalidParams: - - type: https://www.vng.nl/realisatie/api/validaties/integer - name: huisnummer - code: integer - reason: Waarde is geen geldig getal. - '401': - description: Unauthorized - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2 - title: Niet correct geauthenticeerd. - status: 401 - detail: The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.47) containing a challenge applicable to the requested resource. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: authentication - '403': - description: Forbidden - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4 - title: U bent niet geautoriseerd voor deze operatie. - status: 403 - detail: The server understood the request, but is refusing to fulfill it. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: autorisation - '406': - description: Not Acceptable - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.7 - title: Gevraagde contenttype wordt niet ondersteund. - status: 406 - detail: The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to thr accept headers sent in the request - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: notAcceptable - '415': - description: Unsupported Media Type - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.16 - title: Unsupported Media Type - status: 415 - detail: The server is refusing the request because the entity of the request is in a format not supported by the requested resource for the requested method. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: unsupported - '429': - description: Too Many Requests - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html - title: Too many request - status: 429 - detail: The user has sent too many requests in a given amount of time (rate limiting). - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: tooManyRequests - '500': - description: Internal Server Error - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1 - title: Interne server fout. - status: 500 - detail: The server encountered an unexpected condition which prevented it from fulfilling the request. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: serverError - '503': - description: Service Unavailable - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - example: - type: https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.4 - title: Bronservice BRP is tijdelijk niet beschikbaar. - status: 503 - detail: The service is currently unable to handle the request due to a temporary overloading or maintenance of the server. - instance: https://datapunt.voorbeeldgemeente.nl/api/v1/resourcenaam?parameter=waarde - code: notAvailable - default: - description: Er is een onverwachte fout opgetreden - content: - application/problem+json: - schema: - $ref: '#/components/schemas/Foutbericht' - headers: - warning: - schema: - type: string - maxLength: 500 - description: zie RFC 7234. In het geval een major versie wordt uitgefaseerd, gebruiken we warn-code 299 ("Miscellaneous Persistent Warning") en het API end-point (inclusief versienummer) als de warn-agent van de warning, gevolgd door de warn-text met de human-readable waarschuwing - example: '299 https://service.../api/.../v1 "Deze versie van de API is verouderd en zal uit dienst worden genomen op 2018-02-01. Raadpleeg voor meer informatie hier de documentatie: https://omgevingswet.../api/.../v1".' - X_Rate_Limit_Limit: - schema: - type: integer - X_Rate_Limit_Remaining: - schema: - type: integer - X_Rate_Limit_Reset: - schema: - type: integer diff --git a/specificatie/immigratie.yaml b/specificatie/immigratie.yaml index 5400a467f..9993a2245 100644 --- a/specificatie/immigratie.yaml +++ b/specificatie/immigratie.yaml @@ -14,16 +14,6 @@ components: type: boolean description: | Geeft aan dat de persoon is teruggekeerd uit een situatie van onbekende verblijfplaats - GbaImmigratie: - type: object - description: | - Gegevens over het het immigratie van een persoon. - * **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland. - properties: - datumVestigingInNederland: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - landVanwaarIngeschreven: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' Immigratie: type: object description: | @@ -31,7 +21,7 @@ components: * **landVanWaarIngeschreven** : het land waar de persoon woonde voor (her)vestiging in Nederland. properties: datumVestigingInNederland: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' landVanwaarIngeschreven: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' vanuitVerblijfplaatsOnbekend: diff --git a/specificatie/kiesrecht.yaml b/specificatie/kiesrecht.yaml index 90681a120..c7a0a502f 100644 --- a/specificatie/kiesrecht.yaml +++ b/specificatie/kiesrecht.yaml @@ -6,23 +6,6 @@ info: paths: {} components: schemas: - GbaUitsluitingKiesrecht: - type: object - properties: - uitgeslotenVanKiesrecht: - type: boolean - example: true - einddatum: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - GbaEuropeesKiesrecht: - type: object - description: | - * **aanduiding** - Geeft aan of persoon een oproep moet ontvangen voor verkiezingen voor het Europees parlement. Wordt gevuld met waarden voor 'Europees_Kiesrecht' in 'tabelwaarden.csv'. - properties: - aanduiding: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - einddatumUitsluiting: - $ref: 'datum.yaml#/components/schemas/GbaDatum' UitsluitingKiesrecht: type: object properties: @@ -30,7 +13,7 @@ components: type: boolean example: true einddatum: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' EuropeesKiesrecht: type: object description: | @@ -39,4 +22,4 @@ components: aanduiding: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' einddatumUitsluiting: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' diff --git a/specificatie/kind.yaml b/specificatie/kind.yaml index 0d48c8253..cf60ff5ad 100644 --- a/specificatie/kind.yaml +++ b/specificatie/kind.yaml @@ -6,22 +6,11 @@ info: paths: {} components: schemas: - GbaKind: - type: object - properties: - burgerservicenummer: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' - inOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' - naam: - $ref: 'naam.yaml#/components/schemas/GbaNaamBasis' - geboorte: - $ref: 'geboorte.yaml#/components/schemas/GbaGeboorte' Kind: type: object properties: burgerservicenummer: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' + $ref: 'brp/identificatienummers/burgerservicenummer-v1.yaml#/components/schemas/Burgerservicenummer' inOnderzoek: $ref: '#/components/schemas/KindInOnderzoek' naam: diff --git a/specificatie/naam.yaml b/specificatie/naam.yaml index 82a749827..1e84c87d7 100644 --- a/specificatie/naam.yaml +++ b/specificatie/naam.yaml @@ -6,96 +6,38 @@ info: paths: {} components: schemas: - Geslachtsnaam: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$ - description: | - De achternaam van een persoon. - example: "Vries" - VolledigeNaam: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,450}$ - description: | - Combinatie van predicaat, voornamen, adellijke titel, voorvoegsels en geslachtsnaam, zonder toevoeging van een eventuele partnernaam. - example: "Pieter Jan de Vries" Voorletters: type: string pattern: ^[a-zA-Z0-9À-ž \.]{1,40}$ description: | De voorletters van de persoon, afgeleid van de voornamen. example: "P.J." - Voornamen: - type: string - pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$ - maxLength: 200 - description: | - De verzameling namen voor de geslachtsnaam, gescheiden door spaties. - Voorvoegsel: - type: string - pattern: ^[a-zA-Z \']{1,10}$ - maxLength: 10 - example: "de" - AdellijkeTitelPredicaatSoort: - type: string - enum: - - titel - - predicaat - AdellijkeTitelPredicaatType: - description: | - Wordt gevuld met waarden uit de landelijke tabel 'Adellijke titel/predicaat'. De property soort geeft aan of het een 'predicaat' of een 'titel' is. - allOf: - - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - - properties: - soort: - $ref: '#/components/schemas/AdellijkeTitelPredicaatSoort' - example: - value: - code: "JV" - omschrijving: "jonkvrouw" - soort: "predicaat" - GbaNaamBasis: - type: object - properties: - voornamen: - $ref: '#/components/schemas/Voornamen' - adellijkeTitelPredicaat: - $ref: '#/components/schemas/AdellijkeTitelPredicaatType' - voorvoegsel: - $ref: '#/components/schemas/Voorvoegsel' - geslachtsnaam: - $ref: '#/components/schemas/Geslachtsnaam' - GbaNaamPersoon: - allOf: - - $ref: '#/components/schemas/GbaNaamBasis' - - properties: - aanduidingNaamgebruik: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' NaamBasis: type: object properties: voornamen: - $ref: '#/components/schemas/Voornamen' + $ref: 'brp/naam/voornamen-v1.yaml#/components/schemas/Voornamen' adellijkeTitelPredicaat: - $ref: '#/components/schemas/AdellijkeTitelPredicaatType' + $ref: 'brp/naam/adellijke-titel-predicaat-v1.yaml#/components/schemas/AdellijkeTitelPredicaatType' voorvoegsel: - $ref: '#/components/schemas/Voorvoegsel' + $ref: 'brp/naam/voorvoegsel-v1.yaml#/components/schemas/Voorvoegsel' geslachtsnaam: - $ref: '#/components/schemas/Geslachtsnaam' + $ref: 'brp/naam/geslachtsnaam-v1.yaml#/components/schemas/Geslachtsnaam' voorletters: $ref: '#/components/schemas/Voorletters' volledigeNaam: - $ref: '#/components/schemas/VolledigeNaam' + $ref: 'brp-api/naam/volledige-naam-v1.yaml#/components/schemas/VolledigeNaam' NaamGerelateerde: type: object properties: voornamen: - $ref: '#/components/schemas/Voornamen' + $ref: 'brp/naam/voornamen-v1.yaml#/components/schemas/Voornamen' adellijkeTitelPredicaat: - $ref: '#/components/schemas/AdellijkeTitelPredicaatType' + $ref: 'brp/naam/adellijke-titel-predicaat-v1.yaml#/components/schemas/AdellijkeTitelPredicaatType' voorvoegsel: - $ref: '#/components/schemas/Voorvoegsel' + $ref: 'brp/naam/voorvoegsel-v1.yaml#/components/schemas/Voorvoegsel' geslachtsnaam: - $ref: '#/components/schemas/Geslachtsnaam' + $ref: 'brp/naam/geslachtsnaam-v1.yaml#/components/schemas/Geslachtsnaam' voorletters: $ref: '#/components/schemas/Voorletters' inOnderzoek: diff --git a/specificatie/nationaliteit.yaml b/specificatie/nationaliteit.yaml index 12c7f1c94..c3933e4f6 100644 --- a/specificatie/nationaliteit.yaml +++ b/specificatie/nationaliteit.yaml @@ -33,7 +33,7 @@ components: - type: object properties: datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' nationaliteit: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' inOnderzoek: @@ -44,7 +44,7 @@ components: - type: object properties: datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' inOnderzoek: $ref: '#/components/schemas/BijzonderNederlanderschapInOnderzoek' VastgesteldNietNederlander: @@ -53,7 +53,7 @@ components: - type: object properties: datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' inOnderzoek: $ref: '#/components/schemas/BijzonderNederlanderschapInOnderzoek' Staatloos: @@ -64,7 +64,7 @@ components: - type: object properties: datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' inOnderzoek: $ref: '#/components/schemas/StaatloosInOnderzoek' NationaliteitOnbekend: @@ -73,23 +73,9 @@ components: - type: object properties: datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' inOnderzoek: $ref: '#/components/schemas/NationaliteitOnbekendInOnderzoek' - GbaNationaliteit: - type: object - properties: - aanduidingBijzonderNederlanderschap: - type: string - pattern: ^(B|V)$ - datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - nationaliteit: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - redenOpname: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - inOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' BijzonderNederlanderschapInOnderzoek: allOf: - $ref: 'persoon.yaml#/components/schemas/InOnderzoek' diff --git a/specificatie/openapi.yaml b/specificatie/openapi.yaml index c19648d90..cf7abb5cf 100644 --- a/specificatie/openapi.yaml +++ b/specificatie/openapi.yaml @@ -45,7 +45,7 @@ paths: content: 'application/json; charset=utf-8': schema: - $ref: 'zoek-personen.yaml#/components/schemas/PersonenQuery' + $ref: 'personen-query-v1.yaml#/components/schemas/PersonenQuery' responses: '200': description: | @@ -53,7 +53,7 @@ paths: content: 'application/json; charset=utf-8': schema: - $ref: 'zoek-personen.yaml#/components/schemas/PersonenQueryResponse' + $ref: 'personen-query-response-v1.yaml#/components/schemas/PersonenQueryResponse' '400': $ref: 'problem-details/400-bad-request-response-v1.yaml#/components/responses/400' '401': diff --git a/specificatie/opschortingbijhouding.yaml b/specificatie/opschortingbijhouding.yaml index 9505df25c..e1d539f65 100644 --- a/specificatie/opschortingbijhouding.yaml +++ b/specificatie/opschortingbijhouding.yaml @@ -13,15 +13,6 @@ components: properties: reden: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - GbaOpschortingBijhouding: - allOf: - - $ref: '#/components/schemas/OpschortingBijhoudingBasis' - - type: object - description: | - * **datum**: de datum waarop de bijhouding van de persoonsgegevens is gestaakt. - properties: - datum: - $ref: 'datum.yaml#/components/schemas/GbaDatum' OpschortingBijhouding: allOf: - $ref: '#/components/schemas/OpschortingBijhoudingBasis' @@ -30,4 +21,4 @@ components: * **datum**: de datum waarop de bijhouding van de persoonsgegevens is gestaakt. properties: datum: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' diff --git a/specificatie/ouder.yaml b/specificatie/ouder.yaml index 0ed521e55..994c00cef 100644 --- a/specificatie/ouder.yaml +++ b/specificatie/ouder.yaml @@ -10,26 +10,6 @@ components: type: string pattern: ^[1|2]$ example: "1" - GbaOuder: - type: object - description: | - Gegevens over de ouder van de persoon. - * **datumIngangFamilierechtelijkeBetrekking** - De datum waarop de familierechtelijke betrekking is ontstaan. - properties: - burgerservicenummer: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' - geslacht: - $ref: 'common.yaml#/components/schemas/Waardetabel' - ouderAanduiding: - $ref: '#/components/schemas/OuderAanduiding' - datumIngangFamilierechtelijkeBetrekking: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - naam: - $ref: 'naam.yaml#/components/schemas/GbaNaamBasis' - inOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' - geboorte: - $ref: 'geboorte.yaml#/components/schemas/GbaGeboorte' Ouder: description: | Gegevens over de ouder van de persoon. @@ -38,13 +18,13 @@ components: type: object properties: burgerservicenummer: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' + $ref: 'brp/identificatienummers/burgerservicenummer-v1.yaml#/components/schemas/Burgerservicenummer' geslacht: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' ouderAanduiding: $ref: '#/components/schemas/OuderAanduiding' datumIngangFamilierechtelijkeBetrekking: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' naam: $ref: 'naam.yaml#/components/schemas/NaamGerelateerde' inOnderzoek: diff --git a/specificatie/overlijden.yaml b/specificatie/overlijden.yaml index b8375efea..cd269acd0 100644 --- a/specificatie/overlijden.yaml +++ b/specificatie/overlijden.yaml @@ -6,17 +6,6 @@ info: paths: {} components: schemas: - GbaOverlijden: - type: object - properties: - datum: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - land: - $ref: 'common.yaml#/components/schemas/Waardetabel' - plaats: - $ref: 'common.yaml#/components/schemas/Waardetabel' - inOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' Overlijden: description: | Gegevens over het overlijden. @@ -26,7 +15,7 @@ components: type: object properties: datum: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' land: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' plaats: diff --git a/specificatie/partner.yaml b/specificatie/partner.yaml index 36b522523..8f716f727 100644 --- a/specificatie/partner.yaml +++ b/specificatie/partner.yaml @@ -6,30 +6,11 @@ info: paths: {} components: schemas: - GbaPartner: - type: object - properties: - burgerservicenummer: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' - geslacht: - $ref: 'common.yaml#/components/schemas/Waardetabel' - soortVerbintenis: - $ref: 'common.yaml#/components/schemas/Waardetabel' - naam: - $ref: 'naam.yaml#/components/schemas/GbaNaamBasis' - geboorte: - $ref: 'geboorte.yaml#/components/schemas/GbaGeboorte' - inOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' - aangaanHuwelijkPartnerschap: - $ref: '#/components/schemas/GbaAangaanHuwelijkPartnerschap' - ontbindingHuwelijkPartnerschap: - $ref: "#/components/schemas/GbaOntbindingHuwelijkPartnerschap" Partner: type: object properties: burgerservicenummer: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' + $ref: 'brp/identificatienummers/burgerservicenummer-v1.yaml#/components/schemas/Burgerservicenummer' geslacht: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' soortVerbintenis: @@ -57,20 +38,6 @@ components: type: boolean soortVerbintenis: type: boolean - GbaAangaanHuwelijkPartnerschap: - type: object - description: | - Gegevens over de voltrekking van het huwelijk of het aangaan van het geregistreerd partnerschap. - * **datum** - De datum waarop het huwelijk is voltrokken of het partnerschap is aangegaan. - * **land** - Het land waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel 'Landen'. - * **plaats** - De gemeente waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten" voor een gemeente in Nederland of de omschrijving van een buitenlandse plaats. - properties: - datum: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - land: - $ref: 'common.yaml#/components/schemas/Waardetabel' - plaats: - $ref: 'common.yaml#/components/schemas/Waardetabel' AangaanHuwelijkPartnerschap: type: object description: | @@ -80,7 +47,7 @@ components: * **plaats** - De gemeente waar het huwelijk is voltrokken of het partnerschap is aangegaan. Wordt gevuld met waarden uit de landelijke tabel "Gemeenten" voor een gemeente in Nederland of de omschrijving van een buitenlandse plaats. properties: datum: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' land: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' plaats: @@ -100,11 +67,6 @@ components: type: boolean plaats: type: boolean - GbaOntbindingHuwelijkPartnerschap: - type: object - properties: - datum: - $ref: 'datum.yaml#/components/schemas/GbaDatum' OntbindingHuwelijkPartnerschap: type: object description: | @@ -112,7 +74,7 @@ components: * **datum** : De datum waarop het huwelijk of het partnerschap is ontbonden. properties: datum: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' inOnderzoek: $ref: '#/components/schemas/OntbindingHuwelijkPartnerschapInOnderzoek' OntbindingHuwelijkPartnerschapInOnderzoek: diff --git a/specificatie/personen-query-response-v1.yaml b/specificatie/personen-query-response-v1.yaml new file mode 100644 index 000000000..761f5ac6d --- /dev/null +++ b/specificatie/personen-query-response-v1.yaml @@ -0,0 +1,102 @@ +openapi: 3.1.0 +info: + title: personen query response type definitie + version: 2.0.0 + contact: {} +paths: {} +components: + schemas: + PersonenQueryResponse: + type: object + required: + - type + discriminator: + propertyName: type + mapping: + ZoekMetGeslachtsnaamEnGeboortedatum: '#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatumResponse' + ZoekMetNaamEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijvingResponse' + RaadpleegMetBurgerservicenummer: '#/components/schemas/RaadpleegMetBurgerservicenummerResponse' + ZoekMetPostcodeEnHuisnummer: '#/components/schemas/ZoekMetPostcodeEnHuisnummerResponse' + ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse' + ZoekMetNummeraanduidingIdentificatie: '#/components/schemas/ZoekMetNummeraanduidingIdentificatieResponse' + ZoekMetAdresseerbaarObjectIdentificatie: '#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatieResponse' + properties: + type: + type: string + RaadpleegMetBurgerservicenummerResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: 'persoon.yaml#/components/schemas/Persoon' + ZoekMetGeslachtsnaamEnGeboortedatumResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' + ZoekMetNaamEnGemeenteVanInschrijvingResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' + ZoekMetPostcodeEnHuisnummerResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' + ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' + ZoekMetNummeraanduidingIdentificatieResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' + ZoekMetAdresseerbaarObjectIdentificatieResponse: + allOf: + - $ref: '#/components/schemas/PersonenQueryResponse' + - type: object + properties: + personen: + type: array + description: | + * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. + items: + $ref: 'gezag.yaml#/components/schemas/GezagPersoonBeperkt' diff --git a/specificatie/zoek-personen.yaml b/specificatie/personen-query-v1.yaml similarity index 62% rename from specificatie/zoek-personen.yaml rename to specificatie/personen-query-v1.yaml index 7c60a90ad..15b9d054b 100644 --- a/specificatie/zoek-personen.yaml +++ b/specificatie/personen-query-v1.yaml @@ -1,6 +1,6 @@ -openapi: 3.0.3 +openapi: 3.1.0 info: - title: Zoek Personen endpoint definitie + title: personen query type definitie version: 2.0.0 contact: {} paths: {} @@ -55,7 +55,7 @@ components: burgerservicenummer: type: array items: - $ref: 'persoon.yaml#/components/schemas/Burgerservicenummer' + $ref: 'brp/identificatienummers/burgerservicenummer-v1.yaml#/components/schemas/Burgerservicenummer' minItems: 1 maxItems: 20 ZoekMetGeslachtsnaamEnGeboortedatum: @@ -166,97 +166,3 @@ components: $ref: '#/components/schemas/InclusiefOverledenPersonen' adresseerbaarObjectIdentificatie: $ref: 'verblijfplaats.yaml#/components/schemas/AdresseerbaarObjectIdentificatie' - PersonenQueryResponse: - type: object - required: - - type - discriminator: - propertyName: type - mapping: - ZoekMetGeslachtsnaamEnGeboortedatum: '#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatumResponse' - ZoekMetNaamEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijvingResponse' - RaadpleegMetBurgerservicenummer: '#/components/schemas/RaadpleegMetBurgerservicenummerResponse' - ZoekMetPostcodeEnHuisnummer: '#/components/schemas/ZoekMetPostcodeEnHuisnummerResponse' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse' - ZoekMetNummeraanduidingIdentificatie: '#/components/schemas/ZoekMetNummeraanduidingIdentificatieResponse' - ZoekMetAdresseerbaarObjectIdentificatie: '#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatieResponse' - properties: - type: - type: string - RaadpleegMetBurgerservicenummerResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: 'persoon.yaml#/components/schemas/Persoon' - ZoekMetGeslachtsnaamEnGeboortedatumResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' - ZoekMetNaamEnGemeenteVanInschrijvingResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' - ZoekMetPostcodeEnHuisnummerResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' - ZoekMetNummeraanduidingIdentificatieResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: 'persoon.yaml#/components/schemas/PersoonBeperkt' - ZoekMetAdresseerbaarObjectIdentificatieResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - description: | - * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. - items: - $ref: 'gezag.yaml#/components/schemas/GezagPersoonBeperkt' diff --git a/specificatie/persoon.yaml b/specificatie/persoon.yaml index d94de2b4c..95950e050 100644 --- a/specificatie/persoon.yaml +++ b/specificatie/persoon.yaml @@ -11,12 +11,6 @@ components: Het A-nummer van de persoon type: string pattern: ^[0-9]{10}$ - Burgerservicenummer: - type: string - pattern: ^[0-9]{9}$ - example: "555555021" - GbaGeheimhoudingPersoonsgegevens: - type: integer GeheimhoudingPersoonsgegevens: description: | Gegevens mogen niet worden verstrekt aan derden / maatschappelijke instellingen. @@ -54,18 +48,11 @@ components: description: | Omschrijving van de verificatie van de rni-gegevens pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,50}$ - GbaVerificatie: - type: object - properties: - datum: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - omschrijving: - $ref: '#/components/schemas/OmschrijvingVerificatie' Verificatie: type: object properties: datum: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' omschrijving: $ref: '#/components/schemas/OmschrijvingVerificatie' RniDeelnemer: @@ -78,40 +65,13 @@ components: $ref: '#/components/schemas/OmschrijvingVerdrag' categorie: $ref: '#/components/schemas/Categorie' - GbaPersoonBeperkt: - type: object - properties: - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - geboorte: - $ref: 'geboorte.yaml#/components/schemas/GbaGeboorteBeperkt' - geheimhoudingPersoonsgegevens: - $ref: '#/components/schemas/GbaGeheimhoudingPersoonsgegevens' - geslacht: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - persoonInOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' - naam: - $ref: 'naam.yaml#/components/schemas/GbaNaamBasis' - opschortingBijhouding: - $ref: 'opschortingbijhouding.yaml#/components/schemas/GbaOpschortingBijhouding' - gemeenteVanInschrijving: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - verblijfplaats: - $ref: 'verblijfplaats.yaml#/components/schemas/GbaVerblijfplaatsBeperkt' - rni: - type: array - items: - $ref: '#/components/schemas/RniDeelnemer' - verificatie: - $ref: '#/components/schemas/GbaVerificatie' PersoonBeperkt: type: object description: | * **geslacht** - wordt gevuld met waarden voor 'Geslacht' in 'tabelwaarden.csv'. properties: burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' + $ref: 'brp/identificatienummers/burgerservicenummer-v1.yaml#/components/schemas/Burgerservicenummer' geboorte: $ref: 'geboorte.yaml#/components/schemas/GeboorteBeperkt' geheimhoudingPersoonsgegevens: @@ -134,74 +94,6 @@ components: $ref: '#/components/schemas/RniDeelnemer' verificatie: $ref: '#/components/schemas/Verificatie' - GbaPersoon: - type: object - properties: - aNummer: - $ref: '#/components/schemas/ANummer' - burgerservicenummer: - $ref: '#/components/schemas/Burgerservicenummer' - datumEersteInschrijvingGBA: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - geheimhoudingPersoonsgegevens: - $ref: '#/components/schemas/GbaGeheimhoudingPersoonsgegevens' - geslacht: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - persoonInOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' - gezagInOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' - uitsluitingKiesrecht: - $ref: 'kiesrecht.yaml#/components/schemas/GbaUitsluitingKiesrecht' - europeesKiesrecht: - $ref: 'kiesrecht.yaml#/components/schemas/GbaEuropeesKiesrecht' - naam: - $ref: 'naam.yaml#/components/schemas/GbaNaamPersoon' - nationaliteiten: - type: array - items: - $ref: 'nationaliteit.yaml#/components/schemas/GbaNationaliteit' - geboorte: - $ref: 'geboorte.yaml#/components/schemas/GbaGeboorte' - opschortingBijhouding: - $ref: 'opschortingbijhouding.yaml#/components/schemas/GbaOpschortingBijhouding' - overlijden: - $ref: 'overlijden.yaml#/components/schemas/GbaOverlijden' - verblijfplaats: - $ref: 'verblijfplaats.yaml#/components/schemas/GbaVerblijfplaats' - immigratie: - $ref: 'immigratie.yaml#/components/schemas/GbaImmigratie' - gemeenteVanInschrijving: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - datumInschrijvingInGemeente: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - indicatieCurateleRegister: - $ref: '#/components/schemas/IndicatieCurateleRegister' - indicatieGezagMinderjarige: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - deprecated: true - gezag: - $ref: 'gezag.yaml#/components/schemas/Gezag' - verblijfstitel: - $ref: 'verblijfstitel.yaml#/components/schemas/GbaVerblijfstitel' - kinderen: - type: array - items: - $ref: 'kind.yaml#/components/schemas/GbaKind' - ouders: - type: array - items: - $ref: 'ouder.yaml#/components/schemas/GbaOuder' - partners: - type: array - items: - $ref: 'partner.yaml#/components/schemas/GbaPartner' - rni: - type: array - items: - $ref: '#/components/schemas/RniDeelnemer' - verificatie: - $ref: '#/components/schemas/GbaVerificatie' Persoon: type: object description: | @@ -212,7 +104,7 @@ components: burgerservicenummer: $ref: '#/components/schemas/Burgerservicenummer' datumEersteInschrijvingGBA: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' geheimhoudingPersoonsgegevens: $ref: '#/components/schemas/GeheimhoudingPersoonsgegevens' geslacht: @@ -244,7 +136,7 @@ components: gemeenteVanInschrijving: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' datumInschrijvingInGemeente: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' adressering: $ref: 'adressering.yaml#/components/schemas/Adressering' indicatieCurateleRegister: @@ -283,11 +175,11 @@ components: type: object properties: datumIngangOnderzoekPersoon: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' datumIngangOnderzoekGemeente: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' datumIngangOnderzoekGezag: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' burgerservicenummer: type: boolean geslacht: @@ -310,7 +202,7 @@ components: type: object properties: datumIngangOnderzoekPersoon: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' burgerservicenummer: type: boolean geslacht: @@ -321,4 +213,4 @@ components: type: object properties: datumIngangOnderzoek: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' diff --git a/specificatie/verblijfplaats.yaml b/specificatie/verblijfplaats.yaml index 0f95d6e4b..472c871b7 100644 --- a/specificatie/verblijfplaats.yaml +++ b/specificatie/verblijfplaats.yaml @@ -136,35 +136,6 @@ components: $ref: '#/components/schemas/Locatiebeschrijving' inOnderzoek: $ref: "#/components/schemas/VerblijfadresLocatieInOnderzoek" - GbaVerblijfplaatsBeperkt: - type: object - properties: - straat: - $ref: '#/components/schemas/Straat' - huisnummer: - $ref: '#/components/schemas/Huisnummer' - huisletter: - $ref: '#/components/schemas/Huisletter' - huisnummertoevoeging: - $ref: '#/components/schemas/Huisnummertoevoeging' - aanduidingBijHuisnummer: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - postcode: - $ref: '#/components/schemas/Postcode' - woonplaats: - $ref: '#/components/schemas/Woonplaats' - locatiebeschrijving: - $ref: '#/components/schemas/Locatiebeschrijving' - land: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - regel1: - $ref: '#/components/schemas/Regel1' - regel2: - $ref: '#/components/schemas/Regel2' - regel3: - $ref: '#/components/schemas/Regel3' - inOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' AbstractVerblijfplaats: type: object description: | @@ -198,9 +169,9 @@ components: verblijfadres: $ref: "#/components/schemas/VerblijfadresBuitenland" datumVan: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' deprecated: true inOnderzoek: $ref: '#/components/schemas/VerblijfplaatsBuitenlandInOnderzoek' @@ -225,9 +196,9 @@ components: nummeraanduidingIdentificatie: $ref: '#/components/schemas/NummeraanduidingIdentificatie' datumVan: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' deprecated: true indicatieVastgesteldVerblijftNietOpAdres: $ref: '#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres' @@ -243,13 +214,13 @@ components: - type: object properties: datumVan: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' functieAdres: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' verblijfadres: $ref: "#/components/schemas/VerblijfadresLocatie" datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' deprecated: true indicatieVastgesteldVerblijftNietOpAdres: $ref: '#/components/schemas/IndicatieVastgesteldVerblijftNietOpAdres' @@ -261,32 +232,12 @@ components: - type: object properties: datumVan: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' deprecated: true inOnderzoek: $ref: '#/components/schemas/VerblijfplaatsOnbekendInOnderzoek' - GbaVerblijfplaats: - allOf: - - $ref: '#/components/schemas/GbaVerblijfplaatsBeperkt' - - type: object - properties: - adresseerbaarObjectIdentificatie: - $ref: '#/components/schemas/AdresseerbaarObjectIdentificatie' - nummeraanduidingIdentificatie: - $ref: '#/components/schemas/NummeraanduidingIdentificatie' - datumAanvangAdresBuitenland: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - datumAanvangAdreshouding: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - datumIngangGeldigheid: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - deprecated: true - functieAdres: - $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' - naamOpenbareRuimte: - $ref: '#/components/schemas/NaamOpenbareRuimte' VerblijfplaatsBuitenlandInOnderzoek: allOf: - $ref: 'persoon.yaml#/components/schemas/InOnderzoek' diff --git a/specificatie/verblijfstitel.yaml b/specificatie/verblijfstitel.yaml index c0898aa68..ca459fd88 100644 --- a/specificatie/verblijfstitel.yaml +++ b/specificatie/verblijfstitel.yaml @@ -6,22 +6,6 @@ info: paths: {} components: schemas: - GbaVerblijfstitel: - type: object - description: | - Gegevens over de verblijfsrechtelijke status van de persoon. - * **datumEinde**: Datum waarop de geldigheid van de gegevens over de verblijfstitel is beëindigd. - * **datumIngang**: Datum waarop de gegevens over de verblijfstitel geldig zijn geworden. - * **aanduiding** : Verblijfstiteltabel die aangeeft over welke verblijfsrechtelijke status de persoon beschikt. Wordt gevuld met waarden uit de landelijke tabel 'Verblijfstitel'. - properties: - aanduiding: - $ref: 'common.yaml#/components/schemas/Waardetabel' - datumEinde: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - datumIngang: - $ref: 'datum.yaml#/components/schemas/GbaDatum' - inOnderzoek: - $ref: 'gba-inonderzoek.yaml#/components/schemas/GbaInOnderzoek' Verblijfstitel: type: object description: | @@ -33,9 +17,9 @@ components: aanduiding: $ref: 'brp/waardetabel-v1.yaml#/components/schemas/Waardetabel' datumEinde: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' datumIngang: - $ref: 'datum.yaml#/components/schemas/AbstractDatum' + $ref: 'brp-api/datum/datum-polymorf-v1.yaml#/components/schemas/AbstractDatum' inOnderzoek: $ref: '#/components/schemas/VerblijfstitelInOnderzoek' VerblijfstitelInOnderzoek: diff --git a/specificatie/zoek-gba-personen.yaml b/specificatie/zoek-gba-personen.yaml deleted file mode 100644 index 3ef07318c..000000000 --- a/specificatie/zoek-gba-personen.yaml +++ /dev/null @@ -1,147 +0,0 @@ -openapi: 3.0.3 -info: - title: Zoek Personen endpoint definitie - version: 2.0.0 - contact: {} -paths: - /personen: - post: - operationId: GetPersonen - summary: Zoek personen - description: | - Zoek personen met één van de onderstaande verplichte combinaties van parameters en vul ze evt. aan met optionele parameters. - - 1. Raadpleeg met burgerservicenummer - 2. Zoek met geslachtsnaam en geboortedatum - 3. Zoek met geslachtsnaam, voornamen en gemeente van inschrijving - 4. Zoek met postcode en huisnummer - 5. Zoek met straat, huisnummer en gemeente van inschrijving - 6. Zoek met nummeraanduiding identificatie - - Default krijg je personen terug die nog in leven zijn, tenzij je de inclusiefoverledenpersonen=true opgeeft. - - Gebruik de fields parameter om alleen die gegevens op te vragen die je nodig hebt en waarvoor je geautoriseerd bent. - requestBody: - content: - 'application/json; charset=utf-8': - schema: - $ref: 'zoek-personen.yaml#/components/schemas/PersonenQuery' - responses: - '200': - description: | - Zoekactie geslaagd - headers: - warning: - $ref: 'common.yaml#/components/headers/warning' - X-Rate-Limit-Limit: - $ref: 'common.yaml#/components/headers/X_Rate_Limit_Limit' - X-Rate-Limit-Remaining: - $ref: 'common.yaml#/components/headers/X_Rate_Limit_Remaining' - X-Rate-Limit-Reset: - $ref: 'common.yaml#/components/headers/X_Rate_Limit_Reset' - content: - 'application/json; charset=utf-8': - schema: - $ref: '#/components/schemas/PersonenQueryResponse' - '400': - $ref: 'common.yaml#/components/responses/400' - '401': - $ref: 'common.yaml#/components/responses/401' - '403': - $ref: 'common.yaml#/components/responses/403' - '406': - $ref: 'common.yaml#/components/responses/406' - '415': - $ref: 'common.yaml#/components/responses/415' - '429': - $ref: 'common.yaml#/components/responses/429' - '500': - $ref: 'common.yaml#/components/responses/500' - '503': - $ref: 'common.yaml#/components/responses/503' - 'default': - $ref: 'common.yaml#/components/responses/default' - tags: - - Personen -components: - schemas: - PersonenQueryResponse: - type: object - required: - - type - discriminator: - propertyName: type - mapping: - ZoekMetGeslachtsnaamEnGeboortedatum: '#/components/schemas/ZoekMetGeslachtsnaamEnGeboortedatumResponse' - ZoekMetNaamEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetNaamEnGemeenteVanInschrijvingResponse' - RaadpleegMetBurgerservicenummer: '#/components/schemas/RaadpleegMetBurgerservicenummerResponse' - ZoekMetPostcodeEnHuisnummer: '#/components/schemas/ZoekMetPostcodeEnHuisnummerResponse' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijving: '#/components/schemas/ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse' - ZoekMetNummeraanduidingIdentificatie: '#/components/schemas/ZoekMetNummeraanduidingIdentificatieResponse' - ZoekMetAdresseerbaarObjectIdentificatie: '#/components/schemas/ZoekMetAdresseerbaarObjectIdentificatieResponse' - properties: - type: - type: string - RaadpleegMetBurgerservicenummerResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: 'persoon.yaml#/components/schemas/GbaPersoon' - ZoekMetGeslachtsnaamEnGeboortedatumResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: 'persoon.yaml#/components/schemas/GbaPersoonBeperkt' - ZoekMetNaamEnGemeenteVanInschrijvingResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: 'persoon.yaml#/components/schemas/GbaPersoonBeperkt' - ZoekMetPostcodeEnHuisnummerResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: 'persoon.yaml#/components/schemas/GbaPersoonBeperkt' - ZoekMetStraatHuisnummerEnGemeenteVanInschrijvingResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: 'persoon.yaml#/components/schemas/GbaPersoonBeperkt' - ZoekMetNummeraanduidingIdentificatieResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: 'persoon.yaml#/components/schemas/GbaPersoonBeperkt' - ZoekMetAdresseerbaarObjectIdentificatieResponse: - allOf: - - $ref: '#/components/schemas/PersonenQueryResponse' - - type: object - properties: - personen: - type: array - items: - $ref: 'gezag.yaml#/components/schemas/GbaGezagPersoonBeperkt' From 204cfba6e0f0e3eda5e5c58d4bfad4e2c27eaadd Mon Sep 17 00:00:00 2001 From: MelvLee Date: Tue, 26 Nov 2024 16:42:01 +0000 Subject: [PATCH 16/22] commit resolve artifacts --- specificatie/resolved/openapi.yaml | 48 ++++++++++++++++-------------- 1 file changed, 25 insertions(+), 23 deletions(-) diff --git a/specificatie/resolved/openapi.yaml b/specificatie/resolved/openapi.yaml index 59f2416f7..bb28416ec 100644 --- a/specificatie/resolved/openapi.yaml +++ b/specificatie/resolved/openapi.yaml @@ -388,6 +388,10 @@ components: DatumOnbekend: '#/components/schemas/DatumOnbekend' JaarDatum: '#/components/schemas/JaarDatum' JaarMaandDatum: '#/components/schemas/JaarMaandDatum' + example: + type: Datum + datum: '2018-07-01' + langFormaat: 1 juli 2018 VolledigeDatum: description: Datum conform iso8601 allOf: @@ -400,10 +404,9 @@ components: required: - datum example: - value: - type: Datum - datum: '2018-07-01' - langFormaat: 1 juli 2018 + type: Datum + datum: '2018-07-01' + langFormaat: 1 juli 2018 DatumOnbekend: description: representatie voor een volledig onbekend datum allOf: @@ -416,10 +419,9 @@ components: required: - onbekend example: - value: - type: DatumOnbekend - onbekend: true - langFormaat: onbekend + type: DatumOnbekend + onbekend: true + langFormaat: onbekend Jaar: type: integer format: int32 @@ -436,10 +438,9 @@ components: required: - jaar example: - value: - type: JaarDatum - jaar: 2018 - langFormaat: 2018 + type: JaarDatum + jaar: 2018 + langFormaat: 2018 Maand: type: integer format: int32 @@ -459,16 +460,17 @@ components: - jaar - maand example: - value: - type: JaarMaandDatum - jaar: 2018 - maand: 7 - langFormaat: juli 2018 + type: JaarMaandDatum + jaar: 2018 + maand: 7 + langFormaat: juli 2018 GeboorteBasis: type: object properties: datum: $ref: '#/components/schemas/AbstractDatum' + description: | + Datum waarop de persoon is geboren. InOnderzoek: type: object properties: @@ -525,11 +527,12 @@ components: minimum: 0 maximum: 150 Voornamen: + description: | + De verzameling namen voor de geslachtsnaam, gescheiden door spaties. type: string pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,200}$ maxLength: 200 - description: | - De verzameling namen voor de geslachtsnaam, gescheiden door spaties. + example: Pieter Jan AdellijkeTitelPredicaatSoort: type: string enum: @@ -544,10 +547,9 @@ components: soort: $ref: '#/components/schemas/AdellijkeTitelPredicaatSoort' example: - value: - code: JV - omschrijving: jonkvrouw - soort: predicaat + code: JV + omschrijving: jonkvrouw + soort: predicaat Voorvoegsel: type: string pattern: ^[a-zA-Z \']{1,10}$ From a87ef7e1bf9adfa49815265f2489670e0b7cef08 Mon Sep 17 00:00:00 2001 From: Melvin Lee Date: Wed, 27 Nov 2024 10:44:41 +0100 Subject: [PATCH 17/22] chore(specs): toelichting features uitgebreid en aangepast om de requirements beter te beschrijven --- ...toelichting-bij-gezag-niet-te-bepalen.feature | 10 +++++----- .../toelichting-bij-tijdelijk-geen-gezag.feature | 16 +++++----------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/features/toelichting-bij-gezag-niet-te-bepalen.feature b/features/toelichting-bij-gezag-niet-te-bepalen.feature index d44aa30be..b9f2f31b4 100644 --- a/features/toelichting-bij-gezag-niet-te-bepalen.feature +++ b/features/toelichting-bij-gezag-niet-te-bepalen.feature @@ -1,12 +1,12 @@ #language: nl -Functionaliteit: Leveren van een toelichting als het gezag van een persoon niet kan worden bepaald +Functionaliteit: Leveren van een toelichting en de burgerservicenummer van het kind als het gezag van een kind niet kan worden bepaald Als consumer van de BRP API - wil ik een toelichting als het gezag voor een kind niet kan worden bepaald - zodat ik weet wat de reden is dat het gezag voor het kind niet kan worden bepaald + wil ik een toelichting en de burgerservicenummer van het kind als het gezag voor een kind niet kan worden bepaald + zodat ik weet wat de reden is dat het gezag voor het kind niet kan worden bepaald en welk kind het betreft - Regel: Een toelichting wordt geleverd als het gezag van een gevraagde kind niet kan worden bepaald + Regel: Een toelichting en de burgerservicenummer van het kind worden geleverd als het gezag van een gevraagde kind niet kan worden bepaald Scenario: Het gezag van het gevraagde kind kan niet worden bepaald Gegeven de persoon met burgerservicenummer '000000012' @@ -41,7 +41,7 @@ Functionaliteit: Leveren van een toelichting als het gezag van een persoon niet | minderjarige.burgerservicenummer | 000000024 | | toelichting | gezag is niet te bepalen omdat de volgende relevante gegevens ontbreken: verblijfplaats van bevraagde persoon | - Regel: Een toelichting wordt geleverd als het gezag van een kind dat verblijft op het gevraagde adres niet kan worden bepaald + Regel: Een toelichting en de burgerservicenummer van het kind worden geleverd als het gezag van een kind dat verblijft op het gevraagde adres niet kan worden bepaald Scenario: Het gezag van een kind dat verblijft op het gevraagde adres kan niet worden bepaald Gegeven adres 'A1' heeft de volgende gegevens diff --git a/features/toelichting-bij-tijdelijk-geen-gezag.feature b/features/toelichting-bij-tijdelijk-geen-gezag.feature index 723655d74..c71fcf8f6 100644 --- a/features/toelichting-bij-tijdelijk-geen-gezag.feature +++ b/features/toelichting-bij-tijdelijk-geen-gezag.feature @@ -1,12 +1,12 @@ #language: nl -Functionaliteit: Leveren van een toelichting als een kind tijdelijk geen gezag heeft +Functionaliteit: Leveren van de burgerservicenummer van het kind als een kind tijdelijk geen gezag heeft Als consumer van de BRP API - wil ik een toelichting als een kind tijdelijk geen gezag heeft - zodat ik weet wat de reden is dat het kind tijdelijk geen gezag heeft + wil ik de burgerservicenummer van het kind als een kind tijdelijk geen gezag heeft + zodat ik weet welk kind tijdelijk geen gezag heeft - Regel: Een toelichting wordt geleverd als het gevraagde kind tijdelijk geen gezag heeft + Regel: De burgerservicenummer van het kind wordt geleverd als het gevraagde kind tijdelijk geen gezag heeft Scenario: Het gevraagde kind heeft tijdelijk geen gezag Gegeven de persoon met burgerservicenummer '000000012' @@ -18,7 +18,6 @@ Functionaliteit: Leveren van een toelichting als een kind tijdelijk geen gezag h | naam | waarde | | type | TijdelijkGeenGezag | | minderjarige.burgerservicenummer | 000000012 | - | toelichting | todo | Scenario: Meerdere gevraagde kinderen hebben tijdelijk geen gezag Gegeven de persoon met burgerservicenummer '000000012' @@ -34,14 +33,12 @@ Functionaliteit: Leveren van een toelichting als een kind tijdelijk geen gezag h | naam | waarde | | type | TijdelijkGeenGezag | | minderjarige.burgerservicenummer | 000000012 | - | toelichting | todo | En heeft de response een persoon met een 'gezag' met de volgende gegevens | naam | waarde | | type | TijdelijkGeenGezag | | minderjarige.burgerservicenummer | 000000024 | - | toelichting | todo | - Regel: Een toelichting wordt geleverd als een kind dat verblijft op het gevraagde adres tijdelijk geen gezag heeft + Regel: De burgerservicenummer van het kind wordt geleverd als een kind dat verblijft op het gevraagde adres tijdelijk geen gezag heeft Scenario: Een kind dat verblijft op het gevraagde adres heeft tijdelijk geen gezag Gegeven adres 'A1' heeft de volgende gegevens @@ -57,7 +54,6 @@ Functionaliteit: Leveren van een toelichting als een kind tijdelijk geen gezag h | naam | waarde | | type | TijdelijkGeenGezag | | minderjarige.burgerservicenummer | 000000012 | - | toelichting | todo | Scenario: Meerdere kinderen die verblijven op het gevraagde adres hebben tijdelijk geen gezag Gegeven adres 'A1' heeft de volgende gegevens @@ -78,9 +74,7 @@ Functionaliteit: Leveren van een toelichting als een kind tijdelijk geen gezag h | naam | waarde | | type | TijdelijkGeenGezag | | minderjarige.burgerservicenummer | 000000012 | - | toelichting | todo | En heeft de response een persoon met een 'gezag' met de volgende gegevens | naam | waarde | | type | TijdelijkGeenGezag | | minderjarige.burgerservicenummer | 000000024 | - | toelichting | todo | From 0eb8053f9331d21427bc82418b0c8a63e7addcd8 Mon Sep 17 00:00:00 2001 From: Melvin Lee Date: Wed, 27 Nov 2024 11:13:41 +0100 Subject: [PATCH 18/22] chore(oas): minor version opgehoogd ivm toevoegen nieuwe functionaliteit --- specificatie/openapi.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specificatie/openapi.yaml b/specificatie/openapi.yaml index cf7abb5cf..87ad1b858 100644 --- a/specificatie/openapi.yaml +++ b/specificatie/openapi.yaml @@ -11,7 +11,7 @@ info: Gegevens die er niet zijn of niet actueel zijn krijg je niet terug. Had een persoon bijvoorbeeld een verblijfstitel die nu niet meer geldig is, dan wordt die verblijfstitel niet opgenomen. In partners wordt alleen de actuele of de laatst ontbonden partner geleverd. Zie de [Features overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht) en [Getting started](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/getting-started) voor nadere toelichting. - version: 2.3.0 + version: 2.4.0 contact: url: https://brp-api.github.io/Haal-Centraal-BRP-bevragen license: From 609bb09275f8339643c7116c6ae2e3650d1968bf Mon Sep 17 00:00:00 2001 From: MelvLee Date: Wed, 27 Nov 2024 10:14:57 +0000 Subject: [PATCH 19/22] commit resolve artifacts --- specificatie/resolved/openapi.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specificatie/resolved/openapi.yaml b/specificatie/resolved/openapi.yaml index 69da081d0..6b5a7d993 100644 --- a/specificatie/resolved/openapi.yaml +++ b/specificatie/resolved/openapi.yaml @@ -7,7 +7,7 @@ info: Gegevens die er niet zijn of niet actueel zijn krijg je niet terug. Had een persoon bijvoorbeeld een verblijfstitel die nu niet meer geldig is, dan wordt die verblijfstitel niet opgenomen. In partners wordt alleen de actuele of de laatst ontbonden partner geleverd. Zie de [Features overzicht](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/features-overzicht) en [Getting started](https://brp-api.github.io/Haal-Centraal-BRP-bevragen/v2/getting-started) voor nadere toelichting. - version: 2.3.0 + version: 2.4.0 contact: url: https://brp-api.github.io/Haal-Centraal-BRP-bevragen license: @@ -572,7 +572,7 @@ components: pattern: ^[a-zA-Z0-9À-ž \.\-\']{1,450}$ description: | Combinatie van predicaat, voornamen, adellijke titel, voorvoegsels en geslachtsnaam, zonder toevoeging van een eventuele partnernaam. - example: jonkheer Pieter Jan de Vries + example: Pieter Jan de Vries NaamBasis: type: object properties: From d65190f05983acd234091118ff292579da753489 Mon Sep 17 00:00:00 2001 From: Leroy Truong Date: Mon, 2 Dec 2024 11:21:58 +0100 Subject: [PATCH 20/22] chore(specs): resolve typo --- features/toelichting-bij-gezag-niet-te-bepalen.feature | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/toelichting-bij-gezag-niet-te-bepalen.feature b/features/toelichting-bij-gezag-niet-te-bepalen.feature index b9f2f31b4..15417c66a 100644 --- a/features/toelichting-bij-gezag-niet-te-bepalen.feature +++ b/features/toelichting-bij-gezag-niet-te-bepalen.feature @@ -3,7 +3,7 @@ Functionaliteit: Leveren van een toelichting en de burgerservicenummer van het kind als het gezag van een kind niet kan worden bepaald Als consumer van de BRP API - wil ik een toelichting en de burgerservicenummer van het kind als het gezag voor een kind niet kan worden bepaald + wil ik een toelichting en het burgerservicenummer van het kind als het gezag voor een kind niet kan worden bepaald zodat ik weet wat de reden is dat het gezag voor het kind niet kan worden bepaald en welk kind het betreft Regel: Een toelichting en de burgerservicenummer van het kind worden geleverd als het gezag van een gevraagde kind niet kan worden bepaald From 67a6c6c5103e1aa1d19ed5c8762e0d044657b861 Mon Sep 17 00:00:00 2001 From: Leroy Truong Date: Mon, 2 Dec 2024 11:22:22 +0100 Subject: [PATCH 21/22] chore(specs): resolve typo --- features/toelichting-bij-tijdelijk-geen-gezag.feature | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/toelichting-bij-tijdelijk-geen-gezag.feature b/features/toelichting-bij-tijdelijk-geen-gezag.feature index c71fcf8f6..4697022fe 100644 --- a/features/toelichting-bij-tijdelijk-geen-gezag.feature +++ b/features/toelichting-bij-tijdelijk-geen-gezag.feature @@ -3,7 +3,7 @@ Functionaliteit: Leveren van de burgerservicenummer van het kind als een kind tijdelijk geen gezag heeft Als consumer van de BRP API - wil ik de burgerservicenummer van het kind als een kind tijdelijk geen gezag heeft + wil ik het burgerservicenummer van het kind als een kind tijdelijk geen gezag heeft zodat ik weet welk kind tijdelijk geen gezag heeft Regel: De burgerservicenummer van het kind wordt geleverd als het gevraagde kind tijdelijk geen gezag heeft From 0c172d6bdc9774c1a7156cee9de6d0d761223305 Mon Sep 17 00:00:00 2001 From: nkorporaal Date: Thu, 12 Dec 2024 11:08:04 +0100 Subject: [PATCH 22/22] feat(toelichting): uitwerking api specificatie gezag toelichting --- features/step_definitions/als-stepdefs.js | 56 +++ .../gegeven-stepdefs-expressief.js | 421 ++++++++++++++++-- .../gegeven-stepdefs-gezagsrelaties.js | 76 +++- features/step_definitions/step_defs.js | 90 ++-- ...lichting-bij-gezag-niet-te-bepalen.feature | 145 +++--- ...elichting-bij-tijdelijk-geen-gezag.feature | 150 ++++--- 6 files changed, 724 insertions(+), 214 deletions(-) diff --git a/features/step_definitions/als-stepdefs.js b/features/step_definitions/als-stepdefs.js index f9cbc745c..3bd705989 100644 --- a/features/step_definitions/als-stepdefs.js +++ b/features/step_definitions/als-stepdefs.js @@ -3,6 +3,7 @@ const fs = require('fs'); const { executeSqlStatements } = require('./postgresqlHelpers'); const { execute } = require('./postgresqlHelpers-2'); const { generateSqlStatementsFrom } = require('./sqlStatementsFactory'); +const { arrayOfArraysToDataTable } = require('./dataTableFactory'); const { addDefaultAutorisatieSettings, handleRequest } = require('./requestHelpers'); @@ -55,3 +56,58 @@ When(/^([a-zA-Z-]*) wordt gezocht met een '(\w*)' aanroep$/, async function (end await handleRequest(this.context, relativeUrl, undefined, httpMethod); }); + +When(/^gezag wordt gevraagd van '(.*)'$/, async function (aanduiding) { + if(this.context.afnemerID === undefined) { + this.context.afnemerID = this.context.oAuth.clients[0].afnemerID; + this.context.gemeenteCode = this.context.oAuth.clients[0].gemeenteCode; + } + + if(this.context.gezag !== undefined) { + fs.writeFileSync(this.context.gezagDataPath, JSON.stringify(this.context.gezag, null, '\t')); + } + if(this.context.downstreamApiResponseHeaders !== undefined) { + fs.writeFileSync(this.context.downstreamApiDataPath + '/response-headers.json', + JSON.stringify(this.context.downstreamApiResponseHeaders[0], null, '\t')); + } + if(this.context.downstreamApiResponseBody !== undefined) { + fs.writeFileSync(this.context.downstreamApiDataPath + '/response-body.json', + this.context.downstreamApiResponseBody); + } + + if(this.context.sqlData === undefined) { + this.context.sqlData = [{}]; + } + addDefaultAutorisatieSettings(this.context, this.context.afnemerID); + + if(this.context.data) { + await execute(generateSqlStatementsFrom(this.context.data)); + } + else { + await executeSqlStatements(this.context.sql, this.context.sqlData, global.pool); + } + + const aanduidingen = aanduiding.split(','); + let bsns = []; + + aanduidingen.forEach(a => { + let burger_service_nr = this.context.data.personen.find(p => p.id === `persoon-${a}`).persoon.at(-1).burger_service_nr; + bsns.push(burger_service_nr); + }); + + const bsnString = bsns.filter(Boolean).join(","); + + const data = [ + ["type", "RaadpleegMetBurgerservicenummer"], + ["burgerservicenummer", bsnString], + ["fields", "gezag"] + ]; + + const relativeUrl = this.context.apiEndpointPrefixMap.has("personen") + ? `${this.context.apiEndpointPrefixMap.get("personen")}/personen` + : ''; + + const dataTable = arrayOfArraysToDataTable(data); + + await handleRequest(this.context, relativeUrl, dataTable); +}) diff --git a/features/step_definitions/gegeven-stepdefs-expressief.js b/features/step_definitions/gegeven-stepdefs-expressief.js index 7db665f80..f4fd97825 100644 --- a/features/step_definitions/gegeven-stepdefs-expressief.js +++ b/features/step_definitions/gegeven-stepdefs-expressief.js @@ -11,12 +11,13 @@ const { createPersoon, createGezagsverhouding, aanvullenGezagsverhouding, createVerblijfplaats, + wijzigVerblijfplaats, aanvullenInschrijving, createOverlijden } = require('./persoon-2'); const { toDbColumnName } = require('./brp'); -const { toDateOrString } = require('./brpDatum'); +const { toBRPDate } = require('./brpDatum'); function getPersoon(context, aanduiding) { return !aanduiding @@ -32,6 +33,10 @@ function getGeslachtsnaam(persoon) { return persoon.persoon.at(-1).geslachts_naam; } +function getGeboortedatum(persoon) { + return persoon.persoon.at(-1).geboorte_datum; +} + function deleteHuwelijkProperties(entiteit) { delete entiteit.relatie_start_datum; delete entiteit.relatie_start_plaats; @@ -51,6 +56,34 @@ function getPartnerActueleGegevens(persoon, bsnPartner) { return partner; } +function getPartner(persoon) { + let partner; + + Object.keys(persoon).forEach(property => { + if (property.includes('partner')) { + partner = persoon[property].at(-1); + } + }); + + return partner; +} + +function createOntbindingPartnerschap(context, aanduiding, dataTable) { + let overledenPersoon = getPersoon(context, aanduiding); + + Object.keys(overledenPersoon).some(property => { + if (property.includes('partner')) { + const partner = { ...getPartner(overledenPersoon) }; + if(partner.relatie_start_datum) { + const partnerPersoon = getPersoon(context, partner.geslachts_naam); + wijzigPartner(partnerPersoon, dataTable); + return true; + } + } + return false; + }); +} + /** * Expressieve Gegeven-stappen voor Persoon */ @@ -74,6 +107,20 @@ Given(/^(?:de persoon(?: '(.*)')? )?met burgerservicenummer '(\d*)'$/, function gegevenDePersoonMetBsn(this.context, aanduiding, burgerservicenummer, undefined); }); +function wijzigPersoonContext(context, aanduiding) { + const persoonId = `persoon-${aanduiding}`; + const index = context.data.personen.findIndex(element => element.id === persoonId); + + if (index !== -1) { + const [element] = context.data.personen.splice(index, 1); + context.data.personen.push(element); + } +} + +Given(/^persoon '(.*)'$/, function (aanduiding) { + wijzigPersoonContext(this.context, aanduiding); +}); + Given(/^is minderjarig/, function () { const datumGeboorte = 'gisteren - 17 jaar'; @@ -96,7 +143,7 @@ Given(/^is meerderjarig(?:, niet overleden en staat niet onder curatele)?$/, fun ); }); -Given(/^is in Nederland geboren/, function () { +Given(/^is in Nederland geboren$/, function () { const landGeboorte = '6030'; const nummerAkte = '1AA0100'; @@ -109,14 +156,38 @@ Given(/^is in Nederland geboren/, function () { ); }); -Given(/^heeft gezag uitspraak$/, function (dataTable) { - createGezagsverhouding( +Given(/^is in het buitenland geboren$/, function () { + const landGeboorte = '9999'; // any code except 6030 + const nummerAkte = '1AA0100'; + + aanvullenPersoon( getPersoon(this.context, undefined), + arrayOfArraysToDataTable([ + ['geboorteland (03.30)', landGeboorte], + ['aktenummer (81.20)', nummerAkte] + ]) + ); +}); + +Given(/^voor '(.*)' is een gerechtelijke uitspraak over het gezag gedaan met de volgende gegevens$/, function (aanduiding, dataTable) { + createGezagsverhouding( + getPersoon(this.context, aanduiding), dataTable ); }); -Given(/^staat onder curatele/, function () { +Given(/^'(.*)' is onder curatele gesteld$/, function (aanduiding) { + const curateleRegisterIndicatie = '1'; + + aanvullenGezagsverhouding( + getPersoon(this.context, aanduiding), + arrayOfArraysToDataTable([ + ['indicatie curateleregister (33.10)', curateleRegisterIndicatie] + ]) + ); +}); + +Given(/^is onder curatele gesteld/, function () { const curateleRegisterIndicatie = '1'; aanvullenGezagsverhouding( @@ -127,25 +198,71 @@ Given(/^staat onder curatele/, function () { ); }); -Given(/^is overleden/, function () { - const datumOpschortingBijhouden = 'gisteren - 2 jaar'; - const indicatieGeheim = 'O'; +Given(/^(?:'(.*)' )?is overleden$/, function (aanduiding) { + const datumOpschortingBijhouding = 'gisteren - 2 jaar'; + const redenOpschortingBijhouding = 'O'; const datumOverlijden = 'gisteren - 2 jaar'; + const gemeenteCode = '0518'; + const landCode = '6030'; aanvullenInschrijving( - getPersoon(this.context, undefined), + getPersoon(this.context, aanduiding), arrayOfArraysToDataTable([ - ['datum opschorting bijhouding (67.10)', datumOpschortingBijhouden], - ['reden opschorting bijhouding (67.20)', indicatieGeheim] + ['datum opschorting bijhouding (67.10)', datumOpschortingBijhouding], + ['reden opschorting bijhouding (67.20)', redenOpschortingBijhouding] ]) ); createOverlijden( - getPersoon(this.context, undefined), + getPersoon(this.context, aanduiding), arrayOfArraysToDataTable([ ['datum overlijden (08.10)', datumOverlijden] ]) ); + + createOntbindingPartnerschap(this.context, aanduiding, + arrayOfArraysToDataTable([ + ['burgerservicenummer (01.20)', getBsn(getPersoon(this.context, aanduiding))], + ['geslachtsnaam (02.40)', aanduiding], + ['datum ontbinding huwelijk/geregistreerd partnerschap (07.10)', datumOverlijden], + ['plaats ontbinding huwelijk/geregistreerd partnerschap (07.20)', gemeenteCode], + ['land ontbinding huwelijk/geregistreerd partnerschap (07.30)', landCode], + ['reden ontbinding huwelijk/geregistreerd partnerschap (07.40)', redenOpschortingBijhouding] + ]) + ); +}); + +Given(/^'(.*)' is overleden met de volgende gegevens$/, function (aanduiding, dataTable) { + const datumOpschortingBijhouden = 'gisteren - 2 jaar'; + const redenOpschortingBijhouding = 'O'; + + aanvullenInschrijving( + getPersoon(this.context, aanduiding), + arrayOfArraysToDataTable([ + ['datum opschorting bijhouding (67.10)', datumOpschortingBijhouden], + ['reden opschorting bijhouding (67.20)', redenOpschortingBijhouding] + ]) + ); + + createOverlijden( + getPersoon(this.context, aanduiding), + dataTable + ); +}); + + +Given(/^bijhouding van de persoonsgegevens van '(.*)' is opgeschort met de volgende gegevens$/, function (aanduiding, dataTable) { + aanvullenInschrijving( + getPersoon(this.context, aanduiding), + dataTable + ); +}); + +Given(/^heeft de volgende gegevens$/, function (dataTable) { + aanvullenPersoon( + getPersoon(this.context, undefined), + dataTable + ); }); Given(/^zijn de volgende gegevens gewijzigd$/, function (dataTable) { @@ -193,6 +310,28 @@ function gegevenDePersonenZijnGehuwd(context, aanduiding1, aanduiding2, dataTabl ); } +function gegevenDePersonenZijnGehuwdGecorrigeerd(context, aanduiding1, aanduiding2, dataTable) { + wijzigPartner( + getPersoon(context, aanduiding1), + arrayOfArraysToDataTable([ + ['burgerservicenummer (01.20)', getBsn(getPersoon(context, aanduiding2))], + ['geslachtsnaam (02.40)', aanduiding2] + ], dataTable), + true, + true + ); + + wijzigPartner( + getPersoon(context, aanduiding2), + arrayOfArraysToDataTable([ + ['burgerservicenummer (01.20)', getBsn(getPersoon(context, aanduiding1))], + ['geslachtsnaam (02.40)', aanduiding1] + ], dataTable), + true, + true + ); +} + Given(/^'(.*)' en '(.*)' zijn met elkaar gehuwd$/, function (aanduiding1, aanduiding2) { const datumHuwelijk = 'gisteren - 20 jaar'; const plaatsHuwelijk = '0518'; @@ -211,7 +350,7 @@ Given(/^'(.*)' en '(.*)' zijn met elkaar gehuwd met de volgende gegevens$/, func gegevenDePersonenZijnGehuwd(this.context, aanduiding1, aanduiding2, dataTable); }); -Given('beide ouders zijn nooit met elkaar getrouwd geweest en hebben nooit een geregistreerd partnerschap gehad', function () { +Given(/^beide ouders zijn nooit met elkaar getrouwd geweest en hebben nooit een geregistreerd partnerschap gehad$/, function () { // doe niets }); @@ -254,8 +393,8 @@ Given(/^'(.*)' en '(.*)' zijn gescheiden met de volgende gegevens$/, function (a gegevenDePersonenZijnGescheiden(this.context, aanduiding1, aanduiding2, dataTable); }); -Given(/^is het huwelijk van '(.*)' en '(.*)' gecorrigeerd/, function (aanduiding1, aanduiding2, dataTable) { - return 'pending'; +Given(/^is het huwelijk van '(.*)' en '(.*)' gecorrigeerd met de volgende gegevens$/, function (aanduiding1, aanduiding2, dataTable) { + gegevenDePersonenZijnGehuwdGecorrigeerd(this.context, aanduiding1, aanduiding2, dataTable); }); /** @@ -280,6 +419,7 @@ function gegevenHeeftPersoonAlsOuder(context, aanduiding, ouderType, dataTable) arrayOfArraysToDataTable([ ['burgerservicenummer (01.20)', getBsn(kind)], ['geslachtsnaam (02.40)', getGeslachtsnaam(kind)], + ['geboortedatum (03.10)', getGeboortedatum(kind)] ]) ) } @@ -296,16 +436,22 @@ Given(/^heeft '(.*)' als ouder ([1-2]) met de volgende gegevens$/, function (aan gegevenHeeftPersoonAlsOuder(this.context, aanduiding, ouderType, dataTable); }); -function gegevenIsGeadopteerdDoorPersoonAlsOuder(context, aanduiding, ouderType, dataTable) { - const kind = getPersoon(context, undefined); - const ouder = getPersoon(context, aanduiding); +function gegevenIsGeadopteerdDoorPersoonAlsOuder(context, aanduidingKind, aanduidingOuder, ouderType, dataTable) { + const kind = getPersoon(context, aanduidingKind); + + gegevenKindIsGeadopteerdDoorPersoonAlsOuder(context, kind, aanduidingOuder, ouderType, dataTable); +} + +function gegevenKindIsGeadopteerdDoorPersoonAlsOuder(context, kind, aanduidingOuder, ouderType, dataTable) { + const ouder = getPersoon(context, aanduidingOuder); const kindData = { ...kind.persoon.at(-1) }; kindData[toDbColumnName('aktenummer (81.20)')] = '1AQ0100' wijzigPersoon( kind, - objectToDataTable(kindData) + objectToDataTable(kindData), + true ); createOuder( @@ -326,16 +472,30 @@ function gegevenIsGeadopteerdDoorPersoonAlsOuder(context, aanduiding, ouderType, ) } -Given(/^is geadopteerd door '(.*)' als ouder ([1-2])$/, function (aanduiding, ouderType) { +Given(/^is geadopteerd door '(.*)' als ouder ([1-2])$/, function (aanduidingOuder, ouderType) { + const kind = getPersoon(this.context, undefined); + const adoptieOuderData = arrayOfArraysToDataTable([ + ['datum ingang familierechtelijke betrekking (62.10)', 'morgen - 4 jaar'] + ]); + + gegevenKindIsGeadopteerdDoorPersoonAlsOuder(this.context, kind, aanduidingOuder, ouderType, adoptieOuderData); +}); + + +Given(/^'(.*)' is geadopteerd door '(.*)' als ouder ([1-2])$/, function (aanduidingKind, aanduidingOuder, ouderType) { const adoptieOuderData = arrayOfArraysToDataTable([ ['datum ingang familierechtelijke betrekking (62.10)', 'morgen - 4 jaar'] ]); - gegevenIsGeadopteerdDoorPersoonAlsOuder(this.context, aanduiding, ouderType, adoptieOuderData); + gegevenIsGeadopteerdDoorPersoonAlsOuder(this.context, aanduidingKind, aanduidingOuder, ouderType, adoptieOuderData); +}); + +Given(/^'(.*)' is geadopteerd door '(.*)' als ouder ([1-2]) met de volgende gegevens$/, function (aanduidingKind, aanduidingOuder, ouderType, dataTable) { + gegevenIsGeadopteerdDoorPersoonAlsOuder(this.context, aanduidingKind, aanduidingOuder, ouderType, dataTable); }); -Given(/^is geadopteerd door '(.*)' als ouder ([1-2]) met de volgende gegevens$/, function (aanduiding, ouderType, dataTable) { - gegevenIsGeadopteerdDoorPersoonAlsOuder(this.context, aanduiding, ouderType, dataTable); +Given(/^is niet in Nederland geadopteerd$/, function () { + // doe niets }); Given(/^zijn van ouder ([1-2]) de volgende gegevens gewijzigd$/, function (ouderType, dataTable) { @@ -364,7 +524,7 @@ Given(/^zijn van ouder ([1-2]) de volgende gegevens gecorrigeerd$/, function (ou ); }); -Given(/^beide ouders zijn meerderjarig, niet overleden en staan niet onder curatele/, function () { +Given(/^beide ouders zijn meerderjarig, niet overleden en staan niet onder curatele$/, function () { // doe niets }); @@ -372,30 +532,52 @@ Given(/^beide ouders zijn meerderjarig, niet overleden en staan niet onder curat * Expressieve Gegeven-stappen voor Verblijfplaats */ +function gegevenPersoonIsIngeschrevenInGemeente(context, aanduiding, dataTable) { + createVerblijfplaats( + getPersoon(context, aanduiding), + dataTable + ); +} -Given(/^(?:de persoon(?: '(.*)')? )?is ingeschreven in de BRP?$/, function (_) { - const gemeenteVanInschrijving = '0518'; +Given(/^is ingeschreven in de BRP$/, function () { + gegevenPersoonIsIngeschrevenInGemeente( + this.context, + undefined, + arrayOfArraysToDataTable([ + ['gemeente van inschrijving (09.10)', '0518'] + ]) + ); +}); - createVerblijfplaats( - getPersoon(this.context, undefined), +Given(/^is niet ingeschreven in de BRP$/, function () { + gegevenPersoonIsIngeschrevenInGemeente( + this.context, + undefined, arrayOfArraysToDataTable([ - ['gemeente van inschrijving (09.10)', gemeenteVanInschrijving] + ['gemeente van inschrijving (09.10)', '1999'] ]) ); }); -Given(/^(?:de persoon(?: '(.*)')? )?is ingeschreven in de RNI/, function (_) { - const gemeenteVanInschrijving = '1999'; +Given(/^is ingeschreven in de BRP met de volgende gegevens$/, function (dataTable) { + gegevenPersoonIsIngeschrevenInGemeente(this.context, undefined, dataTable); +}); - createVerblijfplaats( - getPersoon(this.context, undefined), +Given(/^is ingeschreven in de RNI$/, function () { + gegevenPersoonIsIngeschrevenInGemeente( + this.context, + undefined, arrayOfArraysToDataTable([ - ['gemeente van inschrijving (09.10)', gemeenteVanInschrijving] + ['gemeente van inschrijving (09.10)', '1999'] ]) ); }); -Given(/^(?:de persoon(?: '(.*)')? )?is niet geëmigreerd geweest/, function (_) { +Given(/^is ingeschreven in de RNI met de volgende gegevens$/, function (dataTable) { + gegevenPersoonIsIngeschrevenInGemeente(this.context, undefined, dataTable); +}); + +Given(/^(?:de persoon(?: '(.*)')? )?is niet geëmigreerd geweest$/, function (_) { // doe niets }); @@ -405,10 +587,173 @@ Given(/^(?:de persoon(?: '(.*)')? )?is geëmigreerd geweest met de volgende gege Given(/^(?:de persoon(?: '(.*)')? )?is geëmigreerd geweest?$/, function (_) { const datumVestiging = 'vandaag - 1 jaar'; + const gemeenteVanInschrijving = '0518'; + + wijzigVerblijfplaats( + getPersoon(this.context, undefined), + arrayOfArraysToDataTable([ + ['datum vestiging in Nederland (14.20)', datumVestiging], + ['gemeente van inschrijving (09.10)', gemeenteVanInschrijving] + ]), + false + ); +}); + +Given(/^heeft een onbekende verblijfplaats$/, function () { + const persoon = getPersoon(this.context, undefined); + const verblijfplaats = persoon.verblijfplaats; + + if(verblijfplaats) { + wijzigVerblijfplaats( + getPersoon(this.context, undefined), + undefined, + false + ); + } else { + // Verblijfplaats is al onbekend + } +}); + +Given(/^heeft een onbekende gemeente van inschrijving$/, function () { + wijzigVerblijfplaats( + getPersoon(this.context, undefined), + arrayOfArraysToDataTable([ + ['gemeente van inschrijving (09.10)', ''] + ]), + false + ); +}); + +/** + * Op dit moment wordt standaard landcode 6014 gebruikt. + * Deze gegeven stap is voor testen waar het niet relevant naar welk land de persoon is geëmigreerd, + * alleen dat de persoon is geëmigreerd. + */ +Given(/^is geëmigreerd naar het buitenland/, function () { + const verblijfplaats = arrayOfArraysToDataTable([ + ['land vanwaar ingeschreven (14.10)', '6014'], + ['datum aanvang adres buitenland (13.20)', '01012023'], + ['datum vestiging in Nederland (14.20)', ''], + ['gemeente van inschrijving (09.10)', '0518'] + ]) + wijzigVerblijfplaats( + getPersoon(this.context, undefined), + verblijfplaats + ); +}); + +/** + * Op dit moment wordt standaard landcode 6003 gebruikt. + * Deze gegeven stap is voor testen waar het niet relevant is uit welk land de persoon geadopteerd is, + * alleen dat de persoon in het buitenland is geboren. + */ +Given(/^is geboren in het buitenland/, function () { + const codeVanLand = '6003'; + + aanvullenPersoon( + getPersoon(this.context, undefined), + arrayOfArraysToDataTable([ + ['geboorteland (03.30)', codeVanLand] + ]) + ); +}); +Given(/^verblijft in Nederland/, function () { + const verblijfplaats = arrayOfArraysToDataTable([ + ['datum vestiging in Nederland (14.20)', 'vandaag - 1 jaar'], + ['gemeente van inschrijving (09.10)', '0518'] + ]) createVerblijfplaats( getPersoon(this.context, undefined), + verblijfplaats + ); +}); + +/** + * Hier volgt de gegeven stappen voor erkenning + */ +const ErkenningsType = { + ErkenningBijGeboorteaangifte: 'B', + ErkenningNaGeboorteaangifte: 'C', + ErkenningBijNotarieleAkte: 'J', + GerechtelijkeVaststellingOuderschap: 'V' +} + +Given(/^is erkend door '(.*)' als ouder ([1-2]) met erkenning bij geboorteaangifte$/, function (aanduidingOuder, ouderType) { + const kind = getPersoon(this.context, null); + const kindData = { ...kind.persoon.at(-1) }; + + const ouderData = arrayOfArraysToDataTable([ + ['datum ingang familierechtelijke betrekking (62.10)', kindData.geboorte_datum] + ]); + + gegevenIsErkendDoorPersoonAlsOuder(this.context, aanduidingOuder, ErkenningsType.ErkenningBijGeboorteaangifte, ouderType, ouderData); +}); + +Given(/^is erkend door '(.*)' als ouder ([1-2]) met erkenning na geboorteaangifte op (\d*)-(\d*)-(\d*)$/, function (aanduidingOuder, ouderType, dag, maand, jaar) { + const ouderData = arrayOfArraysToDataTable([ + ['datum ingang familierechtelijke betrekking (62.10)', toBRPDate(dag, maand, jaar)] + ]); + + gegevenIsErkendDoorPersoonAlsOuder(this.context, aanduidingOuder, ErkenningsType.ErkenningNaGeboorteaangifte, ouderType, ouderData); +}); + +Given(/^is erkend door '(.*)' als ouder ([1-2]) met erkenning bij notariële akte op (\d*)-(\d*)-(\d*)$/, function (aanduidingOuder, ouderType, dag, maand, jaar) { + const ouderData = arrayOfArraysToDataTable([ + ['datum ingang familierechtelijke betrekking (62.10)', toBRPDate(dag, maand, jaar)] + ]); + + gegevenIsErkendDoorPersoonAlsOuder(this.context, aanduidingOuder, ErkenningsType.ErkenningBijNotarieleAkte, ouderType, ouderData); +}); + +Given(/^is erkend door '(.*)' als ouder ([1-2]) met gerechtelijke vaststelling ouderschap op (\d*)-(\d*)-(\d*)$/, function (aanduidingOuder, ouderType, dag, maand, jaar) { + const ouderData = arrayOfArraysToDataTable([ + ['datum ingang familierechtelijke betrekking (62.10)', toBRPDate(dag, maand, jaar)] + ]); + + gegevenIsErkendDoorPersoonAlsOuder(this.context, aanduidingOuder, ErkenningsType.GerechtelijkeVaststellingOuderschap, ouderType, ouderData); +}); + +Given(/^is geboren op (\d*)-(\d*)-(\d*)$/, function (dag, maand, jaar) { + aanvullenPersoon( + getPersoon(this.context, undefined), + arrayOfArraysToDataTable([ + ['geboortedatum (03.10)', toBRPDate(dag, maand, jaar)] + ]) + ); +}); + +function gegevenIsErkendDoorPersoonAlsOuder(context, aanduidingOuder, erkenningsType, ouderType, dataTable) { + if(!erkenningsType) { + erkenningsType = ErkenningsType.ErkenningBijGeboorteaangifte; + } + + const kind = getPersoon(context, null); + const ouder = getPersoon(context, aanduidingOuder); + + const kindData = { ...kind.persoon.at(-1) }; + kindData[toDbColumnName('aktenummer (81.20)')] = `1A${erkenningsType}0100` + + wijzigPersoon( + kind, + objectToDataTable(kindData) + ); + + createOuder( + kind, + ouderType, + arrayOfArraysToDataTable([ + ['burgerservicenummer (01.20)', getBsn(ouder)], + ['geslachtsnaam (02.40)', getGeslachtsnaam(ouder)], + ['aktenummer (81.20)', `1A${erkenningsType}0100`] + ], dataTable) + ); + + createKind( + ouder, arrayOfArraysToDataTable([ - ['datum vestiging in Nederland (14.20)', datumVestiging] - ])); -}); \ No newline at end of file + ['burgerservicenummer (01.20)', getBsn(kind)], + ['geslachtsnaam (02.40)', getGeslachtsnaam(kind)], + ]) + ) +} diff --git a/features/step_definitions/gegeven-stepdefs-gezagsrelaties.js b/features/step_definitions/gegeven-stepdefs-gezagsrelaties.js index 9034cc505..9f06aed5f 100644 --- a/features/step_definitions/gegeven-stepdefs-gezagsrelaties.js +++ b/features/step_definitions/gegeven-stepdefs-gezagsrelaties.js @@ -16,7 +16,7 @@ Given(/^de persoon met burgerservicenummer '(\d*)' heeft geen gezagsrelaties$/, }); function getBsnFromCurrentPersoon(sqlData) { - return sqlData.at(-1).persoon[0].find(p => p[0] === 'burger_service_nr')[1]; + return sqlData.at(-1).persoon.at(0).burger_service_nummer; } Given(/^voor de persoon geldt ?(?:ook)? het volgende gezag$/, function (dataTable) { @@ -24,7 +24,7 @@ Given(/^voor de persoon geldt ?(?:ook)? het volgende gezag$/, function (dataTabl this.context.gezag = []; } - const bsnCurrentPersoon = getBsnFromCurrentPersoon(this.context.sqlData); + const bsnCurrentPersoon = getBsnFromCurrentPersoon(this.context.data.personen); this.context.gezag.push({ burgerservicenummer: bsnCurrentPersoon, gezag: [ createObjectFrom(dataTable) ] @@ -63,3 +63,75 @@ Given(/^het gezag heeft geen derden$/, function() { let gezag = persoon.gezag.at(-1); gezag.derden = []; }); + +Given(/^het gezag is niet te bepalen met de toelichting '(.*)'$/, function(toelichting) { + if(this.context.gezag === undefined) { + this.context.gezag = []; + } + + const bsn = this.context.data.personen.at(-1).persoon.at(-1).burger_service_nr; + + this.context.gezag.push({ + burgerservicenummer: bsn, + gezag: [ { + type: "GezagNietTeBepalen", + toelichting: toelichting, + minderjarige: { + burgerservicenummer: bsn + } + } ] + }); +}) + +Given(/^het gezag over de persoon met burgerservicenummer '(.*)' is niet te bepalen met de toelichting '(.*)'$/, function(burgerservicenummer, toelichting) { + if(this.context.gezag === undefined) { + this.context.gezag = []; + } + + this.context.gezag.push({ + burgerservicenummer: burgerservicenummer, + gezag: [ { + type: "GezagNietTeBepalen", + toelichting: toelichting, + minderjarige: { + burgerservicenummer: burgerservicenummer + } + } ] + }); +}) + +Given(/^er is tijdelijk geen gezag met de toelichting '(.*)'$/, function(toelichting) { + if(this.context.gezag === undefined) { + this.context.gezag = []; + } + + const bsn = this.context.data.personen.at(-1).persoon.at(-1).burger_service_nr; + + this.context.gezag.push({ + burgerservicenummer: bsn, + gezag: [ { + type: "TijdelijkGeenGezag", + toelichting: toelichting, + minderjarige: { + burgerservicenummer: bsn + } + } ] + }); +}) + +Given(/^er is tijdelijk geen gezag over de persoon met burgerservicenummer '(.*)' met de toelichting '(.*)'$/, function(burgerservicenummer, toelichting) { + if(this.context.gezag === undefined) { + this.context.gezag = []; + } + + this.context.gezag.push({ + burgerservicenummer: burgerservicenummer, + gezag: [ { + type: "TijdelijkGeenGezag", + toelichting: toelichting, + minderjarige: { + burgerservicenummer: burgerservicenummer + } + } ] + }); +}) \ No newline at end of file diff --git a/features/step_definitions/step_defs.js b/features/step_definitions/step_defs.js index 466fb2887..622b63848 100644 --- a/features/step_definitions/step_defs.js +++ b/features/step_definitions/step_defs.js @@ -24,21 +24,21 @@ Given(/^landelijke tabel "([\w\-]*)" heeft de volgende waarden$/, function (_tab // doe nog niets }); -Given(/^(?:de|een) persoon met burgerservicenummer '(\d*)' heeft de volgende gegevens$/, function (burgerservicenummer, dataTable) { - if(this.context.sqlData === undefined) { - this.context.sqlData = []; - } - this.context.sqlData.push({}); - - let sqlData = this.context.sqlData.at(-1); - - sqlData["inschrijving"] = [[[ 'geheim_ind', '0' ]]]; - sqlData["persoon"] = [ - createCollectieDataFromArray("persoon", [ - ['burger_service_nr', burgerservicenummer] - ]).concat(createArrayFrom(dataTable, columnNameMap)) - ]; -}); +// Given(/^(?:de|een) persoon met burgerservicenummer '(\d*)' heeft de volgende gegevens$/, function (burgerservicenummer, dataTable) { +// if(this.context.sqlData === undefined) { +// this.context.sqlData = []; +// } +// this.context.sqlData.push({}); + +// let sqlData = this.context.sqlData.at(-1); + +// sqlData["inschrijving"] = [[[ 'geheim_ind', '0' ]]]; +// sqlData["persoon"] = [ +// createCollectieDataFromArray("persoon", [ +// ['burger_service_nr', burgerservicenummer] +// ]).concat(createArrayFrom(dataTable, columnNameMap)) +// ]; +// }); function createPersoonMetGegevensgroep(burgerservicenummer, gegevensgroep, dataTable) { if(this.context.sqlData === undefined) { @@ -384,11 +384,11 @@ async function handleRequest(context, dataTable) { } } -When(/^personen wordt gezocht met de volgende parameters$/, async function (dataTable) { - this.context.proxyAanroep = true +// When(/^personen wordt gezocht met de volgende parameters$/, async function (dataTable) { +// this.context.proxyAanroep = true - await handleRequest(this.context, dataTable) -}); +// await handleRequest(this.context, dataTable) +// }); When(/^gba personen wordt gezocht met de volgende parameters$/, async function (dataTable) { this.context.proxyAanroep = false; @@ -736,23 +736,23 @@ Then(/^heeft (?:de|het) '(.*)' ?(?:alleen)? de volgende '(.*)' gegevens$/, funct } }); -After({tags: 'not @fout-case'}, async function() { - if (this.context.verifyResponse === undefined || - !this.context.verifyResponse) { - return; - } +// After({tags: 'not @fout-case'}, async function() { +// if (this.context.verifyResponse === undefined || +// !this.context.verifyResponse) { +// return; +// } - this.context.response.status.should.equal(200, `response body: ${JSON.stringify(this.context.response.data, null, '\t')}`); +// this.context.response.status.should.equal(200, `response body: ${JSON.stringify(this.context.response.data, null, '\t')}`); - const actual = this.context?.response?.data.personen !== undefined - ? stringifyValues(this.context.response.data.personen) - : []; - const expected = this.context.expected !== undefined - ? this.context.expected - : []; +// const actual = this.context?.response?.data.personen !== undefined +// ? stringifyValues(this.context.response.data.personen) +// : []; +// const expected = this.context.expected !== undefined +// ? this.context.expected +// : []; - actual.should.deep.equalInAnyOrder(expected, `actual: ${JSON.stringify(actual, null, '\t')}\nexpected: ${JSON.stringify(expected, null, '\t')}`); -}); +// actual.should.deep.equalInAnyOrder(expected, `actual: ${JSON.stringify(actual, null, '\t')}\nexpected: ${JSON.stringify(expected, null, '\t')}`); +// }); After({tags: '@fout-case'}, async function() { this.context.response.status.should.not.equal(200, `response body: ${JSON.stringify(this.context.response.data, null, '\t')}`); @@ -779,19 +779,19 @@ Before(function() { } }); -After(async function() { - if (pool === undefined || - !this.context.sql.cleanup || - noSqlData(this.context.sqlData)) { - return; - } +// After(async function() { +// if (pool === undefined || +// !this.context.sql.cleanup || +// noSqlData(this.context.sqlData)) { +// return; +// } - await rollbackSqlStatements(this.context.sqlData, pool, tableNameMap, logSqlStatements); +// await rollbackSqlStatements(this.context.sqlData, pool, tableNameMap, logSqlStatements); - if(this.context.gezagDataPath !== undefined) { - fs.writeFileSync(this.context.gezagDataPath, JSON.stringify([], null, '\t')); - } -}); +// if(this.context.gezagDataPath !== undefined) { +// fs.writeFileSync(this.context.gezagDataPath, JSON.stringify([], null, '\t')); +// } +// }); function getNextStapelNr(sqlData, relatie) { let stapelNr = 0; @@ -912,4 +912,4 @@ Then(/^zijn de gegenereerde SQL statements$/, function(dataTable) { } compareSqlStatements(expected[index], sqlData, plId, adresId); -}); +}); \ No newline at end of file diff --git a/features/toelichting-bij-gezag-niet-te-bepalen.feature b/features/toelichting-bij-gezag-niet-te-bepalen.feature index 15417c66a..f35aa4f17 100644 --- a/features/toelichting-bij-gezag-niet-te-bepalen.feature +++ b/features/toelichting-bij-gezag-niet-te-bepalen.feature @@ -1,7 +1,5 @@ -#language: nl - +# language: nl Functionaliteit: Leveren van een toelichting en de burgerservicenummer van het kind als het gezag van een kind niet kan worden bepaald - Als consumer van de BRP API wil ik een toelichting en het burgerservicenummer van het kind als het gezag voor een kind niet kan worden bepaald zodat ik weet wat de reden is dat het gezag voor het kind niet kan worden bepaald en welk kind het betreft @@ -9,78 +7,99 @@ Functionaliteit: Leveren van een toelichting en de burgerservicenummer van het k Regel: Een toelichting en de burgerservicenummer van het kind worden geleverd als het gezag van een gevraagde kind niet kan worden bepaald Scenario: Het gezag van het gevraagde kind kan niet worden bepaald - Gegeven de persoon met burgerservicenummer '000000012' - * wiens gezag niet kan worden bepaald om de volgende reden - | reden | - | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | - Als het 'gezag' veld wordt gevraagd voor de persoon met burgerservicenummer '000000012' + Gegeven de persoon 'Zoe' met burgerservicenummer '000000036' + * het gezag is niet te bepalen met de toelichting 'gezag is niet te bepalen omdat minderjarige niet in Nederland woont.' + Als gezag wordt gevraagd van 'Zoe' Dan heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | GezagNietTeBepalen | - | minderjarige.burgerservicenummer | 000000012 | - | toelichting | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000036 | + | toelichting | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | Scenario: Het gezag van meerdere gevraagde kinderen kan niet worden bepaald - Gegeven de persoon met burgerservicenummer '000000012' - * wiens gezag niet kan worden bepaald om de volgende reden - | reden | - | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | - En de persoon met burgerservicenummer '000000024' - * wiens gezag niet kan worden bepaald om de volgende reden - | reden | - | gezag is niet te bepalen omdat de volgende relevante gegevens ontbreken: verblijfplaats van bevraagde persoon | - Als het 'gezag' veld wordt gevraagd voor de personen met de burgerservicenummers '000000012,000000024' + Gegeven de persoon 'Alex' met burgerservicenummer '000000012' + * het gezag is niet te bepalen met de toelichting 'gezag is niet te bepalen omdat minderjarige niet in Nederland woont.' + Gegeven de persoon 'Jan' met burgerservicenummer '000000024' + * het gezag is niet te bepalen met de toelichting 'gezag is niet te bepalen omdat de volgende relevante gegevens ontbreken: verblijfplaats van bevraagde persoon' + Gegeven de persoon 'Zoe' met burgerservicenummer '000000036' + * het gezag is niet te bepalen met de toelichting 'gezag is niet te bepalen omdat minderjarige niet in Nederland woont.' + Als gezag wordt gevraagd van 'Alex,Jan,Zoe' Dan heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | GezagNietTeBepalen | - | minderjarige.burgerservicenummer | 000000012 | - | toelichting | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | + En heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000024 | + | toelichting | gezag is niet te bepalen omdat de volgende relevante gegevens ontbreken: verblijfplaats van bevraagde persoon | En heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | GezagNietTeBepalen | - | minderjarige.burgerservicenummer | 000000024 | - | toelichting | gezag is niet te bepalen omdat de volgende relevante gegevens ontbreken: verblijfplaats van bevraagde persoon | + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000036 | + | toelichting | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | Regel: Een toelichting en de burgerservicenummer van het kind worden geleverd als het gezag van een kind dat verblijft op het gevraagde adres niet kan worden bepaald - Scenario: Het gezag van een kind dat verblijft op het gevraagde adres kan niet worden bepaald + Scenario: 'burgerservicenummer (01.20)' wordt gevraagd met 'burgerservicenummer' Gegeven adres 'A1' heeft de volgende gegevens - | identificatiecode verblijfplaats (11.80) | - | 0599010000219679 | - En de persoon met burgerservicenummer '000000012' - * is ingeschreven op adres 'A1' - * wiens gezag niet kan worden bepaald om de volgende reden - | reden | - | gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven. | - Als het 'gezag' veld wordt gevraagd voor de personen die verblijven op adres 'A1' + | gemeentecode (92.10) | identificatiecode verblijfplaats (11.80) | + | 0599 | 0599010051001502 | + En de persoon met burgerservicenummer '000000048' heeft de volgende gegevens + | naam | waarde | + | geslachtsnaam (02.40) | Maassen | + | geboortedatum (03.10) | vandaag - 10 jaar | + | geslachtsaanduiding (04.10) | V | + En het gezag over de persoon met burgerservicenummer '000000048' is niet te bepalen met de toelichting 'gezag is niet te bepalen omdat minderjarige niet in Nederland woont.' + En de persoon is ingeschreven op adres 'A1' met de volgende gegevens + | gemeente van inschrijving (09.10) | + | 0599 | + Als personen wordt gezocht met de volgende parameters + | naam | waarde | + | type | ZoekMetAdresseerbaarObjectIdentificatie | + | adresseerbaarObjectIdentificatie | 0599010051001502 | + | fields | gezag | Dan heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | GezagNietTeBepalen | - | minderjarige.burgerservicenummer | 000000012 | - | toelichting | gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven. | + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000048 | + | toelichting | gezag is niet te bepalen omdat minderjarige niet in Nederland woont. | Scenario: Het gezag van meerdere kinderen die verblijven op het gevraagde adres kan niet worden bepaald Gegeven adres 'A1' heeft de volgende gegevens - | identificatiecode verblijfplaats (11.80) | - | 0599010000219679 | - En de persoon met burgerservicenummer '000000012' - * is ingeschreven op adres 'A1' - * wiens gezag niet kan worden bepaald om de volgende reden - | reden | - | gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven. | - En de persoon met burgerservicenummer '000000024' - * is ingeschreven op adres 'A1' - * wiens gezag niet kan worden bepaald om de volgende reden - | reden | - | gezag is niet te bepalen omdat minderjarige in het buitenland is geboren en geen Nederlandse adoptie-akte bekend is. | - Als het 'gezag' veld wordt gevraagd voor de personen die verblijven op adres 'A1' + | gemeentecode (92.10) | identificatiecode verblijfplaats (11.80) | + | 0599 | 0599010051001502 | + En de persoon met burgerservicenummer '000000012' heeft de volgende gegevens + | naam | waarde | + | geslachtsnaam (02.40) | Maassen | + | geboortedatum (03.10) | vandaag - 10 jaar | + | geslachtsaanduiding (04.10) | V | + En het gezag over de persoon met burgerservicenummer '000000012' is niet te bepalen met de toelichting 'gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven.' + En de persoon is ingeschreven op adres 'A1' met de volgende gegevens + | gemeente van inschrijving (09.10) | + | 0599 | + En de persoon met burgerservicenummer '000000024' heeft de volgende gegevens + | naam | waarde | + | geslachtsnaam (02.40) | Maassen | + | geboortedatum (03.10) | vandaag - 10 jaar | + | geslachtsaanduiding (04.10) | V | + En het gezag over de persoon met burgerservicenummer '000000024' is niet te bepalen met de toelichting 'gezag is niet te bepalen omdat minderjarige in het buitenland is geboren en geen Nederlandse adoptie-akte bekend is.' + En de persoon is ingeschreven op adres 'A1' met de volgende gegevens + | gemeente van inschrijving (09.10) | + | 0599 | + Als personen wordt gezocht met de volgende parameters + | naam | waarde | + | type | ZoekMetAdresseerbaarObjectIdentificatie | + | adresseerbaarObjectIdentificatie | 0599010051001502 | + | fields | gezag | Dan heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | GezagNietTeBepalen | - | minderjarige.burgerservicenummer | 000000012 | - | toelichting | gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven. | + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000012 | + | toelichting | gezag is niet te bepalen omdat minderjarige buiten Nederland heeft verbleven. | En heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | GezagNietTeBepalen | - | minderjarige.burgerservicenummer | 000000024 | - | toelichting | gezag is niet te bepalen omdat minderjarige in het buitenland is geboren en geen Nederlandse adoptie-akte bekend is. | + | naam | waarde | + | type | GezagNietTeBepalen | + | minderjarige.burgerservicenummer | 000000024 | + | toelichting | gezag is niet te bepalen omdat minderjarige in het buitenland is geboren en geen Nederlandse adoptie-akte bekend is. | diff --git a/features/toelichting-bij-tijdelijk-geen-gezag.feature b/features/toelichting-bij-tijdelijk-geen-gezag.feature index 4697022fe..01ccae3e7 100644 --- a/features/toelichting-bij-tijdelijk-geen-gezag.feature +++ b/features/toelichting-bij-tijdelijk-geen-gezag.feature @@ -1,80 +1,98 @@ -#language: nl - -Functionaliteit: Leveren van de burgerservicenummer van het kind als een kind tijdelijk geen gezag heeft - +# language: nl +Functionaliteit: Leveren van een toelichting en de burgerservicenummer van het kind als het gezag van een kind niet kan worden bepaald Als consumer van de BRP API - wil ik het burgerservicenummer van het kind als een kind tijdelijk geen gezag heeft - zodat ik weet welk kind tijdelijk geen gezag heeft + wil ik een toelichting en het burgerservicenummer van het kind als het gezag voor een kind niet kan worden bepaald + zodat ik weet wat de reden is dat het gezag voor het kind niet kan worden bepaald en welk kind het betreft - Regel: De burgerservicenummer van het kind wordt geleverd als het gevraagde kind tijdelijk geen gezag heeft + Regel: Een toelichting en de burgerservicenummer van het kind worden geleverd als het gezag van een gevraagde kind niet kan worden bepaald - Scenario: Het gevraagde kind heeft tijdelijk geen gezag - Gegeven de persoon met burgerservicenummer '000000012' - * heeft tijdelijk geen gezag om de volgende reden - | reden | - | todo | - Als het 'gezag' veld wordt gevraagd voor de persoon met burgerservicenummer '000000012' + Scenario: Er is tijdelijk geen gezag over het gevraagde kind + Gegeven de persoon 'Zoe' met burgerservicenummer '000000036' + En er is tijdelijk geen gezag met de toelichting 'tijdelijk geen gezag omdat een ouder is opgeschort.' + Als gezag wordt gevraagd van 'Zoe' Dan heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | TijdelijkGeenGezag | - | minderjarige.burgerservicenummer | 000000012 | + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000036 | - Scenario: Meerdere gevraagde kinderen hebben tijdelijk geen gezag - Gegeven de persoon met burgerservicenummer '000000012' - * heeft tijdelijk geen gezag om de volgende reden - | reden | - | todo | - En de persoon met burgerservicenummer '000000024' - * heeft tijdelijk geen gezag om de volgende reden - | reden | - | todo | - Als het 'gezag' veld wordt gevraagd voor de personen met de burgerservicenummers '000000012,000000024' + Scenario: Er is tijdelijk geen gezag over meerdere gevraagde kinderen + Gegeven de persoon 'Alex' met burgerservicenummer '000000012' + En er is tijdelijk geen gezag met de toelichting 'tijdelijk geen gezag omdat een ouder is opgeschort.' + Gegeven de persoon 'Jan' met burgerservicenummer '000000024' + En er is tijdelijk geen gezag met de toelichting 'tijdelijk geen gezag omdat een ouder is overleden.' + Gegeven de persoon 'Zoe' met burgerservicenummer '000000036' + En er is tijdelijk geen gezag met de toelichting 'tijdelijk geen gezag omdat een ouder onder curatele staat.' + Als gezag wordt gevraagd van 'Alex,Jan,Zoe' Dan heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | TijdelijkGeenGezag | - | minderjarige.burgerservicenummer | 000000012 | + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000012 | En heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | TijdelijkGeenGezag | - | minderjarige.burgerservicenummer | 000000024 | + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000024 | + En heeft de response een persoon met een 'gezag' met de volgende gegevens + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000036 | + + Regel: Een toelichting en de burgerservicenummer van het kind worden geleverd als er tijdelijk geen gezag is over een kind dat verblijft op het gevraagde adres - Regel: De burgerservicenummer van het kind wordt geleverd als een kind dat verblijft op het gevraagde adres tijdelijk geen gezag heeft - - Scenario: Een kind dat verblijft op het gevraagde adres heeft tijdelijk geen gezag + Scenario: 'burgerservicenummer (01.20)' wordt gevraagd met 'burgerservicenummer' Gegeven adres 'A1' heeft de volgende gegevens - | identificatiecode verblijfplaats (11.80) | - | 0599010000219679 | - En de persoon met burgerservicenummer '000000012' - * is ingeschreven op adres 'A1' - * heeft tijdelijk geen gezag om de volgende reden - | reden | - | todo | - Als het 'gezag' veld wordt gevraagd voor de personen die verblijven op adres 'A1' + | gemeentecode (92.10) | identificatiecode verblijfplaats (11.80) | + | 0599 | 0599010051001502 | + En de persoon met burgerservicenummer '000000048' heeft de volgende gegevens + | naam | waarde | + | geslachtsnaam (02.40) | Maassen | + | geboortedatum (03.10) | vandaag - 10 jaar | + | geslachtsaanduiding (04.10) | V | + En er is tijdelijk geen gezag over de persoon met burgerservicenummer '000000048' met de toelichting 'tijdelijk geen gezag omdat een ouder is opgeschort.' + En de persoon is ingeschreven op adres 'A1' met de volgende gegevens + | gemeente van inschrijving (09.10) | + | 0599 | + Als personen wordt gezocht met de volgende parameters + | naam | waarde | + | type | ZoekMetAdresseerbaarObjectIdentificatie | + | adresseerbaarObjectIdentificatie | 0599010051001502 | + | fields | gezag | Dan heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | TijdelijkGeenGezag | - | minderjarige.burgerservicenummer | 000000012 | + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000048 | - Scenario: Meerdere kinderen die verblijven op het gevraagde adres hebben tijdelijk geen gezag + Scenario: Er is tijdelijk geen gezag over meerdere kinderen die verblijven op het gevraagde adres Gegeven adres 'A1' heeft de volgende gegevens - | identificatiecode verblijfplaats (11.80) | - | 0599010000219679 | - En de persoon met burgerservicenummer '000000012' - * is ingeschreven op adres 'A1' - * heeft tijdelijk geen gezag om de volgende reden - | reden | - | todo | - En de persoon met burgerservicenummer '000000024' - * is ingeschreven op adres 'A1' - * heeft tijdelijk geen gezag om de volgende reden - | reden | - | todo | - Als het 'gezag' veld wordt gevraagd voor de personen die verblijven op adres 'A1' + | gemeentecode (92.10) | identificatiecode verblijfplaats (11.80) | + | 0599 | 0599010051001502 | + En de persoon met burgerservicenummer '000000012' heeft de volgende gegevens + | naam | waarde | + | geslachtsnaam (02.40) | Maassen | + | geboortedatum (03.10) | vandaag - 10 jaar | + | geslachtsaanduiding (04.10) | V | + En er is tijdelijk geen gezag over de persoon met burgerservicenummer '000000012' met de toelichting 'tijdelijk geen gezag omdat een ouder is opgeschort.' + En de persoon is ingeschreven op adres 'A1' met de volgende gegevens + | gemeente van inschrijving (09.10) | + | 0599 | + En de persoon met burgerservicenummer '000000024' heeft de volgende gegevens + | naam | waarde | + | geslachtsnaam (02.40) | Maassen | + | geboortedatum (03.10) | vandaag - 10 jaar | + | geslachtsaanduiding (04.10) | V | + En er is tijdelijk geen gezag over de persoon met burgerservicenummer '000000024' met de toelichting 'tijdelijk geen gezag omdat een ouder is overleden.' + En de persoon is ingeschreven op adres 'A1' met de volgende gegevens + | gemeente van inschrijving (09.10) | + | 0599 | + Als personen wordt gezocht met de volgende parameters + | naam | waarde | + | type | ZoekMetAdresseerbaarObjectIdentificatie | + | adresseerbaarObjectIdentificatie | 0599010051001502 | + | fields | gezag | Dan heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | TijdelijkGeenGezag | - | minderjarige.burgerservicenummer | 000000012 | + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000012 | En heeft de response een persoon met een 'gezag' met de volgende gegevens - | naam | waarde | - | type | TijdelijkGeenGezag | - | minderjarige.burgerservicenummer | 000000024 | + | naam | waarde | + | type | TijdelijkGeenGezag | + | minderjarige.burgerservicenummer | 000000024 |