low complexity extracted Relatives Database Confidence: 100%
2
Components
4
Shared
0
User Stories
Yes
Analyzed

Description

The Relative Role Tagging feature allows coordinators and peer mentors to assign a relationship role to each registered relative, such as parent, sibling, primary caregiver, or next of kin. Tags are selected from a predefined list to ensure consistent vocabulary across the organization, avoiding free-text inconsistencies. Role tags are displayed on the relative record and on the linked case view, giving peer mentors immediate context about who they are interacting with during a family support session. Tags are per-link rather than per-relative, allowing the same person to hold different roles in different cases if needed.

Sources & reasoning

The enumeration of specific relative types (foreldre, søsken, nærmeste omsorgsperson) in line 121 implies that the system must distinguish between different family roles - storing them as typed tags rather than anonymous entries. Phase 1 MUST confirmed on line 161. Role tagging is the feature that makes the relative type explicit and filterable, completing the family-unit data model required by Barnekreftforeningen's workflow.

  • docs/source/likeperson.md · line 121-122
    Appen må støtte registrering av pårørende (foreldre, søsken, nærmeste omsorgsperson) som egne kontaktsubjekter knyttet til samme sak.
  • docs/source/likeperson.md · line 161
    Pårørende database | ✓ | - | - | - | ✓ | MUST (Barnekreft) | 1

Analysis

Business Value

Understanding a relative's role within a family is critical for Barnekreftforeningen peer mentors who provide emotionally sensitive support. A parent requires a different conversation than a sibling or a distant caregiver. Without role tagging, the relatives database becomes an undifferentiated list of names, reducing its utility for coordinating nuanced family support. Role-based filtering also enables coordinators to generate structured reports about family engagement patterns, supporting Bufdir reporting and internal quality reviews. Consistent terminology enforced by a predefined tag list reduces training overhead and reporting inconsistencies across different peer mentors serving the same family.

Implementation Notes

Role tags are stored as an enum-constrained field on the relative_case_links table (or as a separate relative_role_tags table if extensibility is required), ensuring referential integrity without relying on free text. The RelativeRoleTagWidget is a Flutter chip-selector or dropdown embedded in the case linking flow, backed by RelativeRoleService for CRUD operations and RelativeRepository for offline persistence. The predefined role list is fetched from the backend at startup and cached offline as part of the organization bootstrap payload, supporting the Organization Labels system if role terms need per-org terminology overrides. WCAG 2.2 AA requires all chip/dropdown selectors to have accessible labels and keyboard focus states.

User Stories

No user stories have been generated for this feature yet.