Database Model

Overview

This document defines the database objects (entities) needed for LBH Educate and their relationships.

Core Entities

User

Represents an authenticated user of the system (parent, teacher, or child).

Key Fields:

Child

Represents a child being tracked in the system.

Key Fields:

Notes:

JournalEntry

Represents a logged moment/event with photo and educational value.

Key Fields:

Notes:

Skill

Represents a skill from the master skills taxonomy.

Key Fields:

Notes:

Behaviour

Represents a character trait or behavioral attribute from the behaviours taxonomy.

Key Fields:

Notes:

EntrySkill (Junction Table)

Links journal entries to demonstrated skills.

Key Fields:

Notes:

EntryBehaviour (Junction Table)

Links journal entries to demonstrated character traits/behaviours.

Key Fields:

Notes:

Template

Represents a pre-defined activity or event template with common skill associations.

Key Fields:

Notes:

KnowledgeArea

Represents a domain or area of knowledge that can be explored through activities.

Key Fields:

Notes:

Activity (Ideas Mode)

Represents suggested activities for skill development, linked to knowledge areas.

Key Fields:

Notes:

SuggestedActivity (Personalized Recommendations)

Represents an activity suggested to a specific child based on gap analysis.

Key Fields:

Notes:

SkillProgress

Tracks a child's progression in a specific skill over time.

Key Fields:

Notes:

LiveCV (Exportable Report)

Represents a generated "Live CV" report for a child.

Key Fields:

Notes:

Relationships

One-to-Many

Many-to-Many

Optional Relationships

Data Flow

Journal Entry Creation Flow

  1. User creates entry (photo + notes) → JournalEntry created
  2. AI analyzes photo/notes → suggests Template
  3. Template's associated Skills and Behaviours are pre-selected
  4. User confirms/modifies → EntrySkill and EntryBehaviour records created
  5. SkillProgress records updated for Child

Ideas Mode Flow

  1. System analyzes Child's SkillProgress → identifies gaps
  2. System queries KnowledgeArea and Activity databases for gap-filling activities
  3. Activities filtered by progression level, age-appropriateness, and child interests
  4. Personalized SuggestedActivity records created
  5. User bookmarks/dismisses → SuggestedActivity status updated
  6. User completes activity → creates JournalEntry linked to suggestion

Live CV Generation Flow

  1. User requests export for Child
  2. System queries JournalEntry, SkillProgress, Skills, Behaviours
  3. LiveCV record generated with aggregated data (skills progress + character development)
  4. Report exported and saved

Notes