Skip to main content

LMS Logical Schema Reference

Summary

Verified logical catalog for all 19 Training DbContext persisted object sets.

Audience

Engineering, QA, architecture, security, support, product, and data-governance reviewers.

Reference Content

Source key: D = domain entities, C = DbContext mapping, S = shared outbox model. All primary identifiers are generated. “Filtered” means the global tenant/elevated predicate applies.

EntityPurpose / aggregateTenant scopeRelationshipsImportant integrity/indexLifecycle roleSource
CourseCatalog rootFilteredOwns modules/materialsTenant/course-code uniqueDraft/published/archivedD,C
CourseModuleCourse childFilteredCourse FK; owns lessonsTenant/parent/sequenceOrdered contentD,C
CourseLessonModule childFilteredModule FKTenant/parent/sequenceOrdered lessonD,C
TrainingMaterialCourse child/referenceFilteredCourse FK; lesson logicalTenant indexMaterial metadataD,C
TrainingProgramIndependent foundation objectFilteredNoneTenant index; period ignoredNo API lifecycleD,C
LearningPathPath rootFilteredOwns ordered linksTenant/name uniquePath definitionD,C
LearningPathCoursePath childFilteredPath FK; course logicalTenant/path/course uniqueOrdered membershipD,C
TrainingEnrollmentIndependent workflow objectFilteredCourse/path logicalTenant/subject/course uniqueAssignment lifecycleD,C
TrainingCompletionCompletion evidenceFilteredEnrollment/course logicalTenant/enrollment uniqueCompletion side effectD,C
AssessmentAssessment rootFilteredOwns questions; course logicalTenant indexDefinitionD,C
AssessmentQuestionAssessment childFilteredAssessment FKParent and tenant indexesDefinition contentD,C
AssessmentAttemptAttempt workflowFilteredAssessment logicalTenant/assessment/subjectAttempt lifecycleD,C
TrainingCertificateCertificate workflowFilteredCourse/enrollment logicalTenant/certificate unique; statusIssue/document lifecycleD,C
TrainingSessionSession workflowFilteredCourse/trainer logicalTenant/status/startSchedule lifecycleD,C
TrainerIndependent referenceFilteredSession reference is logicalTenant indexReference onlyD,C
TrainingAuditLogAudit evidenceFilteredLogical entity referenceTenant/occurrenceAppend-style evidenceD,C
TrainingTimelineTimeline evidenceFilteredLogical entity referenceTenant/occurrenceAppend-style narrativeD,C
ProcessedIntegrationEventInbound idempotency foundationUnfilteredNoneEvent identity uniqueNo active consumer foundD,C
OutboxMessageOutbound event intentUnfilteredNoneEvent identity unique; status/occurrenceDelivery stateS,C

Only solid relationships above are database-enforced; dotted references are logical.

Source References

  • microservices/src/training-service/Domain/TrainingEntities.cs
  • microservices/src/training-service/Infrastructure/TrainingDbContext.cs
  • microservices/src/shared-kernel/Outbox/OutboxMessage.cs
  • microservices/src/training-service/Infrastructure/Migrations/TrainingDbContextModelSnapshot.cs

See Also

Keywords

  • LMS database
  • Training persistence
  • Source-backed model

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-17
  • Review cycle: Quarterly