Files
triqura-ecd/docs/datamodel/deelmodellen/model-instroom.md
colinislit 890704a0f4 docs(datamodel): synchroniseer begrippenlijst en model-aanmelding met instroom
begrippenlijst-kernmodel.md §3: vervangt de voorlopige werktermen (Inbound
Care Signal, Access Assessment Case, Presenting Care Need, Screening
Recommendation) door de bevestigde instroom-begrippen uit model-instroom.md
(Referral Request/Submission/Case, Professional/Municipal Referral, Legal
Mandate, Case Information Request/Withdrawal, Crisis Encounter Note, Case
Urgency Assessment). §10 bijgewerkt: opgeloste terminologievragen gemarkeerd,
Wvggz/Wmo-Jeugdwet-aannames als nieuw juridisch te bevestigen punt.

model-aanmelding.md: AANMELDING/VERWIJZING/VERWIJSDOCUMENT/TOEWIJZING/
ZORGEPISODE (§2.10-§2.13, §2.15) niet-destructief gemarkeerd als vervallen
met verwijzing naar de vervangende entiteit in model-instroom.md — tekst
blijft als historisch werkdocument staan, consistent met het
niet-destructieve patroon dat elders in het datamodel wordt toegepast.
PERSOON/CLIENT/CLIENTRELATIE/VERWIJZER/PRAKTIJK_INSTELLING/CLIENT_HUISARTS/
VERZEKERING/TOESTEMMING/CLIENTPORTAAL_ACCOUNT (§2.1-§2.9, §2.14, §2.16)
blijven ongewijzigd en behouden hun sectienummers, waar model-instroom.md
extern naar verwijst. §7 (open besluitpunten) per punt van een status
voorzien, inclusief waar de uiteindelijke beslissing afweek van het advies.

Corrigeert ook twee foutieve paden in model-instroom.md (§4 waardelijsten
verwezen naar de verkeerde sectie in model-aanmelding.md).
2026-07-19 18:08:43 +02:00

45 KiB
Raw Blame History

Datamodelvoorstel — Instroom (Referral Request/Submission/Case, acceptatiebesluit)

Status: voorstel ter review — eerste entiteiten- en cardinaliteitenafleiding, op 19 juli 2026 drie reviewrondes doorlopen (technisch, GGZ-domein, UX, en GGZ-wetgeving — zie §9) Datum: 19 juli 2026 Scope: Referral Request, Referral Submission, Referral Case, Professional Referral, Care Acceptance Decision, de gebeurtenissen rond een case (screening, informatieverzoek, intrekking, consolidatie), Wmo/Jeugdwet- toewijzing en Wvggz-mandaat als alternatieve instroomroutes, crisis­ documentatie vóór identificatie, en het ontstaan/einde van Clinical Care Episode. Behandeladvies/intake-uitkomst blijft buiten scope (nog open onderzoek, zie feitenmodel §7 vraag 2). Kader: bouwt rechtstreeks op de bevestigde feitzinnen in ../feitenmodellen/feitenmodel-instroom.md. Alle vragen uit diens §7 zijn beantwoord, behalve vraag 2. Dit is de stap "afleiding van entiteiten en cardinaliteiten" uit die §7. Naamgeving: entiteiten en attributen zijn Engelstalig, conform besluit B20. Dit wijkt af van het oudere, Nederlandstalige model-aanmelding.md — die synchronisatie (AANMELDING/VERWIJZING/ZORGEPISODE vervangen door dit voorstel) is een aparte, latere stap, niet in dit document. Autoriteit: ../besluiten/besluitenlog-datamodel-2026-07-18.md blijft leidend.


1. Ontwerpprincipe: tijdlijn in plaats van statusmachine

Referral Case heeft geen vaste, eenrichtings-statusmachine (feitenmodel §4, domeinreview 19 juli 2026). In plaats daarvan zijn dit de gebeurtenis- entiteiten die aan een case kunnen hangen, in willekeurige volgorde en herhaalbaar:

  • submission_case_assignment — een submission wordt aan de case toegewezen;
  • screening_activity — een screeningscontact of -onderzoek;
  • case_information_request — een informatieverzoek;
  • care_acceptance_decision — een (vervangend) acceptatiebesluit;
  • case_withdrawal — een cliënt-intrekking;
  • case_consolidation — een leidend-aanwijzing tussen twee cases.

§7 werkt uit hoe de actuele stand van een case uit deze gebeurtenissen wordt afgeleid.

2. Entiteiten

2.1 referral_request

Doel: het inhoudelijke verzoek om zorg of beoordeling. Eigen identiteit, los van de submission die het aanleverde en los van een eventuele formele verwijzing (feitenmodel §2, §6).

Attribuut Type Verplicht
person_id ref PERSOON nee (zie hieronder — crisisaanmelding met onbekende identiteit)
person_identified_at tijdstip verplicht zodra person_id gevuld is
person_identified_by ref medewerker verplicht zodra person_id gevuld is
initiated_at tijdstip ja
initiator_type waardelijst initiator_type (professional/organisatie/cliënt/vertegenwoordiger) ja
initiator_reference tekst of ref VERWIJZER nee
requested_scope tekst (bv. “gespecialiseerde GGZ”) ja
presenting_need_text tekst (de geuite zorgvraag) ja

Uniciteit: één stabiele identiteit; zodra bekend precies één persoon/cliënt; minstens één initiator; bevat één of meer samenhangende geuite zorgvragen (geen los attribuut — volgt uit de scope van het request zelf, splitsing gebeurt door een nieuw request aan te maken).

Waarom person_id optioneel is: bij crisisaanmeldingen kan de identiteit nog onbekend zijn op het moment dat het request al geregistreerd moet worden. Een placeholder- of "John Doe"-persoon die later wordt vervangen is bewust geen oplossing — dat vereist achteraf alle gekoppelde feiten naar de echte persoon te verplaatsen, wat tegen append-only ingaat. person_identified_at/_by maken de koppeling zelf een gedateerd, toegeschreven feit in plaats van een stille invulling (domeinreview 19 juli 2026, was open punt 1).

2.2 referral_submission

Doel: één afzonderlijke binnenkomst, via één kanaal en op één ontvangstmoment (feitenmodel §2).

Attribuut Type Verplicht
received_at tijdstip ja
channel waardelijst submission_channel (ZorgDomein/e-mail/telefoon/portaal/…) ja
source_reference tekst of ref VERWIJZER nee (“onbekend” toegestaan)
recorded_by ref medewerker nee (verplicht bij telefonische/handmatige registratie)
raw_note tekst nee

Uniciteit: één ontvangstmoment en kanaal; minstens één bron (evt. onbekend); nul of meer documenten; nooit overschreven door een latere aanvulling — een aanvulling is een nieuwe submission.

2.3 submission_document

Doel: een document dat bij een submission is ontvangen (S4, S8).

Attribuut Type Verplicht
submission_id ref referral_submission ja
document_type waardelijst document_type (verwijsbrief/diagnostische aanvulling/…) ja
document_reference ref documentopslag (UUID) ja

Uniciteit: geen — meerdere documenten per submission toegestaan.

Doel: de expliciete koppeling van een submission aan één of meer requests (S5, S9, S12) — de submission zelf wordt nooit gekopieerd of gesplitst (feitenmodel §3.2).

Attribuut Type Verplicht
submission_id ref referral_submission ja
referral_request_id ref referral_request ja
established_at tijdstip ja

Uniciteit: een submission kan 0..n requests representeren of aanvullen; elke bekende relatie is een eigen rij.

link_type vervalt (voorstel, ter evaluatie): “representeert” versus “vult_aan” bleek bij toetsing geen zelfstandig feit met eigen gedrag of regels — geen enkele uniciteits- of optionaliteitsregel behandelt ze verschillend. Het onderscheid is puur chronologisch: de vroegste submission_request_link voor een request is per definitie degene die het representeerde, latere zijn per definitie aanvullingen. Dat volgt al uit established_at in combinatie met de al bestaande volgorde van submissions; een apart, door een mens te zetten waardelijst-veld zou dezelfde informatie dubbel opslaan. established_at wordt daarom verplicht (was optioneel) om deze afleiding altijd mogelijk te maken.

2.5 submission_duplicate_assessment

Doel: vastleggen dat een submission als duplicaat van een andere is beoordeeld (S13, S14).

Attribuut Type Verplicht
submission_id ref referral_submission (het duplicaat) ja
duplicate_of_submission_id ref referral_submission (het origineel) ja
assessed_by ref medewerker ja
assessed_at tijdstip ja
reason tekst ja

Uniciteit: geen destructieve werking — beide submissions blijven bestaan.

2.6 referral_case

Doel: het institutionele aanmeldingstraject voor één samenhangend beoordeelde zorgvraag (feitenmodel §2).

Attribuut Type Verplicht
person_id ref PERSOON nee (zelfde reden als bij referral_request — crisisaanmelding)
person_identified_at tijdstip verplicht zodra person_id gevuld is
person_identified_by ref medewerker verplicht zodra person_id gevuld is
opened_at tijdstip ja
presenting_need_summary tekst ja
wettelijk_kader waardelijst wettelijk_kader (zvw/wmo/jeugdwet/wvggz) ja (overgenomen van AANMELDING in model-aanmelding.md §2.10 / discovery §5.0 besluit 4, was in dit voorstel per abuis niet meegenomen; bepaalt welke instroomroute — professional_referral, municipal_care_assignment, legal_mandate — van toepassing is, reviewronde 19 juli 2026)
zpm_verwijstype waardelijst zpm_verwijstype nee (afleidbaar uit professional_referral/initiator_type, overschrijfbaar; verplicht richting declaratie bij Zvw — overgenomen van AANMELDING in model-aanmelding.md §2.10, was in dit voorstel per abuis niet meegenomen)
huisarts_geinformeerd_op datum nee (instroom zonder verwijzing; nudge harde termijn 60 dagen — overgenomen van AANMELDING in model-aanmelding.md §2.10)

Uniciteit: één stabiele identiteit; één institutioneel als samenhangend beoordeelde zorgvraag; gevoed door 1..n submissions (via submission_case_assignment) en 1..n requests (via request_case_link); geen vast statusveld (zie §1 en §7).

AGB-code en correspondentietoestemming: geen nieuwe velden nodig — AGB van de verwijzer/praktijk loopt via professional_referral.referrer_id → VERWIJZER/PRAKTIJK_INSTELLING (al aanwezig, model-aanmelding.md §2.6§2.7); correspondentietoestemming (verwijstype 04) valt onder de al bestaande generieke TOESTEMMING-entiteit (model-aanmelding.md §2.14), met scope_aanmelding_id wijzend naar deze case.

2.7 submission_case_assignment

Doel: de historiseerbare toewijzing van een submission aan een case (C3C7).

Attribuut Type Verplicht
submission_id ref referral_submission ja
referral_case_id ref referral_case ja
assigned_at tijdstip ja
assigned_by ref medewerker ja
reason tekst nee

Uniciteit: een submission kan aan meerdere cases worden toegewezen (uitzondering, feitenmodel §3.3); toewijzing is een gebeurtenis, geen overschrijfbaar veld.

Doel: welke requests binnen een case worden behandeld, en sinds wanneer (C8, C9).

Attribuut Type Verplicht
referral_request_id ref referral_request ja
referral_case_id ref referral_case ja
since datum ja
reason tekst nee (verplicht zodra een request aan meer dan één case gekoppeld is — uitzondering, feitenmodel §4)

Uniciteit: een request hoort normaliter bij precies één case; koppeling aan meer dan één case is een expliciete uitzondering met reden en tijdgebonden historie.

2.9 case_consolidation

Doel: niet-destructieve leidend-aanwijzing tussen twee overlappende cases (C10C13).

Attribuut Type Verplicht
primary_case_id ref referral_case (leidend) ja
related_case_id ref referral_case (niet-leidend, blijft bestaan) ja
overlap_assessed_at tijdstip nee
designated_at tijdstip ja
designated_by ref medewerker ja
reason tekst ja

Bevoegdheid (voorstel, ter evaluatie): geen speciale decision_authority vereist — elke medewerker die de case behandelt kan consolideren, net als bij submission_case_assignment en submission_duplicate_assessment. Consolidatie is een administratieve correctie (welke case leidend is voor rapportage), geen inhoudelijk besluit over zorgtoegang; zij creëert of beëindigt geen zorgconsequentie zoals care_acceptance_decision dat wel doet. Alleen een mens mag dit vaststellen — AI mag hooguit een match voorstellen (B1) — maar dat is een ander soort eis dan beslisbevoegdheid.

Uniciteit: beide cases behouden hun eigen identiteit en historie na aanwijzing; geen merge, geen verwijdering. related_case_id is uniek: een case kan in hoogstens één consolidatie de niet-leidende rol vervullen (UNIQUE(related_case_id)); primary_case_id blijft vrij herhaalbaar. Een case mag zichzelf niet consolideren (CHECK(primary_case_id <> related_case_id)). Transitieve cykels (A leidend over B, B leidend over A) worden hierdoor niet uitgesloten en blijven een proces-/applicatie­ verantwoordelijkheid (reviewronde 19 juli 2026, zie §9).

2.10 screening_activity

Doel: een concrete screeningsactiviteit binnen een case (G1G4). Levert zelf geen apart advies op (feitenmodel §3.4). (De aparte, lege screening-groeperingsentiteit uit de eerste versie is vervallen — geen enkel eigen attribuut, geen onderscheidend kenmerk tussen meerdere groeperingen; als een echte, benoembare screeningsronde ooit nodig blijkt, komt die terug als event-entiteit met eigen attributen. Reviewronde 19 juli 2026, zie §9.)

Attribuut Type Verplicht
referral_case_id ref referral_case ja
performed_at tijdstip ja
activity_type waardelijst screening_activity_type (telefonisch contact/dossieronderzoek/vragenlijst/…) ja
performed_by ref medewerker ja
notes tekst nee
funded ja/nee nee (default nee — screeningscontact is meestal niet gefinancierd, feitenmodel §3.4)

Uniciteit: geen — 0..n activiteiten per screening.

2.11 case_information_request

Doel: een informatieverzoek als eigen gebeurtenisfeit, niet als besluituitkomst of statusveld (feitenmodel §7 vraag 5, A28A29).

Attribuut Type Verplicht
referral_case_id ref referral_case ja
requested_at tijdstip ja
requested_by ref medewerker ja
requested_information tekst ja
resolved_by_submission_id ref referral_submission nee

Uniciteit: geen — een case kan meerdere informatieverzoeken hebben, ook ná een eerder acceptatiebesluit tijdens een heroverweging.

2.12 care_acceptance_decision

Doel: het formele besluit dat de beoordeling van een case afrondt: draagt zelf de onderliggende beoordelingen, de besluituitkomst, de vervolgroute en, bij afwijzing, de onderbouwing (feitenmodel §2, §3.5, §4).

Attribuut Type Verplicht
referral_case_id ref referral_case ja
decided_at tijdstip ja
decided_by ref medewerker ja
decision_authority_id ref decision_authority ja
content_match ja/nee ja
capacity_available ja/nee nee
program_context ref care_program of tekst nee
decision_outcome waardelijst decision_outcome (geaccepteerd/afgewezen) ja
follow_up_route waardelijst follow_up_route (intake_direct/intakewachtlijst/spoedroute/doorverwijzen/case_afsluiten) ja
rationale tekst verplicht bij afgewezen, anders optioneel
replaces_decision_id ref care_acceptance_decision (zelfreferentie) nee
replacement_reason tekst verplicht als replaces_decision_id gevuld is

Uniciteit: precies één case, beslisser, besluitdatum, besluituitkomst en vervolgroute per besluit. Optioneel precies één eerder besluit van dezelfde case vervangen — het vervangen besluit blijft ongewijzigd bewaard (feitenmodel §4, §7 vraag 3). Capaciteit bepaalt de uitkomst niet automatisch (Route 2A/2B). replaces_decision_id is uniek indien gevuld (partial unique index): een besluit kan door hoogstens één ander besluit worden vervangen, zodat de vervangt-keten nooit vertakt. Zonder die garantie zouden twee besluiten tegelijk "niet vervangen" kunnen zijn en zou de afleidingsregel in §5 geen eenduidig geldig besluit meer opleveren. Het geldige besluit van een case is het laatste, niet-vervangen besluit in de keten. (Concurrency bij gelijktijdige heroverwegingen — bijvoorbeeld via SELECT ... FOR UPDATE op de keten-tail — is een implementatiedetail voor de migratie-/API-laag, niet voor dit document.)

Kettingdiepte (voorstel, ter evaluatie): onbeperkt toegestaan, geen aparte constraint. De afleidingsregel in §5 ("volg de vervangt-keten naar het laatste, niet-vervangen besluit") werkt voor elke kettinglengte zonder extra modellering. Een harde grens van één niveau zou een legitieme correctie-op-een-correctie blokkeren zonder dat daar een aantoonbare praktijkreden voor is — de feitzinnen tonen alleen één niveau omdat dat het scenario was, niet omdat een tweede niveau problematisch zou zijn.

2.13 case_withdrawal

Doel: cliënt-intrekking van een case, geen besluit en geen bevoegdheidseis (feitenmodel §3.5 Route 4, §7 vraag 4).

Attribuut Type Verplicht
referral_case_id ref referral_case ja
withdrawn_at tijdstip ja
recorded_by ref medewerker ja
note tekst nee

Uniciteit: geen — kan op elk moment plaatsvinden, ook ná een positief besluit.

2.14 professional_referral

Doel: de formele Nederlandse VERWIJZING, zelfstandig object gekoppeld aan een request (R6R10, feitenmodel §2, §6).

Attribuut Type Verplicht
referral_request_id ref referral_request ja
referrer_id ref VERWIJZER ja
referral_date datum ja
echelon waardelijst echelon nee
suspected_condition tekst nee
heraanmelding ja/nee ja (default nee) (overgenomen van VERWIJZING in model-aanmelding.md §2.11, was in dit voorstel per abuis niet meegenomen)
replaces_referral_id ref professional_referral (zelfreferentie) nee
replacement_reason tekst verplicht als replaces_referral_id gevuld is

Uniciteit: eigen identiteit, gekoppeld aan precies één request. Een request kan 0..n professional referrals hebben: een correctie of aanvulling op een eerdere verwijzing is geen nieuw request maar een nieuwe professional_referral die de vorige vervangt — dezelfde vervangt-constructie als bij care_acceptance_decision (domeinreview 19 juli 2026, was open punt 1). De vervangen verwijzing blijft ongewijzigd bewaard; het geldige exemplaar is het laatste, niet-vervangen record in de keten. replaces_referral_id is, net als bij care_acceptance_decision, uniek indien gevuld — zelfde reden: voorkomt vertakking van de keten.

AGB-code: geen apart veld — loopt via referrer_id → VERWIJZER, dat al een agb_code draagt (model-aanmelding.md §2.6).

2.15 municipal_care_assignment (voorstel, gebaseerd op juridisch onderzoek 19 juli 2026 — zie §9)

Doel: de gemeentelijke beschikking/toewijzing (Wmo/Jeugdwet, iWmo/iJw 301-bericht) als toegangsticket naast — niet in plaats van — een eventuele professional_referral. Bij Jeugdwet bestaat een zelfstandige professionele verwijsroute náást de gemeentelijke toewijzing (een cliënt kan dus beide hebben); bij Wmo bestaat geen professionele verwijsroute, alleen de gemeentelijke toegang.

Attribuut Type Verplicht
referral_request_id ref referral_request ja
legal_framework waardelijst municipal_legal_framework (wmo/jeugdwet) ja
municipality_code tekst (CBS-gemeentecode) ja
assignment_number tekst (toewijzings-/beschikkingsnummer) ja
product_category waardelijst municipal_product_category ja
product_code tekst ja
volume getal ja
unit waardelijst municipal_product_unit ja
frequency tekst ja
start_date datum ja
end_date datum nee
issued_at tijdstip ja
replaces_assignment_id ref municipal_care_assignment (zelfreferentie) nee
replacement_reason tekst verplicht als replaces_assignment_id gevuld is

BSN, geboortedatum, geslacht en adres van de cliënt komen niet terug als eigen velden — die lopen via PERSOON (al bestaand, niet dubbel modelleren). AGB-code van de aanbieder loopt via de bestaande PRAKTIJK_INSTELLING-entiteit.

Uniciteit: assignment_number uniek per municipality_code. Zelfde vervangt-mechaniek als professional_referral/care_acceptance_decision (gemeenten sturen herziene 301-berichten) — replaces_assignment_id uniek indien gevuld, onbeperkte kettingdiepte.

Doel: het wettelijke mandaat bij gedwongen zorg (Wvggz): crisismaatregel of zorgmachtiging. Bij een crisismaatregel heeft de instelling geen discretionaire ruimte — het burgemeesterlijk besluit (op basis van een medische verklaring) is zelf bindend; er bestaat geen apart institutioneel acceptatiebesluit ernaast. Dit vervangt dus geen care_acceptance_decision, het is een eigen soort feit met een andere aard (wettelijke plicht, geen discretionaire beoordeling).

Attribuut Type Verplicht
referral_case_id ref referral_case ja
mandate_type waardelijst mandate_type (crisismaatregel/zorgmachtiging) ja
decision_reference tekst (besluit-/beschikkingsnummer) ja
decided_by_role waardelijst mandate_decider_role (burgemeester/rechter) ja
decided_at tijdstip ja
medical_statement_reference ref document (medische verklaring psychiater) verplicht bij crisismaatregel
effectuated_at tijdstip (tenuitvoerlegging) ja
valid_from tijdstip ja
valid_until tijdstip nee

(Aanname, te bevestigen door een jurist: geen apart institutioneel acceptatiebesluit náást een mandaat, ook niet bij zorgmachtiging — het juridisch onderzoek noemt dit "aannemelijk", niet met een wetsartikel bevestigd. De 24-uurstermijn voor tenuitvoerlegging bij een crisismaatregel is een nudge-regel, geen opgeslagen constraint.)

Uniciteit: geen vervangt-mechaniek voorgesteld — een crisismaatregel kan overgaan in een machtiging tot voortzetting/zorgmachtiging, maar dat is een nieuw mandaat met eigen decision_reference, geen correctie van het vorige.

2.17 crisis_encounter_note (voorstel, gebaseerd op juridisch onderzoek 19 juli 2026 — zie §9)

Doel: gestructureerde vastlegging van crisisgerelateerd handelen vóórdat identificatie of volledige dossiervorming heeft plaatsgevonden (gesignaleerd thema, zie §6-geschiedenis in §9). Losstaand van screening_activity, dat over het beoordelingsproces gaat, niet over klinisch handelen.

Attribuut Type Verplicht
referral_case_id ref referral_case ja
occurred_at tijdstip ja
recorded_by ref medewerker ja
fact_type waardelijst crisis_fact_type (medicatie_toegediend/risico_inschatting/vitale_functie/dwangmaatregel/overig) ja
description tekst ja
structured_value tekst/JSON nee

Onderbouwing: geen expliciet wetsartikel gevonden dat gestructureerde vastlegging tíjdens de crisisinterventie zelf verplicht (juridisch onderzoek 19 juli 2026) — de algemene WGBO-dossierplicht ondersteunt dit wel in algemene zin. Alle gestructureerde velden blijven daarom optioneel op description na. fact_type = dwangmaatregel verwijst waar mogelijk naar de formele Wvggz-dwangregistratie in plaats van die te dupliceren.

Nudge, geen constraint: een generieke termijn van 14 dagen na de behandeling waarbinnen een cliënt zich alsnog moet identificeren is gevonden (juridisch onderzoek 19 juli 2026, bron niet met artikelnummer bevestigd). Dit wordt een signaal-nudge gekoppeld aan referral_request.person_identified_at IS NULL, geen blokkerende regel en geen attribuut op deze entiteit — de termijn hangt aan identificatie, niet aan de crisisnotitie.

2.18 clinical_care_episode (alleen ontstaan/einde — volledig episodemodel is een ander deelgebied)

Doel: de geaccepteerde zorgperiode die ontstaat uit een positief acceptatiebesluit óf een geldig wettelijk mandaat, ook vóór de feitelijke start van de intake (feitenmodel §3.5, §4; mandaat-route: juridisch onderzoek 19 juli 2026).

Attribuut Type Verplicht
originating_decision_id ref care_acceptance_decision nee (zie XOR-regel hieronder)
originating_mandate_id ref legal_mandate nee (zie XOR-regel hieronder)
started_at tijdstip ja
ended_at tijdstip nee
end_reason waardelijst episode_end_reason verplicht zodra ended_at gevuld is
possible_continuation_of_episode_id ref clinical_care_episode (zelfreferentie) nee

Uniciteit: CHECK dat precies één van originating_decision_id / originating_mandate_id gevuld is — een episode ontstaat óf uit een acceptatiebesluit óf uit een mandaat, nooit uit beide of geen van beide. Maximaal één episode per geldig positief acceptatiebesluit of geldig mandaat. Een episode wordt nooit verwijderd; intrekking of correctie sluit haar af met een reden (ingetrokken_door_client, acceptatiebesluit_herzien, …) in plaats van haar te laten vervallen. Overige einde-redenen (bijvoorbeeld “behandeling afgerond”) horen bij een later deelgebied.

possible_continuation_of_episode_id (voorstel, tussenoplossing — zie §9): systeem-gesuggereerd op basis van een gap ≤ 365 dagen tussen ended_at van de vorige episode (zelfde person_id) en started_at van deze episode; een mens bevestigt. Expliciete disclaimer: dit is een zorginhoudelijke continuïteitsaanwijzing voor het behandelteam, geen autoritatieve NZa-toets voor zorgtrajectnummer-hergebruik — die toets hangt aan de datum van de laatst geleverde prestatie bij dezelfde zorgaanbieder (niet aan de episode-einddatum) en hoort bij een nog niet bestaand declaratie-/prestatieregistratie-deelgebied. Bewust niet "heraanmelding" genoemd om verwarring met professional_referral.heraanmelding (een ZPM-verwijstype-vlag, ander begrip) te voorkomen.

2.19 case_urgency_assessment (voorstel, domeinreview 19 juli 2026 — zie §9)

Doel: urgentie als herhaalbare beoordeling, geen vast veld. Vastgesteld tijdens screening/triage door de rol screener of triagist, en kan later worden aangepast door het intake-team of in een MDO. Consistent met het tijdlijn-principe van dit document (§1): geen vervangt-relatie nodig zoals bij care_acceptance_decision — de laatste beoordeling geldt, de inzet is lager dan bij een acceptatiebesluit.

Attribuut Type Verplicht
referral_case_id ref referral_case ja
assessed_at tijdstip ja
assessed_by ref medewerker ja
assessed_in_role waardelijst urgency_assessor_role (screener/triagist/intake_team/mdo) ja
urgency_level waardelijst urgency_level ja

Uniciteit: geen — 0..n beoordelingen per case; de meest recente bepaalt de actuele urgentie (zelfde afleidingspatroon als §5). Geen verplichte onderbouwing bij de urgentiewaarde zelf (bevestigd door Colin — eenvoudige waardelijst volstaat).

2.20 episode_team_involvement (minimale, voorlopige hook — zie §9)

Doel: vastleggen dat een team bij een episode betrokken is, ook wanneer er nog geen individuele behandelaar is toegewezen (bijvoorbeeld: geaccepteerd met vervolgroute intakewachtlijst, Route 2A). Dit is niet het volledige zorgteam-concept — zorgteam (het team van betrokken behandelaren, met regie-/hoofdbehandelaarschap en rollen, en later mogelijk cliëntautorisatie) is een zelfstandig begrip, los van zorgprogramma en organisatorische eenheid, en krijgt een eigen feitenronde (besluitenlog §10 punt 3; begrippenlijst Episode Clinical Team). Deze entiteit is een minimale, voorlopige hook die door die toekomstige ronde wordt vervangen of geabsorbeerd — geen rollen, geen bevoegdheid, geen individueel lidmaatschap.

Attribuut Type Verplicht
clinical_care_episode_id ref clinical_care_episode ja
team_reference tekst (voorlopig vrije tekst — geen Team-entiteit vóór de zorgteam-ronde) ja
involved_since tijdstip ja
recorded_by ref medewerker ja

Uniciteit: geen — een episode kan door de tijd heen bij meerdere teams betrokken zijn (bijvoorbeeld bij op-/afschalen); geen statusveld, zelfde tijdlijn-principe.

3. Relaties met cardinaliteit

Legenda: Van | Naar | A..B..C — A is de multipliciteit van Van per één rij Naar (meestal 1 bij een verplichte FK op Naar; is die FK optioneel, dan wordt A zelf 0..1 en vervalt het derde token, dus A..B). B..C is de multipliciteit van Naar per één rij Van, als min..max (n = onbegrensd). Rijen met (self) beschrijven alleen het zelfreferentie-FK-veld, geen relatie tussen twee tabellen (reviewronde 19 juli 2026, zie §9).

Van Naar Cardinaliteit Toelichting
referral_request PERSOON n..0..1 optioneel — zie person_identified_at
referral_case PERSOON n..0..1 optioneel — zie person_identified_at
referral_request professional_referral 1..0..n correctie/aanvulling is een vervangend record, geen nieuw request
referral_submission submission_document 1..0..n een submission kan zonder documenten bestaan
referral_submission submission_request_link 1..0..n een submission kan nul, één of meerdere requests representeren/aanvullen
referral_request submission_request_link 1..1..n elk request is via minstens één submission binnengekomen
referral_submission submission_duplicate_assessment 1..0..n een submission kan als duplicaat van meerdere andere zijn beoordeeld (zeldzaam, toegestaan)
referral_case submission_case_assignment 1..1..n een case wordt door minstens één submission gevoed
referral_submission submission_case_assignment 1..0..n een submission kan (uitzonderlijk) aan meerdere cases zijn toegewezen
referral_case request_case_link 1..1..n een case behandelt minstens één request
referral_request request_case_link 1..1..n(uitzondering) normaliter 1 case, bij uitzondering meer (feitenmodel §4)
referral_case case_consolidation 1..0..n een case kan leidend zijn over meerdere andere, of zelf niet-leidend zijn in precies één consolidatie (UNIQUE(related_case_id))
referral_case screening_activity 1..0..n direct aan de case, geen aparte groeperingsentiteit meer
referral_case case_information_request 1..0..n
referral_submission case_information_request 0..1 een submission kan een reactie zijn op hoogstens één informatieverzoek (beide kanten optioneel-enkelvoudig, vandaar geen derde token)
referral_case care_acceptance_decision 1..0..n 0 zolang nog geen besluit; n bij heroverweging/correctie
care_acceptance_decision care_acceptance_decision 0..1 (self) replaces_decision_id, optioneel en uniek indien gevuld — voorkomt vertakking; onbeperkte kettingdiepte (voorstel)
professional_referral professional_referral 0..1 (self) replaces_referral_id, optioneel en uniek indien gevuld — voorkomt vertakking; onbeperkte kettingdiepte (voorstel)
referral_case case_withdrawal 1..0..n doorgaans 0 of 1, technisch meerdere niet uitgesloten
referral_request municipal_care_assignment 1..0..n naast, niet in plaats van professional_referral (voorstel)
municipal_care_assignment municipal_care_assignment 0..1 (self) replaces_assignment_id, optioneel en uniek indien gevuld (voorstel)
referral_case legal_mandate 1..0..n crisismaatregel kan overgaan in zorgmachtiging: nieuw mandaat, geen vervangt-relatie (voorstel)
referral_case crisis_encounter_note 1..0..n werkt al zonder person_id (voorstel)
care_acceptance_decision clinical_care_episode 1..0..1 XOR met legal_mandate; alleen bij uitkomst geaccepteerd
legal_mandate clinical_care_episode 1..0..1 XOR met care_acceptance_decision (voorstel)
clinical_care_episode clinical_care_episode 0..1 (self) possible_continuation_of_episode_id, optioneel, tussenoplossing (voorstel)
referral_case case_urgency_assessment 1..0..n herhaalbaar, laatste geldt (voorstel)
clinical_care_episode episode_team_involvement 1..0..n minimale hook, geen individueel lidmaatschap (voorstel)

4. Waardelijsten (startlijsten, te bevestigen)

Waardelijst Voorlopige waarden
initiator_type professional, organisatie, cliënt, vertegenwoordiger
submission_channel ZorgDomein, e-mail, telefoon, portaal, post, overig
document_type verwijsbrief, diagnostische aanvulling, beschikking, overig
screening_activity_type telefonisch contact, dossieronderzoek, vragenlijst, overig
decision_outcome geaccepteerd, afgewezen
follow_up_route intake_direct, intakewachtlijst, spoedroute, doorverwijzen, case_afsluiten
episode_end_reason ingetrokken_door_client, acceptatiebesluit_herzien, (overige waarden: later deelgebied)
echelon over te nemen uit model-aanmelding.md §4 waardelijst 17 (bestaande waardelijst)
zpm_verwijstype over te nemen uit model-aanmelding.md §4 waardelijst 18 (bestaande waardelijst, ZPM-verwijstypen 0107)
wettelijk_kader over te nemen uit model-aanmelding.md §4 waardelijst 12 (bestaande waardelijst: zvw, wmo, jeugdwet, (wvggz toe te voegen))
municipal_legal_framework wmo, jeugdwet (voorstel)
municipal_product_category / municipal_product_unit over te nemen uit iWmo/iJw-standaard (voorstel, nog niet uitgezocht)
mandate_type crisismaatregel, zorgmachtiging (voorstel)
mandate_decider_role burgemeester, rechter (voorstel)
crisis_fact_type medicatie_toegediend, risico_inschatting, vitale_functie, dwangmaatregel, overig (voorstel)
urgency_assessor_role screener, triagist, intake_team, mdo (voorstel)
urgency_level laag, normaal, hoog, spoed (voorstel)

Alle waardelijsten volgen het bestaande patroon (referentietabel met code, omschrijving, geldig_van/geldig_tot, actief — spelregel 3.1 #1) en zijn hier nog geen definitieve besluiten.

5. Waardelijst-vervanging: geen klassieke statusmachine

referral_case heeft bewust geen status-kolom met vaste overgangen. De actuele stand wordt afgeleid door de gebeurtenissen in tijdsvolgorde te lezen:

  1. Is er een case_withdrawal zonder latere care_acceptance_decision? → case is ingetrokken.
  2. Is er een care_acceptance_decision die niet door een ander besluit is vervangen (replaces_decision_id wijst niet naar dit besluit)? → dat is het geldige besluit; de case is besloten met die uitkomst.
  3. Is er een openstaand case_information_request zonder latere care_acceptance_decision of case_withdrawal? → case wacht op aanvullende informatie.
  4. Geen van bovenstaande? → case is in beoordeling (screening loopt of moet nog beginnen).

Dit is een leesregel voor de applicatielaag, geen opgeslagen veld — zo blijft de volledige tijdlijn de bron (consistent met B7 wachtlijst).

Implementatie-eis (UX-review 19 juli 2026, zie §9): deze afleidingsregel wordt precies één keer geïmplementeerd, in één centrale, herbruikbare projectie (bijvoorbeeld een view of materialized read-model), niet los per scherm. Werklijst, dashboard en detailpagina lezen allemaal diezelfde projectie, nooit de losse events elk apart opnieuw. Zonder die eis ontstaat het risico dat schermen subtiel verschillende interpretaties van "de actuele stand" tonen — precies de drift die het tijdlijn-principe moest voorkomen.

6. Buiten scope van dit document

  • Het volledige clinical_care_episode-model (programma-/organisatie- betrokkenheid, zorgteam) — apart deelgebied, alleen ontstaan/einde hier.
  • clinical_intake_assessment en het behandeladvies — vraag 2 uit het feitenmodel is nog open onderzoek.
  • PERSOON/CLIENT/VERWIJZER/PRAKTIJK_INSTELLING — al uitgewerkt in model-aanmelding.md §2.1§2.9; dit voorstel refereert ernaar zonder te dupliceren.
  • Waardelijst-governance (wie mag waarden toevoegen) — ADM-ronde.
  • Declaratie-/prestatieregistratie-deelgebied — nodig voor de autoritatieve NZa-365-dagentoets voor zorgtrajectnummer-hergebruik (zie possible_continuation_of_episode_id, §2.18); dit voorstel modelleert alleen een zorginhoudelijke benadering, geen declaratie-waarheid.
  • Productcodes/volumes bij municipal_care_assignment — minimale variant nu (§2.15), net als bij TOEWIJZING in model-aanmelding.md §2.13; verdere detaillering in de declaratie-ronde.
  • Gestructureerde crisisdocumentatie vóór identificatie — geadresseerd met crisis_encounter_note (§2.17), gebaseerd op juridisch onderzoek 19 juli 2026 (zie §9).

7. Open punten voor Colin

Beantwoord:

  • person_id verplicht op referral_request/referral_case? Nee, optioneel — komt voor bij crisisaanmeldingen met nog onbekende identiteit. Geen placeholder-persoon; de koppeling wordt een eigen gedateerd feit (person_identified_at/_by) zodra de identiteit vaststaat (domeinreview 19 juli 2026).
  • Kan een request meerdere professional referrals hebben? Ja — een correctie of aanvulling is een wijziging, geen nieuwe verwijzing. Dezelfde vervangt-constructie als bij care_acceptance_decision (replaces_referral_id + verplichte reden); de oude verwijzing blijft bewaard (domeinreview 19 juli 2026).

Voorstel op basis van precedent (ter evaluatie — nog niet door jou bevestigd):

  • Bevoegdheid bij case_consolidation. Geen speciale decision_authority vereist, zoals bij submission_case_assignment en submission_duplicate_assessment — een administratieve correctie, geen inhoudelijk zorgbesluit. Verwerkt in §2.9.
  • Diepte van de vervangt-keten. Onbeperkt, geen aparte constraint — de afleidingsregel in §5 werkt voor elke lengte en een harde grens zou een legitieme correctie-op-een-correctie zonder aantoonbare reden blokkeren. Verwerkt in §2.12, §2.14, §3.
  • submission_link_type vervalt. Representeert/vult_aan is geen zelfstandig feit met eigen regels, puur chronologisch afleidbaar uit established_at (nu verplicht). Verwerkt in §2.4, §4.
  • request_case_link.reason: bevestigd zoals al voorgesteld — verplicht alleen bij de uitzondering (meer dan één case per request), optioneel bij de normale, enkelvoudige koppeling. Consistent met submission_case_assignment, waar de reden ook alleen bij de eerste/bijzondere toewijzing werd genoemd.

Nog echt open:

  1. Startwaarden van de waardelijsten in §4 — met name submission_channel, document_type en screening_activity_type zijn nu overgenomen uit de voorbeeldfeiten, niet uit een volledige inventarisatie.
  2. Volledig zorgteam-model. episode_team_involvement (§2.20) is bewust een minimale hook, geen individueel lidmaatschap, geen rollen, geen regie-/hoofdbehandelaarschap, geen bevoegdheid, geen toekomstige cliëntautorisatie. Het volledige zorgteam-concept — los van zorgprogramma en organisatorische eenheid, die op hun beurt gekoppeld kunnen worden (een organisatorische eenheid kan één of meer zorgprogramma's verzorgen) — krijgt een eigen feitenronde (besluitenlog §10 punt 3; begrippenlijst Episode Clinical Team/Episode Team Assignment/Episode Team Role/ Lead Clinician Role/Decision Authority). Deze hook wordt daardoor vervangen of geabsorbeerd, niet doorontwikkeld binnen dit document.
  3. Juridische aannames in §2.15§2.17 die een jurist moet bevestigen (uit het onderzoek van 19 juli 2026, zie §9): geen apart institutioneel acceptatiebesluit náást een Wvggz-mandaat (ook niet bij zorgmachtiging); de 24-uurstermijn voor tenuitvoerlegging als nudge, niet als constraint; de 14-dagentermijn voor identificatie als signaal-nudge; en of de Jeugdwet-verwijsroute specifiek voor jeugd-ggz hetzelfde "naast elkaar, geen vervanging"-patroon volgt als voor jeugdhulp in het algemeen. Deze aannames blokkeren de modellering niet, maar moeten vóór productie geverifieerd worden.

8. Bronverwijzingen

Onderdeel Bron
Alle feitzinnen, besloten regels en scenario's ../feitenmodellen/feitenmodel-instroom.md
Screening=acceptatie, capaciteitsroutes, episodevorming ../sessielogs/sessielog-2026-07-19.md §5§9
Tijdlijn i.p.v. statusmachine-principe ../sessielogs/sessielog-2026-07-18.md §5 (B7 wachtlijst), discovery §5.1 #5
PERSOON/CLIENT/VERWIJZER/PRAKTIJK_INSTELLING (hergebruikt, niet gedupliceerd) model-aanmelding.md §2.1§2.9
Engelstalig technisch model besluit B20, ../besluiten/besluitenlog-datamodel-2026-07-18.md §9

9. Reviewronde 19 juli 2026

Twee onafhankelijke reviews (technisch datamodel-perspectief, GGZ-domein- perspectief) op de eerste versie van dit document leverden 9 bevindingen op. Direct verwerkt in dit document, zonder verdere domeinvraag omdat het technische correcties of het herstellen van een omissie betrof:

  1. Vervangt-keten kon vertakken. replaces_decision_id/ replaces_referral_id zijn nu uniek indien gevuld — anders zou §5's afleidingsregel geen eenduidig geldig besluit meer opleveren. Verwerkt in §2.12, §2.14, §3.
  2. Timestamp-precisie ondermijnde de tijdlijn-aanpak. Event-velden die ten onrechte op datum (dagprecisie) stonden zijn naar tijdstip gebracht, consistent met referral_submission.received_at — anders zijn gebeurtenissen op dezelfde kalenderdag niet eenduidig te ordenen. Verwerkt op alle event-attributen behalve professional_referral.referral_date (een extern documentdatum, geen systeemgebeurtenis) en request_case_link.since.
  3. ZPM-verplichte velden ontbraken. professional_referral.heraanmelding en referral_case.zpm_verwijstype/huisarts_geinformeerd_op stonden al in het oudere model-aanmelding.md (AANMELDING/VERWIJZING) en zijn bij het opnieuw opbouwen van dit deelgebied per abuis niet meegenomen — dit is hersteld, geen nieuwe ontwerpvraag. AGB-code en correspondentietoestemming bleken al gedekt via bestaande entiteiten (VERWIJZER, TOESTEMMING) en kregen alleen een verduidelijkende notitie.

Vervolgens is een tweede reviewronde uitgevoerd door drie onafhankelijke expert-agents: een datamodel-expert op de resterende technische punten, een GGZ-domein-expert op de domeinvragen, en een UX-expert op bruikbaarheid voor de uiteindelijke gebruikersinterface.

Technische punten (datamodel-expert) — direct verwerkt, mechanische correcties zonder domeinvraag:

  • de lege, inconsistent gecardinaliseerde screening-entiteit is vervallen; screening_activity hangt nu direct aan referral_case (§2.10);
  • naamgeving gecorrigeerd: signal_case_assignmentsubmission_case_ assignment, access_case_consolidationcase_consolidation, decision_authority_id/program_context kregen Engelse ref-namen conform B20 (§2.6, §2.7, §2.9, §2.12);
  • cardinaliteitsfout referral_submission → case_information_request gecorrigeerd naar 0..1; notatie-legenda toegevoegd aan §3;
  • unique constraint + check toegevoegd op case_consolidation (§2.9).

UX-punt (UX-expert) — direct verwerkt, implementatie-eis zonder domeinvraag:

  • de afleidingsregel in §5 moet als één centrale projectie/read-model geïmplementeerd worden, niet los per scherm — toegevoegd als expliciete eis in §5.

Derde ronde — GGZ-wetgeving-expert (juridisch onderzoek) gevolgd door datamodel-expert (schema-integratie), verwerkt in dit document:

Een jurist-georiënteerd onderzoek naar Wvggz, Wmo/Jeugdwet, ZPM-regels en WGBO onderbouwde de vijf GGZ-scope-vragen uit de tweede ronde. De datamodel- expert vertaalde de bevindingen naar concreet schema. Verwerkt:

  • Aanmelddatum. Bevestigd als leesregel (geen nieuw veld): de vroegste referral_submission.received_at die via submission_request_link aan het request hangt, is het regelgevend juiste aanmelddatum-moment voor de 275-dagentoets. Redelijk zekere juridische basis (NZa-veldafspraken; exact artikelnummer niet geverifieerd).
  • Wmo/Jeugdwet. municipal_care_assignment toegevoegd (§2.15) — bestaat náást, niet in plaats van professional_referral (Jeugdwet kent een zelfstandige professionele verwijsroute; Wmo niet). referral_case. wettelijk_kader hersteld (§2.6). Juridisch minder zeker: of dit patroon specifiek voor jeugd-ggz identiek is aan jeugdhulp in het algemeen — zie §7 punt 3.
  • Wvggz. legal_mandate toegevoegd (§2.16) — geen vervangt-relatie met care_acceptance_decision, want geen institutionele discretie bij een crisismaatregel (bindend burgemeesterlijk besluit). clinical_care_episode aangepast: originating_decision_id optioneel, nieuw originating_ mandate_id, met een XOR-regel — een episode ontstaat óf uit een acceptatiebesluit óf uit een mandaat (§2.18). Juridisch minder zeker: of dit ook voor de zorgmachtiging-route (rechter/officier van justitie) klopt — zie §7 punt 3.
  • Heraanmelding/zorgtrajectnummer. Herzien ten opzichte van het eerdere voorstel: de NZa-365-dagenregel hangt aan de datum van de laatst geleverde prestatie bij dezelfde aanbieder, niet aan de episode-einddatum, en is een ander begrip dan professional_referral.heraanmelding. Omdat prestatieregistratie nog geen deelgebied is, is possible_continuation_ of_episode_id toegevoegd (§2.18) als zorginhoudelijke continuïteitsaanwijzing (episode-einddatum als benadering), expliciet gemarkeerd als geen autoritatieve declaratietoets.
  • Crisisdocumentatie vóór identificatie. crisis_encounter_note toegevoegd (§2.17), alle gestructureerde velden optioneel — geen expliciet wetsartikel gevonden dat gestructureerde vastlegging tíjdens de interventie verplicht, wel de algemene WGBO-dossierplicht. De gevonden 14-dagen-identificatietermijn is een signaal-nudge, geen constraint.

Daarna is het eigenaarschap/urgentie-punt met Colin doorgesproken (domeinreview 19 juli 2026), met een scherpere uitkomst dan het UX-voorstel:

  • Urgentie is geen vast veld maar een herhaalbare beoordeling — vastgesteld tijdens screening/triage door de rol screener/triagist, later aan te passen door het intake-team of in een MDO. case_urgency_assessment toegevoegd (§2.19): herhaalbaar, laatste geldt, geen vervangt-relatie nodig (lagere inzet dan een acceptatiebesluit), geen verplichte onderbouwing (bevestigd: eenvoudige waardelijst volstaat).
  • Eigenaarschap bleek eigenlijk een onderdeel van een groter, apart begrip: zorgteam — het team van betrokken behandelaren (soms 1 persoon, soms multidisciplinair, kan een organisatorische eenheid overstijgen), met regie-/hoofdbehandelaarschap en later mogelijk cliëntautorisatie. Dat is zelfstandig ten opzichte van zorgprogramma (inhoudelijk aanbod) en organisatorische eenheid (die aan elkaar gekoppeld kunnen worden — een OE kan één of meer zorgprogramma's verzorgen), en hoort bij een cliënt/case kunnen staan zonder dat er al een individuele behandelaar is toegewezen (bijvoorbeeld: geaccepteerd, intakewachtlijst — Route 2A). Op uitdrukkelijk verzoek van Colin blijft dit nu beperkt tot een minimale, voorlopige hook — episode_team_involvement (§2.20), geen rollen, geen bevoegdheid, geen individueel lidmaatschap. Het volledige zorgteam-model krijgt een eigen feitenronde (zie §7 punt 2).

Nog open:

  • De juridische aannames uit de derde ronde (§7 punt 3) zijn in het schema verwerkt maar nog niet door een jurist bevestigd.
  • Het volledige zorgteam-model (§7 punt 2).