erDiagram READMODELCOURSEPROGRESS { SelfEnrolment Boolean CourseType String WasImported Boolean KeywordIds String SearchTextField String DurationType String PersonPhoto String CourseId Guid DepartmentName String JobName String PersonalReference String CoursePhoto String DurationValue Double DeptId Guid DurationInMinutes Double KeywordValues String CourseProgressId Guid ManagerId Guid CompletedDate Date IsCourseMandatory Boolean PersonName String JobId Guid ManagerFullName String CourseName String ParentStructureName String CourseStatus String PersonId Guid ProgressPercentage Int32 } READMODELEVENTATTENDANCE { DepartmentName String DepartmentId Guid DurationValue Double JobTitle String DurationInMinutes Double FullName String PersonReferenceNumber String DurationType String ParticipationId Guid JobId Guid ManagerFullName String ParticipationState String CourseName String ManagerEmployeeId Guid SearchText String PersonPhoto String PersonId Guid CourseId Guid EventDate DateTimeOffset } COURSEEVENTSCHEDULEDETAILS { EventId Guid EventEndTime DateTimeOffset EventStartTime DateTimeOffset EventDate DateTimeOffset } RENEWALSINSIGHT { DepartmentName String Distance Int32 IsSubDepartmentRecord Boolean DepartmentId Guid DueDate DateTimeOffset RenewalStatus String FullName String PersonReferenceNumber String SearchTextField String ParentStructureId Guid ManagerFullName String RenewalName String ManagerEmployeeId Guid PersonPhoto String DueMonth Int32 ParentStructureName String CompletionDateTime DateTimeOffset OccupancyTitle String PersonId Guid Id Guid DueYear Int32 IsMandatory Boolean } RENEWALDETAILSFORDEPARTMENT { RenewalName String Distance Int32 PersonPhoto String DueMonth Int32 DueDate DateTimeOffset CompletionDateTime DateTimeOffset FullName String PersonId Guid Id Guid ParentStructureNodeId Guid DueYear Int32 Status String } READMODELEMPLOYEESLEARNINGRECORD { ItemType String Distance Int32 DueDate Date SearchTextField String ManagerName String DurationType String RecordId Guid ItemName String PersonPhoto String DateCompleted Date CurrentDepartmentName String RecordType String DurationValue Double DurationInMinutes Double FullName String PersonReferenceNumber String CurrentJobName String ParentStructureNodeId Guid IsCourseMandatory Boolean ItemId Guid JobId Guid SortOrder Int32 Progress Int32 PersonId Guid Status String } COURSEWAITINGLIST { ParticipantId Guid ParticipationState String IsOpen Boolean Id Guid CreationDate DateTimeOffset CourseId Guid SpecialRequirements String } READMODELEMPLOYEESWAITINGLIST { DepartmentName String JobName String FutureEventId Guid CoursePhoto String PersonReferenceNumber String ManagerId Guid DateRegistered DateTimeOffset PersonName String ManagerFullName String CourseName String FutureEventStartDate DateTimeOffset SearchText String PersonPhoto String PastEventId Guid PastEventStartDate DateTimeOffset PersonId Guid CourseId Guid } EVENTWAITINGLISTACTION { AttendeeCapacity Int32 EventId Guid Comments String CreationDate DateTimeOffset ParticipantId Guid ParticipationState String IsOpen Boolean RejectReasonId Guid ApprovalRequired Boolean ActionCode String Id Guid CourseId Guid SpecialRequirements String } LEARNINGHISTORY { EventId Guid LastName String PersonalReference String Venue String FullName String LearningHistoryOutcomes Object CreationDate DateTimeOffset CompletedDate DateTimeOffset FinishedState String ParticipantId Guid FirstName String LearningHistoryId Guid Online Boolean CourseId Guid } EVENTATTENDEELISTACTION { AttendeeCapacity Int32 EventId Guid Comments String CreationDate DateTimeOffset RejectreasonId Guid ParticipantId Guid ParticipationState String IsOpen Boolean ApprovalRequired Boolean ActionCode String Id Guid CourseId Guid SpecialRequirements String } READMODELTIMESPENTLEARNING { DayOfSession DateTimeOffset JobId Guid Distance Int32 PersonPhoto String TimeSpent Double PersonId Guid PersonReferenceNumber String Id Guid ParentStructureNodeId Guid Type String Status String } COURSEWAITINGLISTACTION { ParticipantId Guid ParticipationState String Comments String IsOpen Boolean RejectReasonId Guid ActionCode String Id Guid CreationDate DateTimeOffset CourseId Guid SpecialRequirements String } PLAYLIST { PlaylistId Guid SearchText String CreatedDate Date Visibility String ResourceCount Int32 CreatorId Guid CreatorName String ModifiedDate Date CreatorPhoto String PlaylistName String } COURSE { ExpiryAlertUnit String QualOutcomes String RenewalPeriod Int32 RequiresApproval Boolean Description String MembOutcomes String CreationDate DateTimeOffset DurationType String Mandatory Boolean OrgId Guid DurationDays Double ExpiryDate DateTimeOffset CompOutcomes String ExpiryAlertPeriod Int32 CourseCategories Object Name String RenewalPeriodUnit String Categories String CourseId Guid Status String } ELEARNINGPROGRESS { DepartmentName String FullName String ResourceDescription String PersonReferenceNumber String ResourceName String Result String ManagerFullName String Score Double ManagerEmployeeId Guid PersonPhoto String DateStarted DateTimeOffset DateCompleted DateTimeOffset OccupancyTitle String PersonId Guid Id Guid TimeToComplete Int32 ResourceType Int32 Status String } EVENT { AccessibilityDetails String MaximumParticipants Int32 JoiningInfo String TotalFailed Int32 InternalTrainerName String TotalNoShow Int32 IsOnline Boolean CostPerParticipant Double CourseEventState String VenuePostcode String OrgId Guid PassPercentage Double CourseId Guid CancellationDate DateTimeOffset MinimumParticipants Int32 EventId Guid CancellationReason String ExternalTrainerName String TimeZoneId String EventSchedules Object TotalPassed Int32 Published Boolean TotalCompletedEventWaiting Int32 CreationDate DateTimeOffset VenueName String MoveParticipantsFlag Boolean TotalBooked Int32 CompletionDate DateTimeOffset PublishedDate DateTimeOffset TotalCost Double } READMODELPARTICIPANTEVENTCOMPLETION { CurrentDepartmentName String DurationHour Double ExternalTrainerName String FullName String InternalTrainerName String PersonReferenceNumber String CostPerParticipant Double CurrentJobName String ManagerName String CompletedDate DateTimeOffset DurationDays Double DurationMinutes Double CourseName String EventVenue String PersonPhoto String MembershipAchieved String CompetencyAchieved String PersonId Guid Id Guid QualificationAchieved String CourseId Guid TotalBookedPlaces Int32 IsMandatory Boolean TotalCost Double } LEARNINGREQUEST { RepliedById Guid Comments String DeliveryMethod String Subject String OutcomeId Guid CreationDate DateTimeOffset ReplyCreationDate DateTimeOffset OutcomeType String LearningObjective String PersonId Guid Id Guid CourseId Guid CategoryId Guid RequestStatus String } COURSEEVENTPARTICIPANTACTION { AttendeeCapacity Int32 EventId Guid LastName String PersonalReference String Comments String FullName String CreationDate DateTimeOffset Type String ListType String RejectreasonId String ParticipantId Guid FirstName String ParticipationState String IsOpen Boolean ApprovalRequired Boolean ActionCode String Id Guid CourseId Guid SpecialRequirements String } PATHWAY { CurrentDepartmentName String PathwayStatus String FullName String PersonReferenceNumber String CurrentJobName String PathwayDueDate Date PathwayProgress String SearchTextField String ManagerName String PathwayId Guid PathwayName String PersonPhoto String DateCompleted DateTimeOffset PersonId Guid Id Guid } COURSEEVENTPARTICIPANT { ParticipantId Guid AttendeeCapacity Int32 EventId Guid ParticipationState String IsOpen Boolean ApprovalRequired Boolean Id Guid CreationDate DateTimeOffset Type String CourseId Guid ListType String SpecialRequirements String } COMPLETEDEVENTWAITINGLIST { ParticipantId Guid AttendeeCapacity Int32 EventId Guid ParticipationState String IsOpen Boolean ApprovalRequired Boolean Id Guid CreationDate DateTimeOffset CourseId Guid SpecialRequirements String } EVENTATTENDEELIST { AttendeeCapacity Int32 EventId Guid LastName String PersonalReference String FullName String CreationDate DateTimeOffset ParticipantId Guid FirstName String ParticipationState String IsOpen Boolean ApprovalRequired Boolean Id Guid CourseId Guid SpecialRequirements String } READMODELDEPARTMENTAVERAGETIMESPENTLEARNING { AverageTimeSpent Double Distance Int32 PeriodYear Int32 PeriodMonth Int32 Id Guid ParentStructureNodeId Guid PeriodDate DateTimeOffset } EVENTWAITINGLIST { ParticipantId Guid AttendeeCapacity Int32 EventId Guid ParticipationState String IsOpen Boolean ApprovalRequired Boolean Id Guid CreationDate DateTimeOffset CourseId Guid SpecialRequirements String } Resource_Paths { renewalDetailsForDepartments URL courseEventParticipantActions URL eventAttendeeLists URL readModelDepartmentAverageTimeSpentLearnings URL learningHistories URL eventWaitingListActions URL eventAttendeeListActions URL readModelEmployeesWaitingLists URL renewalsInsights URL elearningProgresss URL events URL readModelCourseProgresss URL playlists URL CourseEventScheduleDetailss URL courseWaitingLists URL ReadModelParticipantEventCompletions URL courseEventParticipants URL courseWaitingListActions URL completedEventWaitingLists URL courses URL pathways URL learningRequests URL eventWaitingLists URL readModelEmployeesLearningRecords URL readModelEventAttendances URL ReadModelTimeSpentLearnings URL } COURSEWAITINGLIST o{--|| COURSE : Course EVENTWAITINGLISTACTION o{--|| COURSE : Course EVENTWAITINGLISTACTION o{--|| EVENT : Event LEARNINGHISTORY o{--|| COURSE : Course LEARNINGHISTORY o{--|| EVENT : Event EVENTATTENDEELISTACTION o{--|| COURSE : Course EVENTATTENDEELISTACTION o{--|| EVENT : Event COURSEWAITINGLISTACTION o{--|| COURSE : Course EVENT o{--|| COURSE : Course LEARNINGREQUEST o{--|| COURSE : Course COURSEEVENTPARTICIPANTACTION o{--|| COURSE : Course COURSEEVENTPARTICIPANTACTION o{--|| EVENT : Event COURSEEVENTPARTICIPANT o{--|| COURSE : Course COURSEEVENTPARTICIPANT o{--|| EVENT : Event COMPLETEDEVENTWAITINGLIST o{--|| COURSE : Course COMPLETEDEVENTWAITINGLIST o{--|| EVENT : Event EVENTATTENDEELIST o{--|| COURSE : Course EVENTATTENDEELIST o{--|| EVENT : Event EVENTWAITINGLIST o{--|| COURSE : Course EVENTWAITINGLIST o{--|| EVENT : Event