import modules.database.schemas.nodes.schools.timetable as neo_timetable from modules.database.tools.neontology.baserelationship import BaseRelationship from typing import ClassVar # Timetable hierarchy structure relationships class AcademicTimetableHasAcademicYear(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TIMETABLE_HAS_ACADEMIC_YEAR' source: neo_timetable.SchoolTimetableNode target: neo_timetable.AcademicYearNode class AcademicYearHasAcademicTerm(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_YEAR_HAS_ACADEMIC_TERM' source: neo_timetable.AcademicYearNode target: neo_timetable.AcademicTermNode class AcademicYearHasAcademicTermBreak(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_YEAR_HAS_ACADEMIC_TERM_BREAK' source: neo_timetable.AcademicYearNode target: neo_timetable.AcademicTermBreakNode class AcademicYearHasAcademicWeek(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_YEAR_HAS_ACADEMIC_WEEK' source: neo_timetable.AcademicYearNode target: neo_timetable.AcademicWeekNode class AcademicYearHasHolidayWeek(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_YEAR_HAS_HOLIDAY_WEEK' source: neo_timetable.AcademicYearNode target: neo_timetable.HolidayWeekNode class AcademicTermHasAcademicWeek(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TERM_HAS_ACADEMIC_WEEK' source: neo_timetable.AcademicTermNode target: neo_timetable.AcademicWeekNode class AcademicTermBreakHasHolidayWeek(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TERM_BREAK_HAS_HOLIDAY_WEEK' source: neo_timetable.AcademicTermBreakNode target: neo_timetable.HolidayWeekNode class AcademicTermBreakHasHolidayDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TERM_BREAK_HAS_HOLIDAY_DAY' source: neo_timetable.AcademicTermBreakNode target: neo_timetable.HolidayDayNode class AcademicTermHasAcademicDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TERM_HAS_ACADEMIC_DAY' source: neo_timetable.AcademicTermNode target: neo_timetable.AcademicDayNode class AcademicTermHasHolidayDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TERM_HAS_HOLIDAY_DAY' source: neo_timetable.AcademicTermNode target: neo_timetable.HolidayDayNode class AcademicTermHasOffTimetableDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TERM_HAS_OFF_TIMETABLE_DAY' source: neo_timetable.AcademicTermNode target: neo_timetable.OffTimetableDayNode class AcademicTermHasStaffDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TERM_HAS_STAFF_DAY' source: neo_timetable.AcademicTermNode target: neo_timetable.StaffDayNode class AcademicWeekHasAcademicDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_WEEK_HAS_ACADEMIC_DAY' source: neo_timetable.AcademicWeekNode target: neo_timetable.AcademicDayNode class AcademicWeekHasHolidayDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_WEEK_HAS_HOLIDAY_DAY' source: neo_timetable.AcademicWeekNode target: neo_timetable.HolidayDayNode class AcademicWeekHasOffTimetableDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_WEEK_HAS_OFF_TIMETABLE_DAY' source: neo_timetable.AcademicWeekNode target: neo_timetable.OffTimetableDayNode class AcademicWeekHasStaffDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_WEEK_HAS_STAFF_DAY' source: neo_timetable.AcademicWeekNode target: neo_timetable.StaffDayNode class HolidayWeekHasHolidayDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'HOLIDAY_WEEK_HAS_HOLIDAY_DAY' source: neo_timetable.HolidayWeekNode target: neo_timetable.HolidayDayNode class AcademicDayHasAcademicPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_DAY_HAS_ACADEMIC_PERIOD' source: neo_timetable.AcademicDayNode target: neo_timetable.AcademicPeriodNode class AcademicDayHasRegistrationPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_DAY_HAS_REGISTRATION_PERIOD' source: neo_timetable.AcademicDayNode target: neo_timetable.RegistrationPeriodNode class AcademicDayHasBreakPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_DAY_HAS_BREAK_PERIOD' source: neo_timetable.AcademicDayNode target: neo_timetable.BreakPeriodNode class AcademicDayHasOffTimetablePeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_DAY_HAS_OFF_TIMETABLE_PERIOD' source: neo_timetable.AcademicDayNode target: neo_timetable.OffTimetablePeriodNode # Timetable sequence relationships class AcademicYearFollowsAcademicYear(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_YEAR_FOLLOWS_ACADEMIC_YEAR' source: neo_timetable.AcademicYearNode target: neo_timetable.AcademicYearNode class AcademicTermFollowsAcademicTermBreak(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TERM_FOLLOWS_ACADEMIC_TERM_BREAK' source: neo_timetable.AcademicTermBreakNode # Term break ends target: neo_timetable.AcademicTermNode # New term starts class AcademicTermBreakFollowsAcademicTerm(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_TERM_BREAK_FOLLOWS_ACADEMIC_TERM' source: neo_timetable.AcademicTermNode # Term ends target: neo_timetable.AcademicTermBreakNode # Term break starts class AcademicWeekFollowsAcademicWeek(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_WEEK_FOLLOWS_ACADEMIC_WEEK' source: neo_timetable.AcademicWeekNode target: neo_timetable.AcademicWeekNode class HolidayWeekFollowsHolidayWeek(BaseRelationship): __relationshiptype__: ClassVar[str] = 'HOLIDAY_WEEK_FOLLOWS_HOLIDAY_WEEK' source: neo_timetable.HolidayWeekNode target: neo_timetable.HolidayWeekNode class AcademicWeekFollowsHolidayWeek(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_WEEK_FOLLOWS_HOLIDAY_WEEK' source: neo_timetable.HolidayWeekNode target: neo_timetable.AcademicWeekNode class HolidayWeekFollowsAcademicWeek(BaseRelationship): __relationshiptype__: ClassVar[str] = 'HOLIDAY_WEEK_FOLLOWS_ACADEMIC_WEEK' source: neo_timetable.AcademicWeekNode target: neo_timetable.HolidayWeekNode class AcademicDayFollowsAcademicDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_DAY_FOLLOWS_ACADEMIC_DAY' source: neo_timetable.AcademicDayNode target: neo_timetable.AcademicDayNode class AcademicDayFollowsHolidayDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_DAY_FOLLOWS_HOLIDAY_DAY' source: neo_timetable.HolidayDayNode target: neo_timetable.AcademicDayNode class AcademicDayFollowsOffTimetableDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_DAY_FOLLOWS_OFF_TIMETABLE_DAY' source: neo_timetable.OffTimetableDayNode target: neo_timetable.AcademicDayNode class AcademicDayFollowsStaffDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_DAY_FOLLOWS_STAFF_DAY' source: neo_timetable.StaffDayNode target: neo_timetable.AcademicDayNode class HolidayDayFollowsHolidayDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'HOLIDAY_DAY_FOLLOWS_HOLIDAY_DAY' source: neo_timetable.HolidayDayNode target: neo_timetable.HolidayDayNode class HolidayDayFollowsAcademicDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'HOLIDAY_DAY_FOLLOWS_ACADEMIC_DAY' source: neo_timetable.AcademicDayNode target: neo_timetable.HolidayDayNode class HolidayDayFollowsOffTimetableDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'HOLIDAY_DAY_FOLLOWS_OFF_TIMETABLE_DAY' source: neo_timetable.OffTimetableDayNode target: neo_timetable.HolidayDayNode class HolidayDayFollowsStaffDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'HOLIDAY_DAY_FOLLOWS_STAFF_DAY' source: neo_timetable.StaffDayNode target: neo_timetable.HolidayDayNode class OffTimetableDayFollowsOffTimetableDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'OFF_TIMETABLE_DAY_FOLLOWS_OFF_TIMETABLE_DAY' source: neo_timetable.OffTimetableDayNode target: neo_timetable.OffTimetableDayNode class OffTimetableDayFollowsAcademicDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'OFF_TIMETABLE_DAY_FOLLOWS_ACADEMIC_DAY' source: neo_timetable.AcademicDayNode target: neo_timetable.OffTimetableDayNode class OffTimetableDayFollowsHolidayDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'OFF_TIMETABLE_DAY_FOLLOWS_HOLIDAY_DAY' source: neo_timetable.HolidayDayNode target: neo_timetable.OffTimetableDayNode class OffTimetableDayFollowsStaffDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'OFF_TIMETABLE_DAY_FOLLOWS_STAFF_DAY' source: neo_timetable.StaffDayNode target: neo_timetable.OffTimetableDayNode class StaffDayFollowsStaffDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'STAFF_DAY_FOLLOWS_STAFF_DAY' source: neo_timetable.StaffDayNode target: neo_timetable.StaffDayNode class StaffDayFollowsAcademicDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'STAFF_DAY_FOLLOWS_ACADEMIC_DAY' source: neo_timetable.AcademicDayNode target: neo_timetable.StaffDayNode class StaffDayFollowsHolidayDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'STAFF_DAY_FOLLOWS_HOLIDAY_DAY' source: neo_timetable.HolidayDayNode target: neo_timetable.StaffDayNode class StaffDayFollowsOffTimetableDay(BaseRelationship): __relationshiptype__: ClassVar[str] = 'STAFF_DAY_FOLLOWS_OFF_TIMETABLE_DAY' source: neo_timetable.OffTimetableDayNode target: neo_timetable.StaffDayNode class AcademicPeriodFollowsAcademicPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_PERIOD_FOLLOWS_ACADEMIC_PERIOD' source: neo_timetable.AcademicPeriodNode target: neo_timetable.AcademicPeriodNode class AcademicPeriodFollowsBreakPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_PERIOD_FOLLOWS_BREAK_PERIOD' source: neo_timetable.BreakPeriodNode target: neo_timetable.AcademicPeriodNode class AcademicPeriodFollowsRegistrationPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_PERIOD_FOLLOWS_REGISTRATION_PERIOD' source: neo_timetable.RegistrationPeriodNode target: neo_timetable.AcademicPeriodNode class AcademicPeriodFollowsOffTimetablePeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'ACADEMIC_PERIOD_FOLLOWS_OFF_TIMETABLE_PERIOD' source: neo_timetable.OffTimetablePeriodNode target: neo_timetable.AcademicPeriodNode class BreakPeriodFollowsAcademicPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'BREAK_PERIOD_FOLLOWS_ACADEMIC_PERIOD' source: neo_timetable.AcademicPeriodNode target: neo_timetable.BreakPeriodNode class RegistrationPeriodFollowsAcademicPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'REGISTRATION_PERIOD_FOLLOWS_ACADEMIC_PERIOD' source: neo_timetable.AcademicPeriodNode target: neo_timetable.RegistrationPeriodNode class RegistrationPeriodFollowsOffTimetablePeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'REGISTRATION_PERIOD_FOLLOWS_OFF_TIMETABLE_PERIOD' source: neo_timetable.OffTimetablePeriodNode target: neo_timetable.RegistrationPeriodNode class OffTimetablePeriodFollowsAcademicPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'OFF_TIMETABLE_PERIOD_FOLLOWS_ACADEMIC_PERIOD' source: neo_timetable.AcademicPeriodNode target: neo_timetable.OffTimetablePeriodNode class OffTimetablePeriodFollowsRegistrationPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'OFF_TIMETABLE_PERIOD_FOLLOWS_REGISTRATION_PERIOD' source: neo_timetable.RegistrationPeriodNode target: neo_timetable.OffTimetablePeriodNode class OffTimetablePeriodFollowsOffTimetablePeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'OFF_TIMETABLE_PERIOD_FOLLOWS_OFF_TIMETABLE_PERIOD' source: neo_timetable.OffTimetablePeriodNode target: neo_timetable.OffTimetablePeriodNode class BreakPeriodFollowsBreakPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'BREAK_PERIOD_FOLLOWS_BREAK_PERIOD' source: neo_timetable.BreakPeriodNode target: neo_timetable.BreakPeriodNode class BreakPeriodFollowsRegistrationPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'BREAK_PERIOD_FOLLOWS_REGISTRATION_PERIOD' source: neo_timetable.RegistrationPeriodNode target: neo_timetable.BreakPeriodNode class BreakPeriodFollowsOffTimetablePeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'BREAK_PERIOD_FOLLOWS_OFF_TIMETABLE_PERIOD' source: neo_timetable.OffTimetablePeriodNode target: neo_timetable.BreakPeriodNode class RegistrationPeriodFollowsBreakPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'REGISTRATION_PERIOD_FOLLOWS_BREAK_PERIOD' source: neo_timetable.BreakPeriodNode target: neo_timetable.RegistrationPeriodNode class OffTimetablePeriodFollowsBreakPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'OFF_TIMETABLE_PERIOD_FOLLOWS_BREAK_PERIOD' source: neo_timetable.BreakPeriodNode target: neo_timetable.OffTimetablePeriodNode class RegistrationPeriodFollowsRegistrationPeriod(BaseRelationship): __relationshiptype__: ClassVar[str] = 'REGISTRATION_PERIOD_FOLLOWS_REGISTRATION_PERIOD' source: neo_timetable.RegistrationPeriodNode target: neo_timetable.RegistrationPeriodNode