BRP-API / brp-shared

0 stars 0 forks source link

Scenarios expressief documenteren #10

Open MelvLee opened 2 weeks ago

MelvLee commented 2 weeks ago

Als stakeholder van de BRP API Wil ik dat de scenarios/voorbeelden meer begrijpbaar worden gedocumenteerd Zodat ook afnemers van de BRP API de scenarios/voorbeelden kunnen begrijpen

Voorbeeld:

    Gegeven de persoon met burgerservicenummer '000000012'
    * is minderjarig
    * heeft geslacht man
    * is geboren in het buitenland
    * staat geregistreerd in het RNI
    En de persoon heeft een ouder '1' met burgerservicenummer '000000013' met kenmerken
    * is meerderjarig
    * geslachtsnaam onbekend
    En de persoon heeft een ouder '2' met burgerservicenummer '000000014'
    * heeft een document met de volgende gegevens
    | beschrijving document (82.30) | ingangsdatum geldigheid (85.10) |
    | PKA                           | 0                               |
    En de persoon heeft een kind met burgerservicenummer '000000015'
    * heeft een document met de volgende gegevens
    | aktenummer (81.20) | ingangsdatum geldigheid(85.10) |
    | 1AA0002            | 20151201                       |
    * heeft de volgende naam gegevens
    | geslachtsnaam (02.40) | voornamen (02.10) |
    | Arendsen              | Alexa             |

Voorbeelden uit brp-api-gezag#59 herschreven:

  Scenario: minderjarige
    Gegeven de persoon 'P1' met burgerservicenummer '000000012'
    * staat ingeschreven in Nederland
    * heeft de volgende geboorte gegevens
    | geboortedatum (03.10) | geboorteland (03.30) |
    | minderjarig           | 6030                 |
    # of
    * is geboren in Nederland
    * is minderjarig

  Scenario: minderjarige met 2 ouders (niet gehuwd)
    Gegeven de persoon 'P1' met burgerservicenummer '000000012'
    En de persoon 'P2' met burgerservicenummer '000000013'
    En de persoon 'P3' met burgerservicenummer '000000014'
    * is minderjarig
    * is geboren in Nederland
    * heeft persoon 'P1' als ouder1
    | aktenummer (81.20) |
    | 3AA0001            |
    * heeft persoon 'P2' als ouder2 met de volgende gegevens
    | aktenummer (81.20) |
    | 3AA0001            |

  Scenario: minderjarige met 2 ouders (gehuwd/geregistreerd partnerschap)
    Gegeven de persoon 'P1' met burgerservicenummer '000000012'
    En de persoon 'P2' met burgerservicenummer '000000013'
    En persoon 'P1' is gehuwd met persoon 'P2'
    | datum huwelijkssluiting/aangaan geregistreerd partnerschap (06.10) |
    | gisteren - 20 jaar                                                 |
    En de persoon 'P3' met burgerservicenummer '000000014'
    * heeft de volgende geboorte gegevens
    | geboortedatum (03.10) | geboorteland (03.30) |
    | morgen - 18 jaar      | 6030                 |
    * heeft persoon 'P1' als ouder1
    | aktenummer (81.20) |
    | 3AA0001            |
    * heeft persoon 'P2' als ouder2
    | aktenummer (81.20) |
    | 3AA0001            |

  Scenario: minderjarige staat ingeschreven in RNI (vraag 1.1 - nee)
    Gegeven de persoon 'P1' met burgerservicenummer '000000012'
    En de persoon 'P2' met burgerservicenummer '000000013'
    En persoon 'P1' heeft geregistreerd partnerschap met persoon 'P2'
    | datum huwelijkssluiting/aangaan geregistreerd partnerschap (06.10) |
    | gisteren - 20 jaar                                                 |
    En de persoon 'P3' met burgerservicenummer '000000014'
    * heeft de volgende geboorte gegevens
    | geboortedatum (03.10) | geboorteland (03.30) |
    | morgen - 18 jaar      | 6030                 |
    * heeft persoon 'P1' als ouder1
    | aktenummer (81.20) |
    | 3AA0001            |
    * heeft persoon 'P2' als ouder2
    | aktenummer (81.20) |
    | 3AA0001            |
    * was ingeschreven in Nederland
    * staat vervolgens geregistreerd in het RNI

  Scenario: Ouders zijn nooit met elkaar getrouwd of partners geweest en minderjarige is geadopteerd door beide ouders (vraag 2a.2 - ja)
    Gegeven de persoon 'P1' met burgerservicenummer '000000012'
    En de persoon 'P2' met burgerservicenummer '000000013'
    En de persoon 'P3' met burgerservicenummer '000000014'
    * is geadopteerd volgens de volgende akte
    | aktenummer (81.20) | ingangsdatum geldigheid(85.10) |
    | 1VQ0700            | 20240703                       |
    * heeft persoon 'P1' als ouder1
    | aktenummer (81.20) |
    | 3AA0001            |
    * heeft persoon 'P2' als ouder2
    | aktenummer (81.20) |
    | 3AA0001            |

Benodigde aanpassingen/uitbreidingen

features/step_definitions/gegeven-stepdefs-persoon.js uitbreiden met

Voorstel is de volgende stappen te gebruiken, die de vragen uit het stroomschema volgen: implemented stap data gevolgen dataTable
X de persoon '(*)' met burgerservicenummer '(\d*)' zelfde als "de persoon met burgerservicenummer '(\d*)" optioneel >> persoon[P]
X is ingeschreven in de BRP verblijfplaats: gemeente van inschrijving (09.10) = 518 optioneel, >> verblijfplaats
X is ingeschreven in de RNI verblijfplaats: gemeente van inschrijving (09.10) = 1999 optioneell, >> verblijfplaats
X is minderjarig persoon[P]: geboortedatum (03.10) = morgen - 17 jaar optioneel >> persoon[P]
X is meerderjarig persoon[P]: geboortedatum (03.10) = gisteren - 35 jaar optioneel >> persoon[P]
X is niet geëmigreerd geweest geen niet
X is in Nederland geboren persoon[P]: geboorteland (03.30) = 6030, aktenummer (81.20) = 1AA0100 niet
X heeft geen uitspraak gezag geen niet
X heeft gezag uitspraak uit dataTable >> gezagsverhouding
heeft persoon '(.*)' als ouder persoon[1/2] met gegevens van de ouder, persoon[K] met gegevens van het kind niet
heeft een juridische ouder '(.)' met burgerservicenummer '(\d)' nieuwe PL voor de ouder met burgerservicenummer (01.20), geboortedatum (03.10) = gisteren - 30 jaar, geslachtsnaam (02.40) = "Voorbeeld", persoon[K] van de ouder met burgerservicenummer en geboortedatum van persoon, persoon[1/2] van de persoon met burgerservicenummer en geslachtsnaam van ouders en aktenummer (81.20) = 1AA0100 optioneel, >> persoon[1/2]
beide ouders zijn nu met elkaar gehuwd persoon[R] voor elk van ouders (vorige stap) met naam en burgerservicenummer van andere ouder en datum huwelijkssluiting/aangaan geregistreerd partnerschap (06.10) = geboortedatum kind - 2 jaar niet
beide ouders zijn nooit met elkaar getrouwd geweest en hebben nooit een geregistreerd partnerschap gehad geen niet
beide ouders zijn meerderjarig, niet overleden en staan niet onder curatele geen niet
heeft de volgende gegevens dataTable persoon[P]
zijn de volgende gegevens gewijzigd nieuw voorkomen persoon[P] is kopie van bestaande >> persoon[P]
X is geëmigreerd geweest datum vestiging in Nederland (14.20) = gisteren - 1 jaar optioneel, >> verblijfplaats
is geadopteerd door beide ouders nieuw voorkomen persoon[1+2]: aktenummer (81.20) = 1AQ0100, datum ingang familierechtelijke betrekking (62.10) = gisteren - 1 jaar optioneel, >> persoon[1+2]
is geadopteerd door ouder '(.*)' nieuw voorkomen persoon[1/2]: aktenummer (81.20) = 1AQ0100, datum ingang familierechtelijke betrekking (62.10) = gisteren - 1 jaar optioneel, >> persoon[1/2]
heeft de volgende gegevens voor ouder '(.*)' >> persoon[1/2]
de volgende gegevens voor ouder '(.*)' zijn gecorrigeerd nieuw voorkomen persoon[1/2] is kopie van bestaande, bestaande wordt historisch en krijgt indicatie onjuist (84.10) = "O" >> persoon[1/2]
fsamwel commented 2 weeks ago

@MelvLee ik vind de gegevenstappen op deze manier duidelijk. personen aanduiden met een P-nummer maakt dit denk ik duidelijker. Ik ga https://github.com/BRP-API/brp-api-gezag/pull/4 en https://github.com/BRP-API/brp-api-gezag/pull/65 herschrijven gebaseerd op deze voorbeelden.

fsamwel commented 2 weeks ago

@MelvLee hoeveel mag ik hierbij aannemen als impliciet ingevuld bij de stap "Gegeven de persoon 'P1' met burgerservicenummer '000000012'"?

Of vult deze stap helemaal niks van de persoon, behalve indicatie geheim 0 en het burgerservicenummer, zoals we bij eerdere stappen gedaan hebben?

fsamwel commented 2 weeks ago

@CathyDingemanse @MelvLee ik heb de Gegeven stappen aangepast in 1.1-ingezetene-BRP.feature zoals hier voorgesteld. Is dit hoe jullie het bedoelen/willen?

Een paar opmerkingen:

fsamwel commented 2 weeks ago

Ik heb ook 1.2-minderjarig-niet-overleden.feature aangepast volgens deze stappen.

fsamwel commented 2 weeks ago

@MelvLee hoe moeten de gegeven stappen worden opgenomen wanneer we vragen van gezag van een meerderjarige willen tonen? Hierboven staat als stap En de persoon heeft een kind met burgerservicenummer '000000015' Liever zou ik dat ook als referentie van P-nummer doen: En persoon 'P1' heeft een kind 'P2'

MelvLee commented 1 week ago

@MelvLee hoe moeten de gegeven stappen worden opgenomen wanneer we vragen van gezag van een meerderjarige willen tonen? Hierboven staat als stap En de persoon heeft een kind met burgerservicenummer '000000015' Liever zou ik dat ook als referentie van P-nummer doen: `En persoon 'P1' heeft een kind 'P2'

Dit kan als stap worden toegevoegd. P2 moet dan wel bestaan, want anders kan de burgerservicenummer niet van P2 worden gecopieerd. Bij En de persoon heeft een kind met burgerservicenummer '000000015' stap hoeft het kind niet in de BRP te staan.

nielskorporaal commented 1 week ago

Mogelijke nieuwe vormen van notatie

Persoon met burgerservicenummer

Notatie zonder aanduiding

Met aanduiding

Aanduiding kan bestaan uit meerdere woorden

Notatie met 'En'

'En' kan vervangen worden met '*' ten behoeve van de leesbaarheid

Aanvullende persoonlijke informatie

Persoon is minderjarig / meerderjarig

Persoon is in Nederland geboren

Persoon heeft geen uitspraak gezag

Persoon heeft gezag

Persoon is niet geëmigreerd geweest

Persoon is geëmigreerd geweest

Persoon is ingeschreven in de BRP / RNI

fsamwel commented 1 week ago

Voor vraag 3.1 gebruik ik de volgende stappen:

  1. de persoon '(.)' met burgerservicenummer '(\d)'
  2. is ingeschreven in de BRP
  3. is minderjarig
  4. is niet geëmigreerd geweest
  5. is in Nederland geboren
  6. heeft een ouder '(.)' met burgerservicenummer '(\d)'
  7. (.)' en '(.)' zijn met elkaar gehuwd
  8. beide ouders zijn meerderjarig, niet overleden en staan niet onder curatele
  9. heeft gezag uitspraak
  10. is geadopteerd
  11. zijn de volgende gegevens van ouder '(.*)' gewijzigd
  12. zijn de volgende gegevens gewijzigd
  13. zijn de volgende gegevens gecorrigeerd
  14. (.)' en '(.)' zijn gescheiden
  15. is het huwelijk van '(.)' en '(.)' gecorrigeerd