Skip to content

Business Objects

This section describes the core entities managed by the application and their relationships.

Entity hierarchy

All objects are scoped to a Project, which itself belongs to an Organisation. Objects are never shared between projects.

Organisation
└── Project
    ├── Group
    │   └── Participant (member of, dates fallback)
    ├── Participant
    ├── Activity
    └── Vehicle

Entities

EntityDescription
OrganisationTop-level structure that owns one or more projects
ProjectThe central object — a group care facility for minors
OptionsFeature flags that control which capabilities are available on a project
GroupA named collection of participants within a project
ParticipantA person (minor or major) registered in a project
ActivityA recurring event that can be attached to a movement
VehicleA vehicle used during movements

Dates and attendance

All objects have optional dates. When no dates are specified, the object is considered active for the full duration of its parent (or perpetually if the project itself has no dates).

Attendance fallback for participants

When a participant has no attendance dates of their own, the application resolves them in this order:

PrioritySource
1The participant's own dates (if set)
2Their group's dates (if set, and the participant has none)
3The project's dates (final fallback)

INFO

A participant's dates must stay within the project dates. They can extend beyond their group's dates if needed — group dates serve only as a fallback, not as a hard constraint.

Activities and vehicles

Activity and vehicle availability is bounded directly by the project's dates, independently of any group or participant.