📊 Core Data Model

Core business entities and data models extracted from feature analysis

core

📈 Data Model Statistics

đŸ—„ī¸ Entities

9

Business entities in this model

🔗 Relationships

5

Entity connections defined

📁 Categories

4

Entity type classifications

📊 Attributes

65

Total data fields across entities

đŸ—„ī¸ Data Entities

đŸ›ī¸ Core

Primary business entities that form the foundation of the system

Activity

🔑 activity_id uuid

Physical activity that can be suggested to users, ranging from home exercises to outdoor activities involving equipment.

📋 9 fields
🔗 0 relations
⚡ 4 operations

Data Structure

id uuid
Required Unique
activity_id uuid
Required Unique Primary Key
name string
Required
description text
min_age integer
+4 more attributes

Available Operations

Activity Suggestion

🔑 id string

Represents a suggested physical activity tailored to the user's context including preferences, location, weather, and available equipment.

📋 9 fields
🔗 0 relations
⚡ 4 operations

Data Structure

id string
Primary Key
activity_name string
description string
required_equipment array
location_type string
+4 more attributes

Available Operations

➕ CREATE
đŸ‘ī¸ READ
âœī¸ UPDATE
đŸ—‘ī¸ DELETE

Activity Suggestion Algorithm

🔑 algorithm_id uuid

Core algorithm generating personalized physical activity suggestions for children and youth based on contextual factors such as location, season, weather, equipment availability, user preferences, and historical activity data.

📋 9 fields
🔗 0 relations
⚡ 4 operations

Data Structure

id uuid
Required Unique
algorithm_id uuid
Required Unique Primary Key
location string
Required
season enum
Required
weather_conditions json
Required
+4 more attributes

Available Operations

Equipment

🔑 equipment_id uuid

Physical equipment that may be required or used in activities, including BUA equipment.

📋 5 fields
🔗 0 relations
⚡ 4 operations

Data Structure

id uuid
Required Unique
equipment_id uuid
Required Unique Primary Key
name string
Required
description text
availability_status enum
Required

Available Operations

User Preference

🔑 user_id uuid

Stores user-specific preferences and historical interaction data to personalize activity suggestions.

📋 5 fields
🔗 0 relations
⚡ 4 operations

Data Structure

id uuid
Required Unique
user_id uuid
Required Unique Primary Key
preferred_activity_types json
disliked_activity_types json
preferred_time_of_day enum

Available Operations

➕ CREATE
đŸ‘ī¸ READ
âœī¸ UPDATE
đŸ—‘ī¸ DELETE

activity_session

🔑 id uuid

Entity representing activity_session

📋 1 fields
🔗 0 relations
⚡ 4 operations

Data Structure

id uuid
Required Unique Primary Key

Available Operations

➕ CREATE
đŸ‘ī¸ READ
âœī¸ UPDATE

📝 Audit

Tracking and logging entities for system monitoring

Activity Suggestion Session

🔑 session_id string

Tracks individual user sessions interacting with the activity suggestion algorithm, including spins, selections, and completions.

📋 11 fields
🔗 0 relations
⚡ 4 operations

Data Structure

id uuid
Required Unique
session_id string
Primary Key
user_id string
timestamp_start string
timestamp_end string
+6 more attributes

Available Operations

🌐 External

Third-party or integration entities

Activity Suggestion Wheel Configuration

🔑 config_id string

Configuration settings for the visual activity suggestion wheel component, including display options and activity categorization.

📋 9 fields
🔗 0 relations
⚡ 4 operations

Data Structure

id uuid
Required Unique
config_id string
Primary Key
theme string
number_of_segments integer
segment_labels array
+4 more attributes

Available Operations

🔄 Derived

Computed or aggregated data entities

Historical Activity

🔑 record_id uuid

Records of past activities performed by the user to inform future suggestions.

📋 7 fields
🔗 0 relations
⚡ 4 operations

Data Structure

id uuid
Required Unique
record_id uuid
Required Unique Primary Key
user_id uuid
Required
activity_id uuid
Required
performed_at datetime
Required
+2 more attributes

Available Operations

🔗 Entity Relationships

activity ↔ equipment

N:N

Activities may require or use multiple pieces of equipment; equipment can be used in multiple activities.

From: activity
To: equipment
❌ Cascade Delete: Disabled
â„šī¸ Relationship: Optional

activity_suggestion_algorithm ↔ activity

N:N

The algorithm suggests multiple activities based on context; each activity can be suggested by multiple algorithm runs.

❌ Cascade Delete: Disabled
â„šī¸ Relationship: Optional

historical_activity ← activity

N:1

Historical activity records reference a single activity performed.

🔑 Foreign Key: activity_id
❌ Cascade Delete: Disabled
âš ī¸ Relationship: Required

historical_activity ← user

N:1

Historical activity records belong to a single user.

🔑 Foreign Key: user_id
✅ Cascade Delete: Enabled
âš ī¸ Relationship: Required

user_preference ↔ user

1:1

Each user has one set of preferences to tailor activity suggestions.

To: user
🔑 Foreign Key: user_id
✅ Cascade Delete: Enabled
âš ī¸ Relationship: Required