/* DOMAIN_MODEL.DML * The Fenix Project Domain Model * */ /* * The Fenix domain classes are all in the * net.sourceforge.fenixedu.domain package or some sub-package of * this package. * * Note that this package declaration applies only to the */ package net.sourceforge.fenixedu.domain; /* * ValueTypes declarations * */ /* * Enums first */ enum net.sourceforge.fenixedu.domain.AlumniRequestType as AlumniRequestType; enum net.sourceforge.fenixedu.domain.CompetenceCourseType as CompetenceCourseType; enum net.sourceforge.fenixedu.domain.ContractType as ContractType; enum net.sourceforge.fenixedu.domain.DocumentType as DocumentType; enum net.sourceforge.fenixedu.domain.ExecutionCourseBoardPermittedGroupType as ExecutionCourseBoardPermittedGroupType; enum net.sourceforge.fenixedu.domain.FormationType as FormationType; enum net.sourceforge.fenixedu.domain.FrequencyType as FrequencyType; enum net.sourceforge.fenixedu.domain.GradeScale as GradeScale; enum net.sourceforge.fenixedu.domain.GraduationType as GraduationType; enum net.sourceforge.fenixedu.domain.GrantOwnerType as GrantOwnerType; enum net.sourceforge.fenixedu.domain.GuideState as GuideState; enum net.sourceforge.fenixedu.domain.JobApplicationType as JobApplicationType; enum net.sourceforge.fenixedu.domain.Level as Level; enum net.sourceforge.fenixedu.domain.LoginAliasType as LoginAliasType; enum net.sourceforge.fenixedu.domain.MarkSheetState as MarkSheetState; enum net.sourceforge.fenixedu.domain.MarkSheetType as MarkSheetType; enum net.sourceforge.fenixedu.domain.OccupationPeriodType as OccupationPeriodType; enum net.sourceforge.fenixedu.domain.Option as Option; enum net.sourceforge.fenixedu.domain.PartyClassification as PartyClassification; enum net.sourceforge.fenixedu.domain.PhotoState as PhotoState; enum net.sourceforge.fenixedu.domain.PhotoType as PhotoType; enum net.sourceforge.fenixedu.domain.PhotographContentSize as PhotographContentSize; enum net.sourceforge.fenixedu.domain.PrescriptionEnum as PrescriptionEnum; enum net.sourceforge.fenixedu.domain.ProfessionType as ProfessionType; enum net.sourceforge.fenixedu.domain.ProfessionalSituationConditionType as ProfessionalSituationConditionType; enum net.sourceforge.fenixedu.domain.QualificationType as QualificationType; enum net.sourceforge.fenixedu.domain.RequestState as RequestState; enum net.sourceforge.fenixedu.domain.RoleOperationType as RoleOperationType; enum net.sourceforge.fenixedu.domain.SalaryType as SalaryType; enum net.sourceforge.fenixedu.domain.SchoolLevelType as SchoolLevelType; enum net.sourceforge.fenixedu.domain.ShiftType as ShiftType; enum net.sourceforge.fenixedu.domain.TutorshipParticipationType as TutorshipParticipationType; enum net.sourceforge.fenixedu.domain.TutorshipSummarySatisfaction as TutorshipSummarySatisfaction; enum net.sourceforge.fenixedu.domain.TutorshipSummaryProgramAssessment as TutorshipSummaryProgramAssessment; enum net.sourceforge.fenixedu.domain.UnitBoardPermittedGroupType as UnitBoardPermittedGroupType; enum net.sourceforge.fenixedu.domain.UnitSiteBannerRepeatType as UnitSiteBannerRepeatType; enum net.sourceforge.fenixedu.domain.UnitSiteLayoutType as UnitSiteLayoutType; enum net.sourceforge.fenixedu.domain.accessControl.PersistentGroupMembersType as PersistentGroupMembersType; enum net.sourceforge.fenixedu.domain.accessControl.academicAdministration.AcademicOperationType as AcademicOperationType; enum net.sourceforge.fenixedu.domain.accounting.AccountType as AccountType; enum net.sourceforge.fenixedu.domain.accounting.CreditNoteState as CreditNoteState; enum net.sourceforge.fenixedu.domain.accounting.EntryType as EntryType; enum net.sourceforge.fenixedu.domain.accounting.EventState as EventState; enum net.sourceforge.fenixedu.domain.accounting.EventType as EventType; enum net.sourceforge.fenixedu.domain.accounting.PaymentCodeState as PaymentCodeState; enum net.sourceforge.fenixedu.domain.accounting.PaymentCodeType as PaymentCodeType; enum net.sourceforge.fenixedu.domain.accounting.PaymentMode as PaymentMode; enum net.sourceforge.fenixedu.domain.accounting.ReceiptState as ReceiptState; enum net.sourceforge.fenixedu.domain.accounting.events.AdministrativeOfficeFeeAndInsuranceExemptionJustificationType as AdministrativeOfficeFeeAndInsuranceExemptionJustificationType; enum net.sourceforge.fenixedu.domain.accounting.events.InsuranceExemptionJustificationType as InsuranceExemptionJustificationType; enum net.sourceforge.fenixedu.domain.accounting.events.PenaltyExemptionJustificationType as PenaltyExemptionJustificationType; enum net.sourceforge.fenixedu.domain.accounting.events.candidacy.CandidacyExemptionJustificationType as CandidacyExemptionJustificationType; enum net.sourceforge.fenixedu.domain.accounting.events.gratuity.GratuityExemptionJustificationType as GratuityExemptionJustificationType; enum net.sourceforge.fenixedu.domain.administrativeOffice.AdministrativeOfficeType as AdministrativeOfficeType; enum net.sourceforge.fenixedu.domain.branch.BranchType as OldBranchType; enum net.sourceforge.fenixedu.domain.candidacy.Ingression as Ingression; enum net.sourceforge.fenixedu.domain.candidacyProcess.CandidacyProcessState as CandidacyProcessState; enum net.sourceforge.fenixedu.domain.candidacyProcess.IndividualCandidacyState as IndividualCandidacyState; enum net.sourceforge.fenixedu.domain.contacts.PartyContactType as PartyContactType; enum net.sourceforge.fenixedu.domain.credits.CreditsState as CreditsState; enum net.sourceforge.fenixedu.domain.curricularPeriod.CurricularPeriodType as CurricularPeriodType; enum net.sourceforge.fenixedu.domain.curricularRules.CurricularRuleType as CurricularRuleType; enum net.sourceforge.fenixedu.domain.curriculum.CurricularCourseType as CurricularCourseType; enum net.sourceforge.fenixedu.domain.curriculum.EnrollmentCondition as EnrollmentCondition; enum net.sourceforge.fenixedu.domain.curriculum.EnrollmentState as EnrollmentState; enum net.sourceforge.fenixedu.domain.curriculum.EnrolmentEvaluationType as EnrolmentEvaluationType; enum net.sourceforge.fenixedu.domain.degree.DegreeType as DegreeType; enum net.sourceforge.fenixedu.domain.degree.degreeCurricularPlan.DegreeCurricularPlanState as DegreeCurricularPlanState; enum net.sourceforge.fenixedu.domain.degreeStructure.BranchType as BranchType; enum net.sourceforge.fenixedu.domain.degreeStructure.CompetenceCourseLevel as CompetenceCourseLevel; enum net.sourceforge.fenixedu.domain.degreeStructure.CurricularStage as CurricularStage; enum net.sourceforge.fenixedu.domain.degreeStructure.CycleType as CycleType; enum net.sourceforge.fenixedu.domain.degreeStructure.RegimeType as degreeStructure.RegimeType; enum net.sourceforge.fenixedu.domain.documents.GeneratedDocumentType as GeneratedDocumentType; enum net.sourceforge.fenixedu.domain.gratuity.ExemptionGratuityType as ExemptionGratuityType; enum net.sourceforge.fenixedu.domain.gratuity.ReimbursementGuideState as ReimbursementGuideState; enum net.sourceforge.fenixedu.domain.gratuity.SibsPaymentStatus as SibsPaymentStatus; enum net.sourceforge.fenixedu.domain.gratuity.SibsPaymentType as SibsPaymentType; enum net.sourceforge.fenixedu.domain.inquiries.InquiriesRegistryState as InquiriesRegistryState; enum net.sourceforge.fenixedu.domain.inquiries.InquiryNotAnsweredJustification as InquiryNotAnsweredJustification; enum net.sourceforge.fenixedu.domain.inquiries.InquiryResponsePeriodType as InquiryResponsePeriodType; enum net.sourceforge.fenixedu.domain.internship.LanguageKnowledgeLevel as LanguageKnowledgeLevel; enum net.sourceforge.fenixedu.domain.masterDegree.GuideRequester as GuideRequester; enum net.sourceforge.fenixedu.domain.masterDegree.MasterDegreeClassification as MasterDegreeClassification; enum net.sourceforge.fenixedu.domain.organizationalStructure.AcademicalInstitutionType as AcademicalInstitutionType; enum net.sourceforge.fenixedu.domain.organizationalStructure.AccountabilityTypeEnum as AccountabilityTypeEnum; enum net.sourceforge.fenixedu.domain.organizationalStructure.FunctionType as FunctionType; enum net.sourceforge.fenixedu.domain.organizationalStructure.PartyTypeEnum as PartyTypeEnum; enum net.sourceforge.fenixedu.domain.organizationalStructure.UnitClassification as UnitClassification; enum net.sourceforge.fenixedu.domain.parking.DocumentDeliveryType as DocumentDeliveryType; enum net.sourceforge.fenixedu.domain.parking.NewParkingDocumentType as NewParkingDocumentType; enum net.sourceforge.fenixedu.domain.parking.ParkingDocumentState as ParkingDocumentState; enum net.sourceforge.fenixedu.domain.parking.ParkingDocumentType as ParkingDocumentType; enum net.sourceforge.fenixedu.domain.parking.ParkingRequestState as ParkingRequestState; enum net.sourceforge.fenixedu.domain.parking.ParkingRequestType as ParkingRequestType; enum net.sourceforge.fenixedu.domain.person.Gender as Gender; enum net.sourceforge.fenixedu.domain.person.IDDocumentType as IDDocumentType; enum net.sourceforge.fenixedu.domain.person.MaritalStatus as MaritalStatus; enum net.sourceforge.fenixedu.domain.person.RoleType as RoleType; enum net.sourceforge.fenixedu.domain.research.activity.CooperationType as CooperationType; enum net.sourceforge.fenixedu.domain.research.activity.EventType as activity.EventType; enum net.sourceforge.fenixedu.domain.research.activity.Participation.ResearchActivityParticipationRole as ResearchActivityParticipationRole; enum net.sourceforge.fenixedu.domain.research.activity.ResearchActivityStage as ResearchActivityStage; enum net.sourceforge.fenixedu.domain.research.project.ProjectEventAssociation.ProjectEventAssociationRole as ProjectEventAssociationRole; enum net.sourceforge.fenixedu.domain.research.project.ProjectParticipation.ProjectParticipationType as ProjectParticipationType; enum net.sourceforge.fenixedu.domain.research.project.ProjectType as ProjectType; enum net.sourceforge.fenixedu.domain.research.result.ResearchResultDocumentFile.FileResultPermittedGroupType as FileResultPermittedGroupType; enum net.sourceforge.fenixedu.domain.research.result.ResultParticipation.ResultParticipationRole as ResultParticipationRole; enum net.sourceforge.fenixedu.domain.research.result.ResultUnitAssociation.ResultUnitAssociationRole as ResultUnitAssociationRole; enum net.sourceforge.fenixedu.domain.research.result.patent.ResearchResultPatent.ResultPatentStatus as ResultPatentStatus; enum net.sourceforge.fenixedu.domain.research.result.patent.ResearchResultPatent.ResultPatentType as ResultPatentType; enum net.sourceforge.fenixedu.domain.research.result.publication.ScopeType as ScopeType; enum net.sourceforge.fenixedu.domain.research.result.publication.Thesis.ThesisType as ThesisType; enum net.sourceforge.fenixedu.domain.serviceRequests.AcademicServiceRequestSituationType as AcademicServiceRequestSituationType; enum net.sourceforge.fenixedu.domain.serviceRequests.documentRequests.DocumentPurposeType as DocumentPurposeType; enum net.sourceforge.fenixedu.domain.student.EnrolmentModel as EnrolmentModel; enum net.sourceforge.fenixedu.domain.student.MobilityProgram as MobilityProgram; enum net.sourceforge.fenixedu.domain.student.RegistrationAgreement as RegistrationAgreement; enum net.sourceforge.fenixedu.domain.student.RegistrationRegimeType as RegistrationRegimeType; enum net.sourceforge.fenixedu.domain.student.StudentStatuteType as StudentStatuteType; enum net.sourceforge.fenixedu.domain.studentCurricularPlan.Specialization as Specialization; enum net.sourceforge.fenixedu.domain.studentCurricularPlan.StudentCurricularPlanState as StudentCurricularPlanState; enum net.sourceforge.fenixedu.domain.support.SupportRequestPriority as SupportRequestPriority; enum net.sourceforge.fenixedu.domain.support.SupportRequestType as SupportRequestType; enum net.sourceforge.fenixedu.domain.system.WhenToSendEmail as WhenToSendEmail; enum net.sourceforge.fenixedu.domain.teacher.AdviseType as AdviseType; enum net.sourceforge.fenixedu.domain.teacher.CategoryType as CategoryType; enum net.sourceforge.fenixedu.domain.teacher.WishesTutor as WishesTutor; enum net.sourceforge.fenixedu.domain.teacherServiceDistribution.TSDCurricularLoad.SchoolClassCalculationMethod as SchoolClassCalculationMethod; enum net.sourceforge.fenixedu.domain.teacherServiceDistribution.TSDProcessPhaseStatus as TSDProcessPhaseStatus; enum net.sourceforge.fenixedu.domain.teacherServiceDistribution.TSDValueType as TSDValueType; enum net.sourceforge.fenixedu.domain.tests.NewPermission as NewPermission; enum net.sourceforge.fenixedu.domain.tests.TestGroupStatus as TestGroupStatus; enum net.sourceforge.fenixedu.domain.thesis.ThesisParticipationType as ThesisParticipationType; enum net.sourceforge.fenixedu.domain.thesis.ThesisState as ThesisState; enum net.sourceforge.fenixedu.domain.thesis.ThesisVisibilityType as ThesisVisibilityType; enum net.sourceforge.fenixedu.domain.transactions.PaymentType as PaymentType; enum net.sourceforge.fenixedu.domain.transactions.TransactionType as TransactionType; enum net.sourceforge.fenixedu.domain.util.LogicOperator as LogicOperator; enum net.sourceforge.fenixedu.domain.vigilancy.AttendingStatus as AttendingStatus; enum net.sourceforge.fenixedu.util.ContentType as ContentType; enum net.sourceforge.fenixedu.util.Month as Month; enum net.sourceforge.fenixedu.util.RegimeType as RegimeType; enum net.sourceforge.fenixedu.util.StudentPersonalDataAuthorizationChoice as StudentPersonalDataAuthorizationChoice; enum net.sourceforge.fenixedu.util.WeekDay as WeekDay; enum pt.utl.ist.fenix.tools.util.i18n.Language as Language; enum net.sourceforge.fenixedu.domain.accessControl.PermissionType as PermissionType; enum net.sourceforge.fenixedu.domain.messaging.AnnouncementCategoryType as AnnouncementCategoryType; enum net.sourceforge.fenixedu.domain.phd.PhdIndividualProgramProcessState as PhdIndividualProgramProcessState; enum net.sourceforge.fenixedu.domain.phd.PhdIndividualProgramCollaborationType as PhdIndividualProgramCollaborationType; enum net.sourceforge.fenixedu.domain.phd.PhdIndividualProgramDocumentType as PhdIndividualProgramDocumentType; enum net.sourceforge.fenixedu.domain.phd.PhdProgramCandidacyProcessState as PhdProgramCandidacyProcessState; enum net.sourceforge.fenixedu.domain.phd.seminar.PublicPresentationSeminarProcessStateType as PublicPresentationSeminarProcessStateType; enum net.sourceforge.fenixedu.domain.phd.thesis.PhdThesisProcessStateType as PhdThesisProcessStateType; enum net.sourceforge.fenixedu.domain.phd.candidacy.ApplicantOverallPromise as ApplicantOverallPromise; enum net.sourceforge.fenixedu.domain.phd.PhdStudyPlanEntryType as PhdStudyPlanEntryType; enum net.sourceforge.fenixedu.domain.phd.notification.PhdNotificationType as PhdNotificationType; enum net.sourceforge.fenixedu.domain.phd.notification.PhdNotificationState as PhdNotificationState; enum net.sourceforge.fenixedu.domain.phd.access.PhdProcessAccessType as PhdProcessAccessType; enum net.sourceforge.fenixedu.domain.phd.candidacy.feedbackRequest.PhdCandidacyFeedbackStateType as PhdCandidacyFeedbackStateType; enum net.sourceforge.fenixedu.domain.phd.thesis.PhdThesisFinalGrade as PhdThesisFinalGrade; enum net.sourceforge.fenixedu.domain.phd.thesis.meeting.PhdMeetingSchedulingProcessStateType as PhdMeetingSchedulingProcessStateType; enum net.sourceforge.fenixedu.domain.phd.migration.PhdMigrationProcessStateType as PhdMigrationProcessStateType; enum net.sourceforge.fenixedu.domain.candidacyProcess.IndividualCandidacyDocumentFileType as IndividualCandidacyDocumentFileType; enum net.sourceforge.fenixedu.domain.accounting.events.DegreeFinalizationCertificateRequestJustificationType as DegreeFinalizationCertificateRequestJustificationType; enum net.sourceforge.fenixedu.domain.accounting.events.serviceRequests.AcademicEventJustificationType as AcademicEventJustificationType; enum net.sourceforge.fenixedu.domain.EntryPhase as EntryPhase; enum net.sourceforge.fenixedu.domain.research.result.publication.PreferredPublicationPriority as PreferredPublicationPriority; enum net.sourceforge.fenixedu.domain.curriculum.EnrolmentEvaluationContext as EnrolmentEvaluationContext; enum net.sourceforge.fenixedu.domain.curriculum.CurriculumValidationEvaluationPhase as CurriculumValidationEvaluationPhase; enum net.sourceforge.fenixedu.domain.phd.debts.PhdEventExemptionJustificationType as PhdEventExemptionJustificationType; enum net.sourceforge.fenixedu.domain.serviceRequests.RectorateSubmissionState as RectorateSubmissionState; enum net.sourceforge.fenixedu.domain.candidacyProcess.erasmus.ErasmusAlertEntityType as ErasmusAlertEntityType; enum net.sourceforge.fenixedu.domain.candidacyProcess.erasmus.ErasmusApplyForSemesterType as ErasmusApplyForSemesterType; enum net.sourceforge.fenixedu.domain.teacher.evaluation.TeacherEvaluationFileType as TeacherEvaluationFileType; enum net.sourceforge.fenixedu.domain.teacher.evaluation.TeacherEvaluationMark as TeacherEvaluationMark; enum net.sourceforge.fenixedu.domain.candidacyProcess.erasmus.ExecutedActionType as ExecutedActionType; enum net.sourceforge.fenixedu.domain.OperationType as OperationType; enum net.sourceforge.fenixedu.domain.inquiries.GroupResultType as GroupResultType; enum net.sourceforge.fenixedu.domain.inquiries.InquiryGradesInterval as InquiryGradesInterval; enum net.sourceforge.fenixedu.domain.inquiries.InquiryResultType as InquiryResultType; enum net.sourceforge.fenixedu.domain.inquiries.InquiryConnectionType as InquiryConnectionType; enum net.sourceforge.fenixedu.domain.inquiries.ResultClassification as ResultClassification; enum net.sourceforge.fenixedu.domain.inquiries.ResultPersonCategory as ResultPersonCategory; enum net.sourceforge.fenixedu.domain.accounting.report.GratuityReportQueueJobType as GratuityReportQueueJobType; enum net.sourceforge.fenixedu.domain.careerWorkshop.CareerWorkshopSessions as CareerWorkshopSessions; enum net.sourceforge.fenixedu.domain.careerWorkshop.CareerWorkshopThemes as CareerWorkshopThemes; enum net.sourceforge.fenixedu.domain.phd.candidacy.PhdCandidacyPeriodType as PhdCandidacyPeriodType; enum net.sourceforge.fenixedu.domain.phd.thesis.PhdJuryElementsRatificationEntity as PhdJuryElementsRatificationEntity; enum net.sourceforge.fenixedu.domain.candidacyProcess.erasmus.NationalIdCardAvoidanceQuestion as NationalIdCardAvoidanceQuestion; enum net.sourceforge.fenixedu.domain.candidacy.FirstTimeCandidacyStage as FirstTimeCandidacyStage; enum net.sourceforge.fenixedu.domain.candidacy.FirstTimeCandidacyStage as FirstTimeCandidacyStage; enum net.sourceforge.fenixedu.persistenceTierOracle.BackendInstance as BackendInstance; enum net.sourceforge.fenixedu.domain.contacts.PartyContactValidationState as PartyContactValidationState; enum net.sourceforge.fenixedu.domain.SchoolPeriodDuration as SchoolPeriodDuration; enum net.sourceforge.fenixedu.domain.candidacyProcess.mobility.MobilityEmailTemplateType as MobilityEmailTemplateType; enum net.sourceforge.fenixedu.domain.candidacyProcess.IndividualCandidacySeriesGradeState as IndividualCandidacySeriesGradeState; /* * Value types that need special externalization */ valueType java.math.BigDecimal as BigDecimal { externalizeWith { String toString(); } } valueType java.util.UUID as UUID { externalizeWith { String toString(); } internalizeWith fromString(); } valueType net.sourceforge.fenixedu.domain.Grade as Grade { externalizeWith { String exportAsString(); } internalizeWith importFromString(); } valueType net.sourceforge.fenixedu.domain.accessControl.Group as Group { externalizeWith { String getExpression(); } internalizeWith fromString(); } valueType net.sourceforge.fenixedu.domain.degreeStructure.BibliographicReferences as BibliographicReferences { externalizeWith { String net.sourceforge.fenixedu.domain.degreeStructure.Externalization.externalizeBibliographicReferences(); } internalizeWith net.sourceforge.fenixedu.domain.degreeStructure.Externalization.internalizeBibliographicReferences(); } valueType net.sourceforge.fenixedu.domain.degreeStructure.EctsComparabilityTable as EctsComparabilityTable { externalizeWith { String toString(); } internalizeWith fromString(); } valueType net.sourceforge.fenixedu.domain.degreeStructure.EctsComparabilityPercentages as EctsComparabilityPercentages { externalizeWith { String toString(); } internalizeWith fromString(); } valueType net.sourceforge.fenixedu.domain.protocols.util.ProtocolAction as ProtocolAction { externalizeWith { String toString(); } internalizeWith fromString(); } valueType net.sourceforge.fenixedu.domain.tests.TestsGrade as TestsGrade { externalizeWith { bytearray pt.ist.fenixframework.Externalization.externalizeSerializableGZiped(); } internalizeWith pt.ist.fenixframework.Externalization.internalizeSerializableGZiped(); } valueType net.sourceforge.fenixedu.domain.tests.answers.ConcreteAnswer as ConcreteAnswer { externalizeWith { bytearray pt.ist.fenixframework.Externalization.externalizeSerializableGZiped(); } internalizeWith pt.ist.fenixframework.Externalization.internalizeSerializableGZiped(); } valueType net.sourceforge.fenixedu.domain.tests.predicates.Predicate as Predicate { externalizeWith { bytearray pt.ist.fenixframework.Externalization.externalizeSerializableGZiped(); } internalizeWith pt.ist.fenixframework.Externalization.internalizeSerializableGZiped(); } valueType net.sourceforge.fenixedu.domain.time.calendarStructure.AcademicInterval as AcademicInterval { externalizeWith { String getRepresentationInStringFormat(); } internalizeWith getAcademicIntervalFromString(); } valueType net.sourceforge.fenixedu.domain.time.calendarStructure.AcademicPeriod as AcademicPeriod { externalizeWith { String getRepresentationInStringFormat(); } internalizeWith getAcademicPeriodFromString(); } valueType net.sourceforge.fenixedu.domain.CurricularYearList as CurricularYearList { externalizeWith { String toString(); } internalizeWith internalize(); } valueType net.sourceforge.fenixedu.domain.util.EmailAddressList as EmailAddressList { externalizeWith { String toString(); } } valueType net.sourceforge.fenixedu.util.ByteArray as ByteArray { externalizeWith { bytearray getBytes(); } } valueType net.sourceforge.fenixedu.util.CurricularCourseExecutionScope as CurricularCourseExecutionScope { externalizeWith { Integer getType(); } } valueType net.sourceforge.fenixedu.util.DiaSemana as DiaSemana { externalizeWith { Integer getDiaSemana(); } } valueType net.sourceforge.fenixedu.util.EnrolmentAction as EnrolmentAction { externalizeWith { int getValue(); } internalizeWith getEnum(); } valueType net.sourceforge.fenixedu.util.EnrolmentEvaluationState as EnrolmentEvaluationState { externalizeWith { Integer getState(); } internalizeWith valueOf(); } valueType net.sourceforge.fenixedu.util.EnrolmentGroupPolicyType as EnrolmentGroupPolicyType { externalizeWith { Integer getType(); } } valueType net.sourceforge.fenixedu.util.FinalDegreeWorkProposalStatus as FinalDegreeWorkProposalStatus { externalizeWith { Integer getStatus(); } } valueType net.sourceforge.fenixedu.util.HourMinuteSecond as HourMinuteSecond { externalizeWith { LocalTime toLocalTime(); } internalizeWith fromLocalTime(); } valueType net.sourceforge.fenixedu.util.MarkType as MarkType { externalizeWith { Integer getType(); } } valueType net.sourceforge.fenixedu.util.Money as Money { externalizeWith { String toString(); } } valueType net.sourceforge.fenixedu.util.OldPublicationType as OldPublicationType { externalizeWith { int getValue(); } internalizeWith getEnum(); } valueType net.sourceforge.fenixedu.util.OrientationType as OrientationType { externalizeWith { int getValue(); } internalizeWith getEnum(); } valueType net.sourceforge.fenixedu.util.PeriodState as PeriodState { externalizeWith { String getStateCode(); } internalizeWith valueOf(); } valueType net.sourceforge.fenixedu.util.PeriodToApplyRestriction as PeriodToApplyRestriction { externalizeWith { int getValue(); } internalizeWith getEnum(); } valueType net.sourceforge.fenixedu.util.ProposalState as ProposalState { externalizeWith { Integer getState(); } } valueType net.sourceforge.fenixedu.util.ProviderRegimeType as ProviderRegimeType { externalizeWith { int getValue(); } internalizeWith getEnum(); } valueType net.sourceforge.fenixedu.util.PublicationArea as PublicationArea { externalizeWith { String getName(); } internalizeWith getEnum(); } valueType net.sourceforge.fenixedu.util.PublicationType as PublicationType { externalizeWith { int getValue(); } internalizeWith getEnum(); } valueType net.sourceforge.fenixedu.util.Season as Season { externalizeWith { Integer getseason(); } } valueType net.sourceforge.fenixedu.util.SecretaryEnrolmentStudentReason as SecretaryEnrolmentStudentReason { externalizeWith { int getValue(); } internalizeWith getEnum(); } valueType net.sourceforge.fenixedu.util.SituationName as SituationName { externalizeWith { Integer getSituationName(); } } valueType net.sourceforge.fenixedu.util.State as State { externalizeWith { Integer getState(); } } valueType net.sourceforge.fenixedu.util.tests.CorrectionAvailability as CorrectionAvailability { externalizeWith { Integer getAvailability(); } } valueType net.sourceforge.fenixedu.util.tests.CorrectionFormula as CorrectionFormula { externalizeWith { Integer getFormula(); } } valueType net.sourceforge.fenixedu.util.tests.Response as Response { externalizeWith { String net.sourceforge.fenixedu.util.tests.ResponseExternalization.externalize(); } internalizeWith net.sourceforge.fenixedu.util.tests.ResponseExternalization.internalize(); } valueType net.sourceforge.fenixedu.util.tests.TestType as TestType { externalizeWith { Integer getType(); } } valueType org.joda.time.Interval as Interval { externalizeWith { String net.sourceforge.fenixedu.util.date.SerializationTool.intervalSerialize(); } internalizeWith net.sourceforge.fenixedu.util.date.SerializationTool.intervalDeserialize(); } valueType org.joda.time.Duration as Duration { externalizeWith { Long getMillis(); } } valueType org.joda.time.Period as Period { externalizeWith { bytearray pt.ist.fenixframework.Externalization.externalizeSerializable(); } internalizeWith pt.ist.fenixframework.Externalization.internalizeSerializable(); } valueType org.joda.time.YearMonthDay as YearMonthDay { externalizeWith { String net.sourceforge.fenixedu.util.date.SerializationTool.yearMonthDaySerialize(); } internalizeWith net.sourceforge.fenixedu.util.date.SerializationTool.yearMonthDayDeserialize(); } valueType pt.utl.ist.fenix.tools.file.FileSetMetaData as FileSetMetaData { externalizeWith { String toXMLString(); } internalizeWith buildFromXMLString(); } valueType pt.utl.ist.fenix.tools.file.VirtualPath as VirtualPath { externalizeWith { String toXMLString(); } internalizeWith buildFromXMLString(); } valueType pt.utl.ist.fenix.tools.util.i18n.MultiLanguageString as MultiLanguageString { externalizeWith { String exportAsString(); } internalizeWith importFromString(); } valueType net.sourceforge.fenixedu.domain.candidacyProcess.erasmus.TypeOfProgrammeList as erasmus.TypeOfProgrammeList { externalizeWith { String toString(); } internalizeWith importFromString(); } valueType net.sourceforge.fenixedu.domain.candidacyProcess.erasmus.StorkAttributesList as erasmus.StorkAttributesList { externalizeWith { String toString(); } internalizeWith importFromString(); } /* Phd Module */ valueType net.sourceforge.fenixedu.domain.phd.access.PhdProcessAccessTypeList as PhdProcessAccessTypeList { externalizeWith { String toString(); } internalizeWith importFromString(); } valueType net.sourceforge.fenixedu.domain.phd.candidacy.feedbackRequest.PhdCandidacySharedDocumentsList as PhdCandidacySharedDocumentsList { externalizeWith { String toString(); } internalizeWith importFromString(); } /* End of Phd Module */ valueType net.sourceforge.fenixedu.domain.inquiries.QuestionScale as QuestionScale { externalizeWith { String exportAsString(); } internalizeWith importFromString(); } valueType net.sourceforge.fenixedu.domain.accounting.events.export.PrintedPaymentCodes as PrintedPaymentCodes { externalizeWith { String exportAsString(); } internalizeWith importFromString(); } /* * * Class definitions * */ class DomainObject { } class Alumni extends DomainObject { Boolean registered; UUID urlRequestToken; Boolean isEmployed; DateTime registeredWhen; } class AlumniIdentityCheckRequest extends DomainObject { String contactEmail; String documentIdNumber; String fullName; YearMonthDay dateOfBirthYearMonthDay; String parishOfBirth; String districtOfBirth; String districtSubdivisionOfBirth; String socialSecurityNumber; String nameOfFather; String nameOfMother; DateTime creationDateTime; Boolean approved; String comment; DateTime decisionDateTime; AlumniRequestType requestType; UUID requestToken; } class alumni.CerimonyInquiry extends DomainObject { String description; String text; DateTime begin; DateTime end; Boolean allowComments; } class alumni.CerimonyInquiryAnswer extends DomainObject { Integer answerOrder; String text; } class alumni.CerimonyInquiryPerson extends DomainObject { String comment; } class Attends extends DomainObject { } class BibliographicReference extends DomainObject { String authors; Boolean optional; String reference; Integer referenceOrder; String title; String year; } class Branch extends DomainObject { String acronym; OldBranchType branchType; String code; String name; String nameEn; Integer secondaryCredits; Integer specializationCredits; } class CandidateEnrolment extends DomainObject { } class CandidateSituation extends DomainObject { YearMonthDay dateYearMonthDay; String remarks; SituationName situation; State validation; } class cardGeneration.CardGenerationBatch extends DomainObject { String description; DateTime created; DateTime updated; DateTime sent; String peopleForEntryCreation; } class cardGeneration.CardGenerationEntry extends DomainObject { String line; DateTime created; String documentID; } class cardGeneration.CardGenerationProblem extends DomainObject { String descriptionKey; String arg; } class cardGeneration.CardGenerationRegister extends DomainObject { LocalDate emission; Boolean withAccountInformation; String linePrefix; } class cardGeneration.SantanderBatch extends DomainObject { DateTime created; DateTime generated; DateTime sent; Integer sequenceNumber; } class cardGeneration.SantanderBatchRequester extends DomainObject { } class cardGeneration.SantanderBatchSender extends DomainObject { } class cardGeneration.SantanderSequenceNumberGenerator extends DomainObject { Integer sequenceNumber; } class cardGeneration.SantanderEntry extends DomainObject { String line; DateTime created; } class cardGeneration.SantanderProblem extends DomainObject { String descriptionKey; String arg; } class CompetenceCourse extends DomainObject { String code; YearMonthDay creationDateYearMonthDay; CurricularStage curricularStage; String name; CompetenceCourseType type; } class Contributor extends DomainObject { String contributorAddress; String contributorName; Integer contributorNumber; } class Coordinator extends DomainObject { Boolean responsible; } class CoordinatorExecutionDegreeCoursesReport extends DomainObject { DateTime lastEditionDate; String globalComment; String stepsToImproveResults; String teachingBestPracticesDevelopedByTeachers; String bolonhaProcessImplementationReflection; } class CostCenter extends DomainObject { String code; String departament; String section1; String section2; } class Country extends DomainObject { String code (REQUIRED); String threeLetterCode (REQUIRED); String name; MultiLanguageString countryNationality (REQUIRED); Boolean defaultCountry (REQUIRED); MultiLanguageString localizedName (REQUIRED); } class TeacherCredits extends DomainObject { BigDecimal teachingDegreeCredits; BigDecimal supportLessonHours; BigDecimal masterDegreeCredits; BigDecimal tfcAdviseCredits; BigDecimal thesesCredits; BigDecimal otherCredits; BigDecimal institutionWorkingHours; BigDecimal managementCredits; BigDecimal serviceExemptionCredits; BigDecimal pastServiceCredits; BigDecimal balanceOfCredits; BigDecimal mandatoryLessonHours; BigDecimal totalCredits; DateTime lastModifiedDate; } class TeacherCreditsState extends DomainObject { DateTime lastModifiedDate; CreditsState creditState; } class CreditsInAnySecundaryArea extends DomainObject { Integer givenCredits; } class CreditsInScientificArea extends DomainObject { Integer givenCredits; } class CurricularCourseEquivalence extends DomainObject { } class CurricularCourseScope extends DomainObject { String anotation; YearMonthDay beginYearMonthDay; YearMonthDay endYearMonthDay; } class CurricularSemester extends DomainObject { Integer semester; } class CurricularYear extends DomainObject { Integer year; } class Curriculum extends DomainObject { String generalObjectives; String generalObjectivesEn; DateTime lastModificationDateDateTime; String operacionalObjectives; String operacionalObjectivesEn; String program; String programEn; } class AcademicProgram extends DomainObject { } class Degree extends AcademicProgram { Double ectsCredits; GradeScale gradeScale; String nameEn; String nome; String prevailingScientificArea; String sigla; DegreeType tipoCurso; String ministryCode; String idCardName; } class EmptyDegree extends Degree; class DegreeOfficialPublication extends DomainObject { LocalDate publication (REQUIRED); String dgesReference; String universityReference; String officialReference (REQUIRED); } class DegreeSpecializationArea extends DomainObject { MultiLanguageString name (REQUIRED); } class DegreeCurricularPlan extends DomainObject { String anotation; Group curricularPlanMembersGroup; CurricularStage curricularStage; Integer degreeDuration; String description; String descriptionEn; YearMonthDay endDateYearMonthDay; GradeScale gradeScale; YearMonthDay initialDateYearMonthDay; MarkType markType; Integer minimalYearForOptionalCourses; String name; Double neededCredits; Integer numerusClausus; DegreeCurricularPlanState state; Boolean applyPreviousYearsEnrolmentRule; } class EmptyDegreeCurricularPlan extends DegreeCurricularPlan; class DegreeContext extends DomainObject { AcademicInterval beginInterval (REQUIRED); AcademicInterval endInterval; AcademicPeriod period (REQUIRED); } class DegreeInfo extends DomainObject { Integer driftsFirst; Integer driftsInitial; Integer driftsSecond; Double markAverage; Double markMax; Double markMin; MultiLanguageString name; MultiLanguageString additionalInfo; MultiLanguageString description; MultiLanguageString gratuity; MultiLanguageString history; MultiLanguageString links; MultiLanguageString operationalRegime; MultiLanguageString schoolCalendar; } class DegreeInfoCandidacy extends DomainObject { MultiLanguageString accessRequisites; MultiLanguageString candidacyDocuments; MultiLanguageString candidacyPeriod; MultiLanguageString enrolmentPeriod; MultiLanguageString selectionResultDeadline; MultiLanguageString testIngression; } class DegreeInfoFuture extends DomainObject { MultiLanguageString classifications; MultiLanguageString designedFor; MultiLanguageString objectives; MultiLanguageString professionalExits; MultiLanguageString qualificationLevel; MultiLanguageString recognitions; } class DeleteFileLog extends DomainObject { String externalStorageIdentification; DateTime requestTime; String requestorIstUsername; } class DeleteFileRequest extends DomainObject { Boolean deleteItem; String externalStorageIdentification; String requestorIstUsername; } class Department extends DomainObject { String code; Group competenceCourseMembersGroup; String name; String realName; String realNameEn; Boolean active; } class District extends DomainObject { String code (REQUIRED); String name (REQUIRED); } class DistrictSubdivision extends DomainObject { String code (REQUIRED); String name (REQUIRED); } class DomainObjectActionLog extends DomainObject { String action; String domainObjectClassName; DateTime instant; Integer keyDomainObject; String personUsername; } class DomainObjectActionLogEntry extends DomainObject { String name; String value; } class DomainOperationLog extends DomainObject { DateTime whenDateTime; String description; } class Employee extends DomainObject { DateTime creationDate; Integer employeeNumber; Integer workingHours; } class EmployeeHistoric extends DomainObject { YearMonthDay beginDateYearMonthDay; String calendar; YearMonthDay endDateYearMonthDay; DateTime whenDateTime; Integer who; } class EnrolmentEvaluation extends DomainObject { String checkSum; EnrolmentEvaluationState enrolmentEvaluationState; EnrolmentEvaluationType enrolmentEvaluationType; YearMonthDay examDateYearMonthDay; Grade grade (REQUIRED); YearMonthDay gradeAvailableDateYearMonthDay; String gradeValue; String observation; DateTime whenDateTime; String bookReference; String page; EnrolmentEvaluationContext context; CurriculumValidationEvaluationPhase curriculumValidationEvaluationPhase; GradeScale gradeScale; } class EnrolmentInstructions extends DomainObject { String instructions; } class EnrolmentPeriod extends DomainObject { DateTime endDateDateTime; DateTime startDateDateTime; } class CandidacyPeriodInDegreeCurricularPlan extends EnrolmentPeriod { } class EnrolmentPeriodInClasses extends EnrolmentPeriod { } class EnrolmentPeriodInCurricularCourses extends EnrolmentPeriod { } class EnrolmentPeriodInCurricularCoursesSpecialSeason extends EnrolmentPeriod { } class EnrolmentPeriodInCurricularCoursesFlunkedSeason extends EnrolmentPeriod { } class EnrolmentPeriodInSpecialSeasonEvaluations extends EnrolmentPeriod { } class EnrolmentPeriodInImprovementOfApprovedEnrolment extends EnrolmentPeriod { } class RegistrationPeriodInDegreeCurricularPlan extends EnrolmentPeriod { } class ReingressionPeriod extends EnrolmentPeriod { } class EquivalencePlan extends DomainObject { } class EquivalencePlanEntry extends DomainObject { Double ectsCredits; LogicOperator newDegreeModulesOperator; LogicOperator sourceDegreeModulesOperator; Boolean transitiveSource; } class DegreeCurricularPlanEquivalencePlan extends EquivalencePlan { } class StudentCurricularPlanEquivalencePlan extends EquivalencePlan { } class Evaluation extends DomainObject { String publishmentMessage; GradeScale gradeScale; } class EvaluationMethod extends DomainObject { MultiLanguageString evaluationElements; } class FinalEvaluation extends Evaluation { } class AdHocEvaluation extends Evaluation { String description; String name; DateTime creationDateTime; } class Project extends Evaluation { String description; Integer maxSubmissionsToKeep; String name; Boolean onlineSubmissionsAllowed; DateTime projectBeginDateTime; DateTime projectEndDateTime; } class WrittenEvaluation extends Evaluation { HourMinuteSecond beginningDateHourMinuteSecond; YearMonthDay dayDateYearMonthDay; HourMinuteSecond endDateHourMinuteSecond; YearMonthDay enrollmentBeginDayDateYearMonthDay; HourMinuteSecond enrollmentBeginTimeDateHourMinuteSecond; YearMonthDay enrollmentEndDayDateYearMonthDay; HourMinuteSecond enrollmentEndTimeDateHourMinuteSecond; Boolean vigilantsReport; } class Exam extends WrittenEvaluation { Season season; } class WrittenTest extends WrittenEvaluation { String description; DateTime requestRoomSentDate; } class onlineTests.OnlineTest extends Evaluation { } class ExecutionCourse extends DomainObject { Boolean availableForInquiries; Boolean availableGradeSubmission; String comment; String nome; String sigla; EntryPhase entryPhase; Boolean projectTutorialCourse; BigDecimal unitCreditValue; } class ExecutionCourseLog extends DomainOperationLog { } class ContentManagementLog extends ExecutionCourseLog { } class ProfessorshipManagementLog extends ExecutionCourseLog { } class CurricularManagementLog extends ExecutionCourseLog { } class GroupsAndShiftsManagementLog extends ExecutionCourseLog { } class EvaluationManagementLog extends ExecutionCourseLog { } class CourseLoad extends DomainObject { ShiftType type; BigDecimal totalQuantity; BigDecimal unitQuantity; } class ExecutionDegree extends DomainObject { MultiLanguageString anotation; Boolean temporaryExamMap; AcademicInterval executionInterval; YearMonthDay beginThesisCreationPeriod; YearMonthDay endThesisCreationPeriod; } class ExecutionInterval extends DomainObject { AcademicInterval academicInterval; PeriodState state; String name; YearMonthDay beginDateYearMonthDay; YearMonthDay endDateYearMonthDay; } class ExecutionSemester extends ExecutionInterval { } class ExecutionYear extends ExecutionInterval { } class ExpectationEvaluationGroup extends DomainObject { } class ExportGrouping extends DomainObject { ProposalState proposalState; } class ExternalCurricularCourse extends DomainObject { String code; String name; } class teacher.evaluation.FacultyEvaluationProcess extends DomainObject { MultiLanguageString title; Interval autoEvaluationInterval; Interval evaluationInterval; boolean allowNoEval; String suffix; boolean areApprovedMarksPublished; } class teacher.evaluation.FacultyEvaluationProcessYear extends DomainObject { String year; } class teacher.evaluation.TeacherEvaluationProcess extends DomainObject { TeacherEvaluationMark approvedEvaluationMark; } class teacher.evaluation.ApprovedTeacherEvaluationProcessMark extends DomainObject { TeacherEvaluationMark approvedEvaluationMark; } class teacher.evaluation.TeacherEvaluation extends DomainObject { DateTime createdDate; DateTime autoEvaluationLock; DateTime evaluationLock; TeacherEvaluationMark autoEvaluationMark; TeacherEvaluationMark evaluationMark; } class teacher.evaluation.NoEvaluation extends teacher.evaluation.TeacherEvaluation { } class teacher.evaluation.CurricularEvaluation extends teacher.evaluation.TeacherEvaluation { } class teacher.evaluation.RadistEvaluation extends teacher.evaluation.TeacherEvaluation { } class teacher.evaluation.TeacherEvaluationCoEvaluator extends DomainObject { } class teacher.evaluation.InternalCoEvaluator extends teacher.evaluation.TeacherEvaluationCoEvaluator { } class teacher.evaluation.ExternalCoEvaluator extends teacher.evaluation.TeacherEvaluationCoEvaluator { String name; } class Photograph extends DomainObject { ContentType contentType; PhotoType photoType; PhotoState state; DateTime submission; DateTime stateChange; } class PhotographContent extends DomainObject { PhotographContentSize size; ByteArray content; } class File extends DomainObject { String checksum; String checksumAlgorithm; String displayName; String externalStorageIdentification; String filename; String mimeType; Group permittedGroup; Integer size; DateTime uploadTime; } class teacher.evaluation.TeacherEvaluationFile extends File { TeacherEvaluationFileType teacherEvaluationFileType; } class TeacherCreditsDocument extends File { } class FileLocalContent extends DomainObject { VirtualPath path; ByteArray content; } class FileLocalContentMetadata extends DomainObject { FileSetMetaData entry; } class log.FirstYearShiftsCapacityToggleLog extends DomainObject { DateTime creationDate; } /* Documents */ class documents.GeneratedDocument extends File { GeneratedDocumentType type; } class documents.GeneratedDocumentWithoutSource extends documents.GeneratedDocument; class documents.CreditNoteGeneratedDocument extends documents.GeneratedDocument; class documents.ReceiptGeneratedDocument extends documents.GeneratedDocument; class documents.DocumentRequestGeneratedDocument extends documents.GeneratedDocument; class documents.AnnualIRSDeclarationDocument extends documents.GeneratedDocument { Integer year; } class documents.LibraryMissingCardsDocument extends documents.GeneratedDocument; class documents.LibraryMissingLettersDocument extends documents.GeneratedDocument; class FileContent extends File { } class messaging.PublicBoardFileContent extends FileContent { } class ProjectSubmissionFile extends File { } class UnitFile extends File { String description; } class UnitSiteBannerFile extends File { } class UnitSiteFile extends File { } class candidacy.CandidacyDocumentFile extends File { } class candidacy.CandidacySummaryFile extends File { } class parking.ParkingFile extends File { } class protocols.ProtocolFile extends File { } class research.result.ResearchResultDocumentFile extends File { FileResultPermittedGroupType fileResultPermittedGroupType; Boolean visible; } class space.BlueprintFile extends File { ByteArray content; } class tests.PictureMaterialFile extends File { } class thesis.ThesisFile extends File { Language language; String subTitle; String title; } class careerWorkshop.CareerWorkshopSpreadsheet extends File { } class careerWorkshop.CareerWorkshopConfirmationSpreadsheet extends File { } class GenericEvent extends DomainObject { MultiLanguageString description; FrequencyType frequency; MultiLanguageString title; YearMonthDay beginDate; YearMonthDay endDate; HourMinuteSecond startTimeDateHourMinuteSecond; HourMinuteSecond endTimeDateHourMinuteSecond; Boolean dailyFrequencyMarkSunday; Boolean dailyFrequencyMarkSaturday; } class GratuitySituation extends DomainObject { String exemptionDescription; Integer exemptionPercentage; ExemptionGratuityType exemptionType; Double exemptionValue; Boolean hasPenaltyExemption; YearMonthDay penaltyExemptionDate; String penaltyExemptionJustification; Double remainingValue; Double totalValue; DateTime whenDateTime; } class GratuityValues extends DomainObject { Double anualValue; Double courseValue; Double creditValue; YearMonthDay endPaymentYearMonthDay; Double finalProofValue; Boolean penaltyApplicable; Boolean proofRequestPayment; Double scholarShipValue; YearMonthDay startPaymentYearMonthDay; DateTime whenDateTime; } class Grouping extends DomainObject { DateTime enrolmentBeginDayDateDateTime; DateTime enrolmentEndDayDateDateTime; EnrolmentGroupPolicyType enrolmentPolicy; Integer groupMaximumNumber; Integer idealCapacity; Integer maximumCapacity; Integer minimumCapacity; String name; String projectDescription; ShiftType shiftType; Boolean automaticEnrolment; Boolean differentiatedCapacity; } class Guide extends DomainObject { YearMonthDay creationDateYearMonthDay; GuideRequester guideRequester; Integer number; YearMonthDay paymentDateYearMonthDay; PaymentType paymentType; String remarks; BigDecimal totalBigDecimal; Integer version; Integer year; } class GuideEntry extends DomainObject { String description; DocumentType documentType; GraduationType graduationType; BigDecimal priceBigDecimal; Integer quantity; } class GuideSituation extends DomainObject { YearMonthDay dateYearMonthDay; String remarks; GuideState situation; State state; } class Holiday extends DomainObject { Partial date; } class StrikeDay extends DomainObject { LocalDate date; } class StrikeDayTask extends .pt.ist.fenixframework.plugins.scheduler.domain.Task { } class Identification extends DomainObject { Boolean active; DateTime beginDateDateTime; DateTime endDateDateTime; } class Login extends Identification { Boolean isPassInKerberos; String password; } class InsuranceValue extends DomainObject { BigDecimal annualValueBigDecimal; YearMonthDay endDateYearMonthDay; } class IrsDeclarationLink extends DomainObject { MultiLanguageString title; Boolean available; String irsLink; } class Lesson extends DomainObject { HourMinuteSecond beginHourMinuteSecond; DiaSemana diaSemana; HourMinuteSecond endHourMinuteSecond; FrequencyType frequency; } class LessonInstance extends DomainObject { DateTime beginDateTime; DateTime endDateTime; } class LessonPlanning extends DomainObject { ShiftType lessonType; Integer orderOfPlanning; MultiLanguageString planning; MultiLanguageString title; } class Locality extends DomainObject { String name; } class LoginAlias extends DomainObject { String alias; RoleType roleType; LoginAliasType type; } class LoginPeriod extends DomainObject { YearMonthDay beginDate; YearMonthDay endDate; } class LoginRequest extends DomainObject { String hash; } class ManagementGroups extends DomainObject { Group assiduousnessManagers; Group assiduousnessSectionStaff; Group payrollSectionStaff; Group protocolManagers; } class Mark extends DomainObject { String mark; String publishedMark; } class FinalMark extends Mark { Integer gradeListVersion; YearMonthDay submitDateYearMonthDay; String submitedMark; YearMonthDay whenSubmitedYearMonthDay; } class MarkSheet extends DomainObject { String archiveInformation; String checkSum; DateTime confirmationDateDateTime; DateTime creationDateDateTime; DateTime evaluationDateDateTime; MarkSheetState markSheetState; MarkSheetType markSheetType; Boolean printed; String reason; Boolean submittedByTeacher; } class OldMarkSheet extends MarkSheet { } class MasterDegreeCandidate extends DomainObject { Double average; Integer candidateNumber; Boolean courseAssistant; String coursesToAssist; Double givenCredits; String givenCreditsRemarks; Boolean hasGuider; String majorDegree; String majorDegreeSchool; Integer majorDegreeYear; Specialization specialization; String specializationArea; Integer substituteOrder; } class MasterDegreeProofVersion extends DomainObject { Integer attachedCopiesNumber; State currentState; MasterDegreeClassification finalResult; DateTime lastModificationDateTime; YearMonthDay proofDateYearMonthDay; YearMonthDay thesisDeliveryDateYearMonthDay; } class MasterDegreeThesis extends DomainObject { } class MasterDegreeThesisDataVersion extends DomainObject { State currentState; String dissertationTitle; DateTime lastModificationDateTime; } class NonAffiliatedTeacher extends DomainObject { String name; } class OccupationPeriod extends DomainObject { Interval periodInterval; } /* * Bridge class */ class OccupationPeriodReference extends DomainObject { OccupationPeriodType periodType; Integer semester; CurricularYearList curricularYears; } class PaymentPhase extends DomainObject { String description; YearMonthDay endDateYearMonthDay; YearMonthDay startDateYearMonthDay; Double value; } class PersonAccount extends DomainObject { Double balance; } class PersonalGroup extends DomainObject { Group concreteGroup; String description; String name; } class Price extends DomainObject { String description; DocumentType documentType; GraduationType graduationType; Double price; } class Professorship extends DomainObject { Double hours; Boolean responsibleFor; } class ProjectSubmission extends DomainObject { DateTime submissionDateTime; String teacherObservation; } class ProjectSubmissionLog extends DomainObject { String fileChecksum; String fileChecksumAlgorithm; String fileMimeType; Integer fileSize; String filename; DateTime submissionDateTime; } class PunctualRoomsOccupationComment extends DomainObject { MultiLanguageString description; DateTime instant; MultiLanguageString subject; } class PunctualRoomsOccupationRequest extends DomainObject { Integer employeeReadComments; Integer identification; DateTime instant; Integer teacherReadComments; } class PunctualRoomsOccupationStateInstant extends DomainObject { DateTime instant; RequestState requestState; } class Qualification extends DomainObject { String branch; YearMonthDay dateYearMonthDay; String degree; String degreeRecognition; YearMonthDay equivalenceDateYearMonthDay; String equivalenceSchool; DateTime lastModificationDateDateTime; String mark; String school; String specializationArea; String title; QualificationType type; String year; String designation; Partial attendedBegin; Partial attendedEnd; LocalDate whenCreated; } class Formation extends Qualification { FormationType formationType; AcademicalInstitutionType institutionType; String beginYear; BigDecimal ectsCredits; Integer formationHours; } class candidacyProcess.Formation extends Formation { Boolean concluded; String conclusionGrade; } class Role extends DomainObject { String page; String pageNameProperty; String portalSubApplication; RoleType roleType; } class RoleOperationLog extends DomainObject { String istUsername; String whoGrantedIstUsername; DateTime logDate; RoleOperationType operationType; } class ResourceAllocationRole extends Role { Group schedulesAccessGroup; Group spacesAccessGroup; Group materialsAccessGroup; Group vehiclesAccessGroup; } class RootDomainObject extends DomainObject { } class SchoolClass extends DomainObject { Integer anoCurricular; String nome; } class ScientificArea extends DomainObject { String name; } class ScientificCommission extends DomainObject { Boolean contact; } class SecretaryEnrolmentStudent extends DomainObject { String reasonDescription; SecretaryEnrolmentStudentReason reasonType; } class Seminaries.CaseStudy extends DomainObject { String code; String description; String name; } class Seminaries.CaseStudyChoice extends DomainObject { Integer preferenceOrder; } class Seminaries.CourseEquivalency extends DomainObject { } class Seminaries.Modality extends DomainObject { String description; String name; } class Seminaries.Seminary extends DomainObject { Integer allowedCandidaciesPerStudent; String description; YearMonthDay enrollmentBeginYearMonthDay; YearMonthDay enrollmentEndYearMonthDay; HourMinuteSecond enrollmentTimeBeginHourMinuteSecond; HourMinuteSecond enrollmentTimeEndHourMinuteSecond; Boolean hasCaseStudy; Boolean hasTheme; String name; } class Seminaries.SeminaryCandidacy extends DomainObject { Boolean approved; String motivation; } class Seminaries.Theme extends DomainObject { String description; String name; String shortName; } class Shift extends DomainObject { Integer lotacao; String nome; String comment; } class ShiftEnrolment extends DomainObject { DateTime createdOn; } class ShiftGroupingProperties extends DomainObject { Integer capacity; } class ShiftProfessorship extends DomainObject { Double percentage; } class StudentCurricularPlan extends DomainObject { Double classification; Integer completedCourses; StudentCurricularPlanState currentState; Integer enrolledCourses; Double givenCredits; String observations; Specialization specialization; YearMonthDay startDateYearMonthDay; DateTime whenDateTime; LocalDate endStageDate; } class StudentGroup extends DomainObject { Integer groupNumber; Boolean valid; } class Summary extends DomainObject { Boolean isExtraLesson; DateTime lastModifiedDateDateTime; Integer studentsNumber; YearMonthDay summaryDateYearMonthDay; HourMinuteSecond summaryHourHourMinuteSecond; MultiLanguageString summaryText; ShiftType summaryType; String teacherName; MultiLanguageString title; Boolean taught; } class SupportLesson extends DomainObject { HourMinuteSecond endTimeHourMinuteSecond; String place; HourMinuteSecond startTimeHourMinuteSecond; DiaSemana weekDay; } class Teacher extends DomainObject { } class TeacherAuthorization extends DomainObject{ } class AplicaTeacherAuthorization extends TeacherAuthorization{ } class ExternalTeacherAuthorization extends TeacherAuthorization{ Boolean active; DateTime unactiveTime; Double lessonHours; Boolean canPark; Boolean canHaveCard; } class TeacherPersonalExpectationPeriod extends DomainObject { YearMonthDay endDateYearMonthDay; YearMonthDay startDateYearMonthDay; } class TeacherAutoEvaluationDefinitionPeriod extends TeacherPersonalExpectationPeriod { } class TeacherExpectationDefinitionPeriod extends TeacherPersonalExpectationPeriod { } class TeacherPersonalExpectationsEvaluationPeriod extends TeacherPersonalExpectationPeriod { } class TeacherPersonalExpectationsVisualizationPeriod extends TeacherPersonalExpectationPeriod { } class TutorshipIntention extends DomainObject { AcademicInterval academicInterval (REQUIRED); } class Tutorship extends DomainObject { Partial startDate; Partial endDate; } class TutorshipSummary extends DomainObject { Integer howManyReunionsGroup; Integer howManyReunionsIndividual; Integer howManyContactsPhone; Integer howManyContactsEmail; TutorshipSummarySatisfaction tutorshipSummarySatisfaction; TutorshipSummaryProgramAssessment tutorshipSummaryProgramAssessment; String difficulties; String gains; String suggestions; Boolean problemsR1; Boolean problemsR2; Boolean problemsR3; Boolean problemsR4; Boolean problemsR5; Boolean problemsR6; Boolean problemsR7; Boolean problemsR8; Boolean problemsR9; Boolean problemsR10; String problemsOther; Boolean gainsR1; Boolean gainsR2; Boolean gainsR3; Boolean gainsR4; Boolean gainsR5; Boolean gainsR6; Boolean gainsR7; Boolean gainsR8; Boolean gainsR9; Boolean gainsR10; String gainsOther; } class TutorshipSummaryPeriod extends DomainObject { LocalDate beginDate; LocalDate endDate; } class TutorshipSummaryRelation extends DomainObject { TutorshipParticipationType participationType; Boolean participationRegularly; Boolean participationNone; Boolean outOfTouch; Boolean highPerformance; Boolean lowPerformance; Boolean withoutEnrolments; } class TutorshipLog extends DomainObject { Level motivation; WishesTutor wishesTutor; Boolean relativesSupport; Boolean countsWithSupport; Boolean difficultiesOrSpecialLimitations; Option optionNumberDegree; Integer howManyReunions; String annotations; String spaceToValidateStudentsRegistration; } class UnitFileTag extends DomainObject { String name; } class UnitSiteBanner extends DomainObject { String color; String link; UnitSiteBannerRepeatType repeatType; Integer weight; } class UnitSiteLink extends DomainObject { MultiLanguageString label; Integer linkOrder; String url; } class University extends DomainObject { String code; String name; } class User extends DomainObject { DateTime currentLoginDateTimeDateTime; String currentLoginHost; DateTime lastLoginDateTimeDateTime; DateTime logoutDateTime; String lastLoginHost; String userUId; ByteArray privateKey; DateTime privateKeyCreation; DateTime privateKeyValidity; } class WrittenEvaluationEnrolment extends DomainObject { } class accessControl.PersistentGroupMembers extends DomainObject { String name; PersistentGroupMembersType type; } class accounting.Account extends DomainObject { AccountType accountType; DateTime creationDate; } class accounting.AccountingTransaction extends DomainObject { } class accounting.AccountingTransactionDetail extends DomainObject { String comments; PaymentMode paymentMode; DateTime whenProcessed; DateTime whenRegistered; } class accounting.accountingTransactions.detail.SibsTransactionDetail extends accounting.AccountingTransactionDetail { String sibsCode; String sibsTransactionId; } class accounting.accountingTransactions.InstallmentAccountingTransaction extends accounting.AccountingTransaction { } class LibraryCardSystem{ Group higherClearenceGroup; Integer milleniumCodeCounter; } class accounting.CreditNote extends DomainObject { Integer number; CreditNoteState state; DateTime whenCreated; DateTime whenUpdated; Integer year; } class accounting.CreditNoteEntry extends DomainObject { Money amount; } class accounting.Entry extends DomainObject { EntryType entryType; Money originalAmount; } class accounting.Event extends DomainObject { String cancelJustification; EventState eventState; DateTime eventStateDate; EventType eventType; DateTime whenOccured; String createdBy; LocalDate whenSentLetter; } class accounting.AcademicEvent extends accounting.Event { } class accounting.ResidenceEvent extends accounting.Event { Money roomValue; String room; } class accounting.events.InstitutionAffiliationEvent extends accounting.Event { DateTime acceptedTermsAndConditions; } class accounting.events.InstitutionAffiliationEventTicket extends DomainObject { String ticket; DateTime generated; DateTime consumed; } class accounting.events.MicroPaymentEvent extends accounting.Event { Money amount; } class accounting.events.AnnualEvent extends accounting.AcademicEvent { } class accounting.events.AdministrativeOfficeFeeAndInsuranceEvent extends accounting.events.AnnualEvent { YearMonthDay paymentEndDate; } class accounting.events.PastAdministrativeOfficeFeeAndInsuranceEvent extends accounting.events.AdministrativeOfficeFeeAndInsuranceEvent { Money pastAdministrativeOfficeFeeAndInsuranceAmount; } class accounting.events.gratuity.GratuityEvent extends accounting.events.AnnualEvent { } class accounting.events.gratuity.DfaGratuityEvent extends accounting.events.gratuity.GratuityEvent { } class accounting.events.gratuity.StandaloneEnrolmentGratuityEvent extends accounting.events.gratuity.GratuityEvent { } class accounting.events.gratuity.GratuityEventWithPaymentPlan extends accounting.events.gratuity.GratuityEvent { } class accounting.events.gratuity.PastDegreeGratuityEvent extends accounting.events.gratuity.GratuityEvent { Money pastDegreeGratuityAmount; } class accounting.events.gratuity.SpecializationDegreeGratuityEvent extends accounting.events.gratuity.GratuityEvent { } class accounting.events.insurance.InsuranceEvent extends accounting.events.AnnualEvent { } class accounting.events.ImprovementOfApprovedEnrolmentEvent extends accounting.AcademicEvent { } class accounting.events.dfa.DFACandidacyEvent extends accounting.AcademicEvent { } class accounting.events.dfa.DfaRegistrationEvent extends accounting.AcademicEvent { } class accounting.events.specializationDegree.SpecializationDegreeRegistrationEvent extends accounting.AcademicEvent { } class accounting.events.serviceRequests.AcademicServiceRequestEvent extends accounting.AcademicEvent { } class accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent extends accounting.events.serviceRequests.AcademicServiceRequestEvent { } class accounting.events.serviceRequests.CertificateRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { } class accounting.events.serviceRequests.DuplicateRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { } class accounting.events.serviceRequests.PastCertificateRequestEvent extends accounting.events.serviceRequests.CertificateRequestEvent { Money pastAmount; } class accounting.events.serviceRequests.DegreeFinalizationCertificateRequestEvent extends accounting.events.serviceRequests.CertificateRequestEvent { } class accounting.events.serviceRequests.DeclarationRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { } class accounting.events.serviceRequests.RegistryDiplomaRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { } class accounting.events.serviceRequests.DiplomaRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { } class accounting.events.serviceRequests.PastDegreeDiplomaRequestEvent extends accounting.events.serviceRequests.DiplomaRequestEvent { Money pastAmount; } class accounting.events.serviceRequests.BolonhaDegreeDiplomaRequestEvent extends accounting.events.serviceRequests.DiplomaRequestEvent { } class accounting.events.serviceRequests.BolonhaMasterDegreeDiplomaRequestEvent extends accounting.events.serviceRequests.DiplomaRequestEvent { } class accounting.events.serviceRequests.BolonhaAdvancedFormationDiplomaRequestEvent extends accounting.events.serviceRequests.DiplomaRequestEvent { } class accounting.events.serviceRequests.BolonhaAdvancedSpecializationDiplomaRequestEvent extends accounting.events.serviceRequests.DiplomaRequestEvent { } class accounting.events.serviceRequests.StudentReingressionRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { } class accounting.events.serviceRequests.PastStudentReingressionRequestEvent extends accounting.events.serviceRequests.StudentReingressionRequestEvent { Money pastAmount; } class accounting.events.serviceRequests.EquivalencePlanRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { } class accounting.events.serviceRequests.PastEquivalencePlanRequestEvent extends accounting.events.serviceRequests.EquivalencePlanRequestEvent { Money pastAmount; } class accounting.events.serviceRequests.PastEquivalencePlanRevisionRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { Money pastAmount; } class accounting.events.serviceRequests.PhotocopyRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { } class accounting.events.serviceRequests.PastPhotocopyRequestEvent extends accounting.events.serviceRequests.PhotocopyRequestEvent { Money pastAmount; } class accounting.events.serviceRequests.PastCourseGroupChangeRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { Money pastAmount; } class accounting.events.serviceRequests.PastExtraExamRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { Money pastAmount; } class accounting.events.serviceRequests.PastFreeSolicitationAcademicRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { Money pastAmount; } class accounting.events.serviceRequests.PartialRegistrationRegimeRequestEvent extends accounting.events.serviceRequests.RegistrationAcademicServiceRequestEvent { } class accounting.events.serviceRequests.PhdAcademicServiceRequestEvent extends accounting.events.serviceRequests.AcademicServiceRequestEvent { } class accounting.events.serviceRequests.PhdRegistryDiplomaRequestEvent extends accounting.events.serviceRequests.PhdAcademicServiceRequestEvent { } class accounting.events.serviceRequests.PhdDiplomaRequestEvent extends accounting.events.serviceRequests.PhdAcademicServiceRequestEvent { } class accounting.events.serviceRequests.PhdFinalizationCertificateRequestEvent extends accounting.events.serviceRequests.PhdAcademicServiceRequestEvent { } class accounting.events.EnrolmentOutOfPeriodEvent extends accounting.AcademicEvent { Integer numberOfDelayDays; } class accounting.events.candidacy.IndividualCandidacyEvent extends accounting.AcademicEvent { } class accounting.events.candidacy.Over23IndividualCandidacyEvent extends accounting.events.candidacy.IndividualCandidacyEvent { } class accounting.events.candidacy.SecondCycleIndividualCandidacyEvent extends accounting.events.candidacy.IndividualCandidacyEvent { } class accounting.events.candidacy.DegreeCandidacyForGraduatedPersonEvent extends accounting.events.candidacy.IndividualCandidacyEvent { } class accounting.events.candidacy.DegreeChangeIndividualCandidacyEvent extends accounting.events.candidacy.IndividualCandidacyEvent { } class accounting.events.candidacy.DegreeTransferIndividualCandidacyEvent extends accounting.events.candidacy.IndividualCandidacyEvent { } class accounting.events.candidacy.StandaloneIndividualCandidacyEvent extends accounting.events.candidacy.IndividualCandidacyEvent { } class accounting.Exemption extends DomainObject { DateTime whenCreated; } class accounting.events.PenaltyExemption extends accounting.Exemption { } class accounting.events.AdministrativeOfficeFeeAndInsurancePenaltyExemption extends accounting.events.PenaltyExemption { } class accounting.events.ImprovementOfApprovedEnrolmentPenaltyExemption extends accounting.events.PenaltyExemption { } class accounting.events.gratuity.exemption.penalty.InstallmentPenaltyExemption extends accounting.events.PenaltyExemption { } class accounting.events.gratuity.GratuityExemption extends accounting.Exemption { } class accounting.events.gratuity.PercentageGratuityExemption extends accounting.events.gratuity.GratuityExemption { BigDecimal percentage; } class accounting.events.gratuity.ValueGratuityExemption extends accounting.events.gratuity.GratuityExemption { Money value; } class accounting.events.candidacy.SecondCycleIndividualCandidacyExemption extends accounting.Exemption { } class accounting.events.AdministrativeOfficeFeeAndInsuranceExemption extends accounting.Exemption { } class accounting.events.AdministrativeOfficeFeeExemption extends accounting.Exemption { } class accounting.events.InsuranceExemption extends accounting.Exemption { } class accounting.events.AcademicEventExemption extends accounting.Exemption { Money value; } class accounting.Discount extends DomainObject { DateTime whenCreated; String username; Money amount; } class accounting.Installment extends DomainObject { Money amount; YearMonthDay endDate; Integer installmentOrder; YearMonthDay startDate; DateTime whenCreated; } class accounting.installments.InstallmentWithPenalty extends accounting.Installment { BigDecimal penaltyPercentage; } class accounting.installments.InstallmentWithMonthlyPenalty extends accounting.installments.InstallmentWithPenalty { Integer maxMonthsToApplyPenalty; YearMonthDay whenStartToApplyPenalty; } class accounting.installments.PartialRegimeInstallment extends accounting.installments.InstallmentWithMonthlyPenalty { Boolean penaltyAppliable; BigDecimal ectsForAmount; } class accounting.installments.InstallmentForFirstTimeStudents extends accounting.installments.InstallmentWithMonthlyPenalty { Integer numberOfDaysToStartApplyingPenalty; } class accounting.PaymentCode extends DomainObject { String code; YearMonthDay endDate; String entityCode; Money maxAmount; Money minAmount; YearMonthDay startDate; PaymentCodeState state; PaymentCodeType type; DateTime whenCreated; DateTime whenUpdated; } class accounting.paymentCodes.AccountingEventPaymentCode extends accounting.PaymentCode { } class accounting.paymentCodes.InstallmentPaymentCode extends accounting.paymentCodes.AccountingEventPaymentCode { } class accounting.paymentCodes.IndividualCandidacyPaymentCode extends accounting.paymentCodes.AccountingEventPaymentCode { } class accounting.paymentCodes.GratuitySituationPaymentCode extends accounting.PaymentCode { } class accounting.paymentCodes.MasterDegreeInsurancePaymentCode extends accounting.PaymentCode { } class accounting.paymentCodes.rectorate.RectoratePaymentCode extends accounting.PaymentCode { } class accounting.PaymentCodeMapping extends DomainObject { } class accounting.PaymentPlan extends DomainObject { Boolean defaultPlan; DateTime whenCreated; } class accounting.ServiceAgreementTemplatePaymentPlan extends accounting.PaymentPlan { } class accounting.paymentPlans.GratuityPaymentPlan extends accounting.ServiceAgreementTemplatePaymentPlan { } class accounting.paymentPlans.FullGratuityPaymentPlan extends accounting.paymentPlans.GratuityPaymentPlan { } class accounting.paymentPlans.GratuityPaymentPlanForStudentsEnroledOnlyInSecondSemester extends accounting.paymentPlans.GratuityPaymentPlan { } class accounting.paymentPlans.FullGratuityPaymentPlanForPartialRegime extends accounting.paymentPlans.GratuityPaymentPlan { } class accounting.paymentPlans.GratuityPaymentPlanForPartialRegimeEnroledOnlyInSecondSemester extends accounting.paymentPlans.FullGratuityPaymentPlanForPartialRegime { } class accounting.paymentPlans.FullGratuityPaymentPlanForFirstTimeInstitutionStudents extends accounting.paymentPlans.GratuityPaymentPlan { } class accounting.paymentPlans.GratuityForStudentsInSecondCurricularYear extends accounting.paymentPlans.GratuityPaymentPlan { } class accounting.paymentPlans.GratuityForStudentsInSecondCurricularYearForPartialRegime extends accounting.paymentPlans.GratuityPaymentPlan { } class accounting.ServiceAgreementPaymentPlan extends accounting.PaymentPlan { } class accounting.paymentPlans.CustomGratuityPaymentPlan extends accounting.ServiceAgreementPaymentPlan { } class accounting.PostingRule extends DomainObject { DateTime creationDate; DateTime endDate; EventType eventType; DateTime startDate; } class accounting.postingRules.AdministrativeOfficeFeeAndInsurancePR extends accounting.PostingRule { } class accounting.postingRules.GenericSingleEntryTypePR extends accounting.PostingRule { EntryType entryType; } class accounting.postingRules.DuplicateRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.EnrolmentOutOfPeriodPR extends accounting.postingRules.GenericSingleEntryTypePR{ Money baseAmount; Money amountPerDay; Money maxAmount; } class accounting.postingRules.BaseAmountPlusAmountPerPagePR extends accounting.postingRules.GenericSingleEntryTypePR{ Money baseAmount; Money amountPerPage; } class accounting.postingRules.serviceRequests.PhotocopyRequestPR extends accounting.postingRules.BaseAmountPlusAmountPerPagePR { } class accounting.postingRules.serviceRequests.CourseLoadRequestPR extends accounting.postingRules.BaseAmountPlusAmountPerPagePR { Money amountFirstPage; } class accounting.postingRules.serviceRequests.ExternalCourseLoadRequestPR extends accounting.postingRules.serviceRequests.CourseLoadRequestPR { } class accounting.postingRules.serviceRequests.ProgramCertificateRequestPR extends accounting.postingRules.BaseAmountPlusAmountPerPagePR { Money amountFirstPage; } class accounting.postingRules.serviceRequests.ExternalProgramCertificateRequestPR extends accounting.postingRules.serviceRequests.ProgramCertificateRequestPR { } class accounting.postingRules.serviceRequests.ExamDateCertificateRequestPR extends accounting.postingRules.BaseAmountPlusAmountPerPagePR { } class accounting.postingRules.BaseAmountPlusAmountPerUnitPR extends accounting.postingRules.GenericSingleEntryTypePR { Money amountPerUnit; Money baseAmount; Money maximumAmount; } class accounting.postingRules.serviceRequests.CertificateRequestPR extends accounting.postingRules.BaseAmountPlusAmountPerUnitPR { Money amountPerPage; } class accounting.postingRules.serviceRequests.CertificateRequestWithoutBasePR extends accounting.postingRules.serviceRequests.CertificateRequestPR { } class accounting.postingRules.serviceRequests.EnrolmentCertificateRequestPR extends accounting.postingRules.serviceRequests.CertificateRequestPR { } class accounting.postingRules.serviceRequests.EnrolmentCertificateRequestWithCeilingInTotalAmountForUnitsPR extends accounting.postingRules.serviceRequests.EnrolmentCertificateRequestPR { } class accounting.postingRules.serviceRequests.StandaloneEnrolmentCertificateRequestPR extends accounting.postingRules.serviceRequests.CertificateRequestPR { } class accounting.postingRules.serviceRequests.ExtraCurricularEnrolmentCertificateRequestPR extends accounting.postingRules.serviceRequests.CertificateRequestPR { } class accounting.postingRules.serviceRequests.DegreeFinalizationCertificateRequestPR extends accounting.postingRules.serviceRequests.CertificateRequestPR { } class accounting.postingRules.serviceRequests.DegreeFinalizationCertificateRequestWithCeilingInTotalAmountForUnitsPR extends accounting.postingRules.serviceRequests.DegreeFinalizationCertificateRequestPR { } class accounting.postingRules.serviceRequests.ApprovementCertificateRequestPR extends accounting.postingRules.serviceRequests.CertificateRequestPR { } class accounting.postingRules.FixedAmountPR extends accounting.postingRules.GenericSingleEntryTypePR { Money fixedAmount; } class accounting.postingRules.FixedAmountWithPenaltyPR extends accounting.postingRules.FixedAmountPR { Money fixedAmountPenalty; } class accounting.postingRules.FixedAmountWithPenaltyFromDatePR extends accounting.postingRules.FixedAmountWithPenaltyPR { YearMonthDay whenToApplyFixedAmountPenalty; } class accounting.postingRules.AdministrativeOfficeFeePR extends accounting.postingRules.FixedAmountWithPenaltyFromDatePR { } class accounting.postingRules.dfa.DFACandidacyPR extends accounting.postingRules.FixedAmountWithPenaltyPR { } class accounting.postingRules.dfa.DfaRegistrationPR extends accounting.postingRules.FixedAmountWithPenaltyPR { } class accounting.postingRules.specializationDegree.SpecializationDegreeRegistrationPR extends accounting.postingRules.FixedAmountWithPenaltyPR { } class accounting.postingRules.serviceRequests.DeclarationRequestPR extends accounting.postingRules.FixedAmountPR { } class accounting.postingRules.serviceRequests.DiplomaRequestPR extends accounting.postingRules.FixedAmountPR { } class accounting.postingRules.candidacy.SecondCycleIndividualCandidacyPR extends accounting.postingRules.FixedAmountPR { } class accounting.postingRules.candidacy.SecondCycleIndividualCandidacyFixedValueMultipleDegreesPR extends accounting.postingRules.candidacy.SecondCycleIndividualCandidacyPR { } class accounting.postingRules.candidacy.Over23IndividualCandidacyPR extends accounting.postingRules.FixedAmountPR { } class accounting.postingRules.candidacy.StandaloneIndividualCandidacyPR extends accounting.postingRules.FixedAmountPR { } class accounting.postingRules.InsurancePR extends accounting.postingRules.FixedAmountPR { } class accounting.postingRules.PartialRegistrationRegimeRequestPR extends accounting.postingRules.FixedAmountPR { } class accounting.postingRules.serviceRequests.phd.PhdFinalizationCertificateRequestPR extends accounting.postingRules.FixedAmountPR { } class accounting.postingRules.ImprovementOfApprovedEnrolmentPR extends accounting.postingRules.GenericSingleEntryTypePR { Money fixedAmount; Money fixedAmountPenalty; } class accounting.postingRules.gratuity.DFAGratuityPR extends accounting.postingRules.GenericSingleEntryTypePR { BigDecimal dfaPartialAcceptedPercentage; Money dfaTotalAmount; } class accounting.postingRules.gratuity.DFAGratuityByAmountPerEctsPR extends accounting.postingRules.gratuity.DFAGratuityPR { Money dfaAmountPerEctsCredit; } class accounting.postingRules.gratuity.DFAGratuityByNumberOfEnrolmentsPR extends accounting.postingRules.gratuity.DFAGratuityPR { } class accounting.postingRules.gratuity.DFAGratuityByEnrolmentsPR extends accounting.postingRules.gratuity.DFAGratuityPR { Money dfaAmountPerEnrolment; } class accounting.postingRules.gratuity.SpecializationDegreeGratuityPR extends accounting.postingRules.GenericSingleEntryTypePR { BigDecimal specializationDegreePartialAcceptedPercentage; Money specializationDegreeTotalAmount; } class accounting.postingRules.gratuity.SpecializationDegreeGratuityByAmountPerEctsPR extends accounting.postingRules.gratuity.SpecializationDegreeGratuityPR { Money specializationDegreeAmountPerEctsCredit; } class accounting.postingRules.gratuity.GratuityWithPaymentPlanPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.gratuity.PastDegreeGratuityPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.gratuity.StandaloneEnrolmentGratuityPR extends accounting.postingRules.GenericSingleEntryTypePR { BigDecimal ectsForYear; BigDecimal gratuityFactor; BigDecimal ectsFactor; } class accounting.postingRules.serviceRequests.EquivalencePlanRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { Money amountPerUnit; Money maximumAmount; } class accounting.postingRules.PastAdministrativeOfficeFeeAndInsurancePR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.serviceRequests.PastCertificateRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.serviceRequests.PastDegreeDiplomaRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.serviceRequests.PastPhotocopyRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.serviceRequests.PastStudentReingressionRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.serviceRequests.PastEquivalencePlanRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.serviceRequests.PastEquivalencePlanRevisionRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.serviceRequests.PastCourseGroupChangeRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.serviceRequests.PastExtraExamRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.serviceRequests.PastFreeSolicitationAcademicRequestPR extends accounting.postingRules.GenericSingleEntryTypePR { } class accounting.postingRules.candidacy.DegreeCandidacyForGraduatedPersonPR extends accounting.postingRules.GenericSingleEntryTypePR { Money amountForInstitutionStudent; Money amountForExternalStudent; } class accounting.postingRules.candidacy.DegreeChangeIndividualCandidacyPR extends accounting.postingRules.GenericSingleEntryTypePR { Money amountForInstitutionStudent; Money amountForExternalStudent; } class accounting.postingRules.candidacy.DegreeTransferIndividualCandidacyPR extends accounting.postingRules.GenericSingleEntryTypePR { Money amountForInstitutionStudent; Money amountForExternalStudent; } class accounting.postingRules.ResidencePR extends accounting.postingRules.GenericSingleEntryTypePR { Money penaltyPerDay; } class accounting.postingRules.InstitutionAccountCreditPR extends accounting.postingRules.GenericSingleEntryTypePR; class accounting.postingRules.MicroPaymentPR extends accounting.postingRules.GenericSingleEntryTypePR; class accounting.Receipt extends DomainObject { Integer number; String numberSeries; ReceiptState state; YearMonthDay receiptDate; DateTime whenCreated; DateTime whenUpdated; Integer year; String contributorName; } class accounting.ReceiptPrintVersion extends DomainObject { DateTime whenCreated; } class accounting.ServiceAgreement extends DomainObject { DateTime creationDate; } class accounting.ServiceAgreementTemplate extends DomainObject { DateTime creationDate; } class accounting.serviceAgreementTemplates.AdministrativeOfficeServiceAgreementTemplate extends accounting.ServiceAgreementTemplate { } class accounting.serviceAgreementTemplates.DegreeCurricularPlanServiceAgreementTemplate extends accounting.ServiceAgreementTemplate { } class accounting.serviceAgreementTemplates.UnitServiceAgreementTemplate extends accounting.ServiceAgreementTemplate { } class accounting.serviceAgreements.DegreeCurricularPlanServiceAgreement extends accounting.ServiceAgreement { } class accounting.SibsPaymentFileProcessReport extends DomainObject { Money administrativeOfficeTaxTotalAmount; Money afterGraduationInsuranceTotalAmount; Money bolonhaDegreeGratuityTotalAmount; Money bolonhaMasterDegreeGratuityTotalAmount; Money degreeGratuityTotalAmount; Money dfaGratuityTotalAmount; Integer fileVersion; String filename; Money graduationInsuranceTotalAmount; Money integratedBolonhaMasterDegreeGratuityTotalAmount; Money integratedMasterDegreeGratuityTotalAmount; Money masterDegreeGratuityTotalAmount; Money phdGratuityTotalAmount; Money specializationGratuityTotalAmount; Money totalCost; Money transactionsTotalAmount; Money residencePayment; Money degreeChangeIndividualCandidacyAmount; Money degreeTransferIndividualCandidacyAmount; Money secondCycleIndividualCandidacyAmount; Money degreeCandidacyForGraduatedPersonAmount; Money standaloneEnrolmentGratuityEventAmount; Money over23IndividualCandidacyEventAmount; Money institutionAffiliationEventAmount; Money phdProgramCandidacyEventAmount; Money rectorateAmount; DateTime whenProcessed; YearMonthDay whenProcessedBySibs; } class accounting.events.ExemptionJustification extends DomainObject { String reason; } class accounting.events.PenaltyExemptionJustification extends accounting.events.ExemptionJustification { PenaltyExemptionJustificationType penaltyExemptionJustificationType; } class accounting.events.penaltyExemptionJustifications.PenaltyExemptionJustificationByDispatch extends accounting.events.PenaltyExemptionJustification { YearMonthDay penaltyExemptionDispatchDate; } class accounting.events.gratuity.GratuityExemptionJustification extends accounting.events.ExemptionJustification { GratuityExemptionJustificationType gratuityExemptionJustificationType; } class accounting.events.gratuity.GratuityExemptionJustificationByDispatch extends accounting.events.gratuity.GratuityExemptionJustification { YearMonthDay gratuityExemptionDispatchDate; } class accounting.events.candidacy.SecondCycleIndividualCandidacyExemptionJustification extends accounting.events.ExemptionJustification { CandidacyExemptionJustificationType candidacyExemptionJustificationType; } class accounting.events.AdministrativeOfficeFeeAndInsuranceExemptionJustification extends accounting.events.ExemptionJustification { AdministrativeOfficeFeeAndInsuranceExemptionJustificationType justificationType; } class accounting.events.AdministrativeOfficeFeeAndInsuranceExemptionJustificationByDispatch extends accounting.events.AdministrativeOfficeFeeAndInsuranceExemptionJustification { YearMonthDay dispatchDate; } class accounting.events.InsuranceExemptionJustification extends accounting.events.ExemptionJustification { InsuranceExemptionJustificationType justificationType; } class accounting.events.InsuranceExemptionJustificationByDispatch extends accounting.events.InsuranceExemptionJustification { YearMonthDay dispatchDate; } class accounting.events.serviceRequests.AcademicEventExemptionJustification extends accounting.events.ExemptionJustification { AcademicEventJustificationType justificationType; LocalDate dispatchDate; } class administrativeOffice.AdministrativeOffice extends DomainObject { AdministrativeOfficeType administrativeOfficeType; } class candidacy.Candidacy extends DomainObject { Integer number; YearMonthDay startDate; } class candidacy.CandidacyDocument extends DomainObject { String documentDescription; } class candidacy.CandidacySituation extends DomainObject { String remarks; DateTime situationDate; } class candidacy.AdmittedCandidacySituation extends candidacy.CandidacySituation { } class candidacy.CancelledCandidacySituation extends candidacy.CandidacySituation { } class candidacy.NotAdmittedCandidacySituation extends candidacy.CandidacySituation { } class candidacy.PreCandidacySituation extends candidacy.CandidacySituation { } class candidacy.RegisteredCandidacySituation extends candidacy.CandidacySituation { } class candidacy.StandByCandidacySituation extends candidacy.CandidacySituation { } class candidacy.StandByConfirmedDataCandidacySituation extends candidacy.CandidacySituation { } class candidacy.StandByFilledDataCandidacySituation extends candidacy.CandidacySituation { } class candidacy.SubstituteCandidacySituation extends candidacy.CandidacySituation { Integer candidacyOrder; } class candidacy.StudentCandidacy extends candidacy.Candidacy { String contigent; Double entryGrade; EntryPhase entryPhase; Ingression ingression; Boolean applyForResidence; String notesAboutResidenceAppliance; StudentPersonalDataAuthorizationChoice studentPersonalDataAuthorizationChoice; StudentPersonalDataAuthorizationChoice studentPersonalDataStudentsAssociationAuthorization; Boolean dislocatedFromPermanentResidence; Integer placingOption; GrantOwnerType grantOwnerType; Integer numberOfCandidaciesToHigherSchool; Integer numberOfFlunksOnHighSchool; AcademicalInstitutionType highSchoolType; MaritalStatus maritalStatus; ProfessionType professionType; ProfessionalSituationConditionType professionalCondition; SchoolLevelType motherSchoolLevel; ProfessionType motherProfessionType; ProfessionalSituationConditionType motherProfessionalCondition; SchoolLevelType fatherSchoolLevel; ProfessionType fatherProfessionType; ProfessionalSituationConditionType fatherProfessionalCondition; SchoolLevelType spouseSchoolLevel; ProfessionType spouseProfessionType; ProfessionalSituationConditionType spouseProfessionalCondition; Boolean firstTimeCandidacy; } class candidacy.DFACandidacy extends candidacy.StudentCandidacy { } class candidacy.DegreeCandidacy extends candidacy.StudentCandidacy { } class candidacy.IMDCandidacy extends candidacy.StudentCandidacy { } class candidacy.MDCandidacy extends candidacy.StudentCandidacy { } class candidacy.SDCandidacy extends candidacy.StudentCandidacy { } class candidacy.degree.ShiftDistribution extends DomainObject { } class candidacy.degree.ShiftDistributionEntry extends DomainObject { Integer abstractStudentNumber; Boolean distributed; } class classProperties.GeneralClassProperty extends DomainObject { String nameString; String valueString; } class classProperties.ExecutionCourseProperty extends classProperties.GeneralClassProperty { } class contacts.PartyContact extends DomainObject { Boolean defaultContact; PartyContactType type; DateTime lastModifiedDate; Boolean visibleToPublic (REQUIRED); Boolean visibleToStudents (REQUIRED); Boolean visibleToTeachers (REQUIRED); Boolean visibleToEmployees (REQUIRED); Boolean visibleToAlumni (REQUIRED); Boolean active; } class contacts.EmailAddress extends contacts.PartyContact { String value (REQUIRED); } class contacts.MobilePhone extends contacts.PartyContact { String number (REQUIRED); } class contacts.Phone extends contacts.PartyContact { String number (REQUIRED); } class contacts.PhysicalAddress extends contacts.PartyContact { String address; String area; String areaCode; String areaOfAreaCode; String districtOfResidence; String districtSubdivisionOfResidence; String parishOfResidence; } class contacts.WebAddress extends contacts.PartyContact { String url (REQUIRED); } class contacts.PartyContactValidation extends DomainObject { PartyContactValidationState state (REQUIRED); DateTime requestDate; DateTime lastChangeDate; String token; Integer tries; Boolean toBeDefault; } class contacts.EmailValidation extends contacts.PartyContactValidation { } class contacts.PhoneValidation extends contacts.PartyContactValidation { } class contacts.PhysicalAddressValidation extends contacts.PartyContactValidation { String description; } class contacts.PhysicalAddressValidationFile extends File { } class credits.CreditLine extends DomainObject { } class credits.DatePeriodBaseCreditLine extends credits.CreditLine { LocalDate end; LocalDate start; } class credits.ManagementPositionCreditLine extends credits.DatePeriodBaseCreditLine { Double credits; String position; } class credits.OtherTypeCreditLine extends credits.CreditLine { Double credits; String reason; } class curricularPeriod.CurricularPeriod extends DomainObject { Integer childOrder; AcademicPeriod academicPeriod; } class curricularRules.CurricularRule extends DomainObject { CurricularRuleType curricularRuleType; } class curricularRules.CompositeRule extends curricularRules.CurricularRule { LogicOperator compositeRuleType; } class curricularRules.AndRule extends curricularRules.CompositeRule { } class curricularRules.OrRule extends curricularRules.CompositeRule { } class curricularRules.NotRule extends curricularRules.CurricularRule { } class curricularRules.Rule extends curricularRules.CurricularRule { } class curricularRules.AnyCurricularCourse extends curricularRules.Rule { DegreeType bolonhaDegreeType; Double credits; Integer curricularPeriodOrder; Integer maximumYear; Integer minimumYear; Double minimumCredits; Double maximumCredits; } class curricularRules.CreditsLimit extends curricularRules.Rule { Double maximumCredits; Double minimumCredits; } class curricularRules.DegreeModulesSelectionLimit extends curricularRules.Rule { Integer maximumLimit; Integer minimumLimit; } class curricularRules.EnrolmentToBeApprovedByCoordinator extends curricularRules.Rule { } class curricularRules.Exclusiveness extends curricularRules.Rule { } class curricularRules.EvenOddRule extends curricularRules.Rule { Integer curricularPeriodOrder; AcademicPeriod academicPeriod; Boolean even; } class curricularRules.MaximumNumberOfCreditsForEnrolmentPeriod extends curricularRules.Rule { } class curricularRules.MinimumNumberOfCreditsToEnrol extends curricularRules.Rule { Double minimumCredits; } class curricularRules.PrecedenceRule extends curricularRules.Rule { Integer curricularPeriodOrder; AcademicPeriod academicPeriod; } class curricularRules.RestrictionBetweenDegreeModules extends curricularRules.PrecedenceRule { Double minimumCredits; } class curricularRules.RestrictionDoneDegreeModule extends curricularRules.PrecedenceRule { } class curricularRules.RestrictionEnroledDegreeModule extends curricularRules.PrecedenceRule { } class degree.enrollment.NotNeedToEnrollInCurricularCourse extends DomainObject { } class degree.finalProject.TeacherDegreeFinalProjectStudent extends DomainObject { Double percentage; } class degreeStructure.CompetenceCourseInformation extends DomainObject { String acronym; Boolean basic; BibliographicReferences bibliographicReferences; CompetenceCourseLevel competenceCourseLevel; String evaluationMethod; String evaluationMethodEn; String name; String nameEn; String objectives; String objectivesEn; String program; String programEn; degreeStructure.RegimeType regime; } class degreeStructure.CompetenceCourseInformationChangeRequest extends DomainObject { String justification; Boolean approved; String name; String nameEn; degreeStructure.RegimeType regime; String objectives; String objectivesEn; String program; String programEn; String evaluationMethod; String evaluationMethodEn; CompetenceCourseLevel competenceCourseLevel; Double theoreticalHours; Double problemsHours; Double laboratorialHours; Double seminaryHours; Double fieldWorkHours; Double trainingPeriodHours; Double tutorialOrientationHours; Double autonomousWorkHours; Double ectsCredits; Double secondTheoreticalHours; Double secondProblemsHours; Double secondLaboratorialHours; Double secondSeminaryHours; Double secondFieldWorkHours; Double secondTrainingPeriodHours; Double secondTutorialOrientationHours; Double secondAutonomousWorkHours; Double secondEctsCredits; BibliographicReferences bibliographicReferences; } class degreeStructure.CompetenceCourseLoad extends DomainObject { Double autonomousWorkHours; AcademicPeriod academicPeriod; Double ectsCredits; Double fieldWorkHours; Double laboratorialHours; Integer loadOrder; Double problemsHours; Double seminaryHours; Double theoreticalHours; Double trainingPeriodHours; Double tutorialOrientationHours; } class degreeStructure.EctsTableIndex extends DomainObject { AcademicInterval year (REQUIRED); DateTime processingDate; } class degreeStructure.EctsConversionTable extends DomainObject { EctsComparabilityTable ectsTable; AcademicInterval year; } class degreeStructure.EctsCompetenceCourseConversionTable extends degreeStructure.EctsConversionTable { } class degreeStructure.EctsCurricularYearConversionTable extends degreeStructure.EctsConversionTable { } class degreeStructure.EctsInstitutionConversionTable extends degreeStructure.EctsConversionTable { } class degreeStructure.EctsDegreeByCurricularYearConversionTable extends degreeStructure.EctsCurricularYearConversionTable { } class degreeStructure.EctsInstitutionByCurricularYearConversionTable extends degreeStructure.EctsCurricularYearConversionTable { CycleType cycle; } class degreeStructure.EctsGraduationGradeConversionTable extends degreeStructure.EctsConversionTable { EctsComparabilityPercentages percentages; CycleType cycle; } class degreeStructure.EctsDegreeGraduationGradeConversionTable extends degreeStructure.EctsGraduationGradeConversionTable { } class degreeStructure.EctsCycleGraduationGradeConversionTable extends degreeStructure.EctsGraduationGradeConversionTable { } class degreeStructure.Context extends DomainObject { Integer childOrder; } class degreeStructure.DegreeModule extends DomainObject { String acronym; String code; String name; String nameEn; } class CurricularCourse extends degreeStructure.DegreeModule { Boolean basic; Double credits; CurricularCourseExecutionScope curricularCourseExecutionScope; CurricularStage curricularStage; Double ectsCredits; Boolean enrollmentAllowed; Integer enrollmentWeigth; GradeScale gradeScale; Double labHours; Boolean mandatory; Boolean mandatoryEnrollment; Integer maximumValueForAcumulatedEnrollments; Integer minimumValueForAcumulatedEnrollments; Double praticalHours; String prerequisites; String prerequisitesEn; degreeStructure.RegimeType regimeType; Double theoPratHours; Double theoreticalHours; CurricularCourseType type; Double weigth; } class degreeStructure.OptionalCurricularCourse extends CurricularCourse { } class degreeStructure.CourseGroup extends degreeStructure.DegreeModule { } class degreeStructure.BranchCourseGroup extends degreeStructure.CourseGroup { BranchType branchType; } class degreeStructure.CycleCourseGroup extends degreeStructure.CourseGroup { CycleType cycleType; MultiLanguageString graduateTitleSuffix; } class degreeStructure.RootCourseGroup extends degreeStructure.CourseGroup { } class degreeStructure.CycleCourseGroupInformation extends DomainObject { MultiLanguageString graduatedTitle; } class finalDegreeWork.FinalDegreeWorkGroup extends DomainObject { } class finalDegreeWork.GroupProposal extends DomainObject { Integer orderOfPreference; } class finalDegreeWork.GroupStudent extends DomainObject { } class finalDegreeWork.Proposal extends DomainObject { String companionMail; String companionName; Integer companionPhone; String companyAdress; String companyName; Integer coorientatorsCreditsPercentage; DegreeType degreeType; String deliverable; String description; String framing; String location; Integer maximumNumberOfGroupElements; Integer minimumNumberOfGroupElements; String objectives; String observations; Integer orientatorsCreditsPercentage; Integer proposalNumber; String requirements; FinalDegreeWorkProposalStatus status; String title; String url; } class finalDegreeWork.Scheduleing extends DomainObject { Boolean allowSimultaneousCoorientationAndCompanion; Boolean attributionByTeachers; Boolean allowCandaciesOnlyForStudentsWithADissertationEnrolment; Integer currentProposalNumber; YearMonthDay endOfCandidacyPeriodDateYearMonthDay; HourMinuteSecond endOfCandidacyPeriodTimeHourMinuteSecond; YearMonthDay endOfProposalPeriodDateYearMonthDay; HourMinuteSecond endOfProposalPeriodTimeHourMinuteSecond; Integer maximumNumberOfProposalsPerPerson; Integer maximumCurricularYearToCountCompletedCourses; Integer maximumNumberOfProposalCandidaciesPerGroup; Integer maximumNumberOfStudents; Integer minimumCompletedCurricularYear; Integer minimumNumberOfCompletedCourses; Integer minimumNumberOfStudents; Integer minimumCompletedCreditsFirstCycle; Integer minimumCompletedCreditsSecondCycle; YearMonthDay startOfCandidacyPeriodDateYearMonthDay; HourMinuteSecond startOfCandidacyPeriodTimeHourMinuteSecond; YearMonthDay startOfProposalPeriodDateYearMonthDay; HourMinuteSecond startOfProposalPeriodTimeHourMinuteSecond; } class functionalities.AvailabilityPolicy extends DomainObject { String contentId; } class functionalities.GroupAvailability extends functionalities.AvailabilityPolicy { Group targetGroup; } class functionalities.ExpressionGroupAvailability extends functionalities.GroupAvailability { String expression; } class gaugingTests.physics.GaugingTestResult extends DomainObject { String cfString; Integer correct; String p1; String p10; String p11; String p12; String p13; String p14; String p15; String p16; String p17; String p18; String p19; String p2; String p20; String p21; String p22; String p23; String p24; String p25; String p26; String p27; String p28; String p3; String p4; String p5; String p6; String p7; String p8; String p9; Integer test; Integer unanswered; Integer wrong; } class gesdis.CourseHistoric extends DomainObject { Integer approved; String curricularYear; Integer enrolled; Integer evaluated; Integer semester; } class gesdis.CourseReport extends DomainObject { DateTime lastModificationDateDateTime; String report; } class gesdis.StudentCourseReport extends DomainObject { DateTime lastModificationDateDateTime; String strongPoints; String studentReport; String weakPoints; } class grant.contract.GrantContract extends DomainObject { Integer contractNumber; YearMonthDay dateAcceptTermYearMonthDay; String endContractMotive; } class grant.contract.GrantContractMovement extends DomainObject { YearMonthDay arrivalDateYearMonthDay; YearMonthDay departureDateYearMonthDay; String location; } class grant.contract.GrantContractRegime extends DomainObject { YearMonthDay dateBeginContractYearMonthDay; YearMonthDay dateDispatchCCYearMonthDay; YearMonthDay dateDispatchCDYearMonthDay; YearMonthDay dateEndContractYearMonthDay; YearMonthDay dateSendDispatchCCYearMonthDay; YearMonthDay dateSendDispatchCDYearMonthDay; Integer state; } class grant.contract.GrantInsurance extends DomainObject { YearMonthDay dateBeginInsuranceYearMonthDay; YearMonthDay dateEndInsuranceYearMonthDay; Double totalValue; } class grant.contract.GrantOrientationTeacher extends DomainObject { YearMonthDay beginDateYearMonthDay; YearMonthDay endDateYearMonthDay; } class grant.contract.GrantPart extends DomainObject { Integer percentage; } class grant.contract.GrantPaymentEntity extends DomainObject { String designation; String number; } class grant.contract.GrantCostCenter extends grant.contract.GrantPaymentEntity { } class grant.contract.GrantProject extends grant.contract.GrantPaymentEntity { } class grant.contract.GrantSubsidy extends DomainObject { YearMonthDay dateBeginSubsidyYearMonthDay; YearMonthDay dateEndSubsidyYearMonthDay; Integer state; Double totalCost; Double value; String valueFullName; } class grant.contract.GrantType extends DomainObject { Double indicativeValue; Integer maxPeriodDays; Integer minPeriodDays; String name; String sigla; String source; LocalDate validUntil; } class grant.owner.GrantOwner extends DomainObject { Integer cardCopyNumber; YearMonthDay dateSendCGDYearMonthDay; Integer number; } class gratuity.masterDegree.SibsPaymentFile extends DomainObject { String filename; } class gratuity.masterDegree.SibsPaymentFileEntry extends DomainObject { Double payedValue; SibsPaymentStatus paymentStatus; SibsPaymentType paymentType; Integer studentNumber; DateTime transactionDateDateTime; Integer year; } class oldInquiries.InquiriesCourse extends DomainObject { Integer weeklyHoursSpentPercentage; Double studyDaysSpentInExamsSeason; Integer weeklyHoursSpentInClassesSeason; Long answerDuration; DateTime responseDateTime; InquiryNotAnsweredJustification notAnsweredJustification; String notAnsweredOtherJustification; Character approvationRatioClassification; Character arithmeticMeanClassification; Double classCoordination; Double contributionForGraduation; Character entryGradeClassification; Double evaluationMethodAdequation; Double globalAppreciation; Double onlineInfo; Double previousKnowledgeArticulation; Integer studentCurricularYear; Integer studentFirstEnrollment; Double studyElementsContribution; Integer weeklySpentHours; String classificationInThisCU; Boolean highWorkLoadReasonComplexProjects; Boolean highWorkLoadReasonExtenseProjects; Boolean highWorkLoadReasonManyProjects; Boolean highWorkLoadReasonLackOfPreviousPreparation; Boolean highWorkLoadReasonCurricularProgramExtension; Boolean highWorkLoadReasonLackOfAttendanceOfLessons; Boolean highWorkLoadReasonCuOrganizationProblems; Boolean highWorkLoadReasonPersonalOrTeamProblems; String highWorkLoadReasonOtherReasons; Integer previousKnowledgeEnoughToCUAttendance; Integer activityParticipation; Integer knowledgeAndComprehensionOfCU; Integer knowledgeApplicationOfCU; Integer criticSenseAndReflexiveSpirit; Integer cooperationAndComunicationCapacity; Integer autonomousLearningCapacity; Integer socialAndProfessionalContextAnalysis; Boolean studyMethodAttendToClasses; Boolean studyMethodSuggestedBibliography; Boolean studyMethodTeacherDocuments; Boolean studyMethodStudentDocuments; String studyMethodOther; Integer predictedProgramTeached; Integer wellStructuredOfCU; Integer goodGuidanceMaterial; Integer recomendendBibliographyImportance; Integer fairEvaluationMethods; Integer globalClassificationOfCU; } class oldInquiries.InquiriesRegistry extends DomainObject { InquiriesRegistryState state; Integer weeklyHoursSpentPercentage; Double studyDaysSpentInExamsSeason; } class oldInquiries.InquiriesRoom extends DomainObject { Integer environmentalConditions; Integer equipmentQuality; Integer spaceAdequation; } class oldInquiries.InquiriesStudentExecutionPeriod extends DomainObject { Boolean dontWantToRespond; Integer weeklyHoursSpentInClassesSeason; } class oldInquiries.InquiriesTeacher extends DomainObject { Double globalAppreciation; ShiftType shiftType; Integer studentAssiduity; Integer teacherAssiduity; Double teacherAssurance; Double teacherAvailability; Double teacherClarity; Double teacherInterestStimulation; Double teacherPunctuality; Double teacherReasoningStimulation; Integer classesFrequency; Boolean lowClassesFrequencyReasonSchedule; Boolean lowClassesFrequencyReasonTeacher; Boolean lowClassesFrequencyReasonContents; Boolean lowClassesFrequencyReasonFlunkeeStudent; Boolean lowClassesFrequencyReasonOther; Integer teacherAcomplishedScheduleAndActivities; Integer suitedClassesRythm; Integer teacherCommited; Integer teacherExposedContentsAtractively; Integer teacherShowedSecurity; Integer teacherExposedContentsClearly; Integer teacherStimulatedParticipation; Integer teacherOpenToClearDoubts; Integer teacherGlobalClassification; } class oldInquiries.teacher.TeachingInquiry extends DomainObject { Long answerDuration; DateTime responseDateTime; Integer loadAndClassTypeContributionToFullfilmentOfCUProgram; Integer teacherNumberSuitableForCUOperation; Integer establishedScheduleSuitable; String establishedScheduleNotSuitableReason; Integer availableInfrastructureSuitable; String availableInfrastructureSuitableReason; Integer studentsReadyForFollowingCU; Integer evaluationMethodSuitableForCUTeachingTypeAndObjective; Integer disturbingEventsInClasses; Boolean disturbingEventsInClassesReasonInfrastructure; Boolean disturbingEventsInClassesReasonLowAssiduity; Boolean disturbingEventsInClassesReasonIndiscipline; Boolean disturbingEventsInClassesReasonIntermediateEvaluations; String disturbingEventsInClassesDescription; String semesterStartAverageStudentNumberInTheorical; String semesterMiddleAverageStudentNumberInTheorical; String semesterEndAverageStudentNumberInTheorical; String semesterStartAverageStudentNumberInProblems; String semesterMiddleAverageStudentNumberInProblems; String semesterEndAverageStudentNumberInProblems; String semesterStartAverageStudentNumberInLabs; String semesterMiddleAverageStudentNumberInLabs; String semesterEndAverageStudentNumberInLabs; String semesterStartAverageStudentNumberInSeminary; String semesterMiddleAverageStudentNumberInSeminary; String semesterEndAverageStudentNumberInSeminary; String semesterStartAverageStudentNumberInProject; String semesterMiddleAverageStudentNumberInProject; String semesterEndAverageStudentNumberInProject; String semesterStartActiveAndInteressedStudentsRatioInTheorical; String semesterMiddleActiveAndInteressedStudentsRatioInTheorica; String semesterEndActiveAndInteressedStudentsRatioInTheorical; String semesterStartActiveAndInteressedStudentsRatioInProblems; String semesterMiddleActiveAndInteressedStudentsRatioInProblems; String semesterEndActiveAndInteressedStudentsRatioInProblems; String semesterStartActiveAndInteressedStudentsRatioInLabs; String semesterMiddleActiveAndInteressedStudentsRatioInLabs; String semesterEndActiveAndInteressedStudentsRatioInLabs; String semesterStartActiveAndInteressedStudentsRatioInSeminary; String semesterMiddleActiveAndInteressedStudentsRatioInSeminary; String semesterEndActiveAndInteressedStudentsRatioInSeminary; String semesterStartActiveAndInteressedStudentsRatioInProject; String semesterMiddleActiveAndInteressedStudentsRatioInProject; String semesterEndActiveAndInteressedStudentsRatioInProject; String activeAndInteressedStudentsRatio; Integer clarificationOfDoubtsOutsideClasses; Integer autonomousWork; Integer studentsPerformance; Integer classesAndOtherActivitiesFrequency; Integer classesAndOtherActivitiesPonctuality; Integer globalQualityOfTeachingInCU; Integer pedagogicalActivitiesDeveloped; String relativePedagogicalInitiatives; String generalCommentToCUOperation; Boolean reportDisclosureToAcademicComunity; Boolean resultsDisclosureToAcademicComunity; Integer numberOfExams; Integer numberOfTests; Integer numberOfQuizzesAndMiniTests; Integer numberOfElectronicQuizzes; Integer numberOfStudyVisitsOrOtherActivitiesReports; Integer numberOfWorksOrProjects; String teachingLanguage; String otherTeachingLanguage; Integer workLoadClassification; String workLoadClassificationReasons; Integer positionOfCUInStudentCurricularPlan; Integer comprehensionAndKnowledgeOfCU; Integer comprehensionApplicationOfCU; Integer criticalSenseAndReflexiveSpirit; Integer cooperationAndCommunicationCapacity; Integer increaseAutonoumousLearningCapacity; Integer socialAndProfessionalContextAnalysis; Integer globalClassificationOfThisCU; String weakPointsOfCUTeachingProcess; String strongPointsOfCUTeachingProcess; String finalCommentsAndImproovements; String negativeResultsResolutionAndImproovementPlanOfAction; Boolean responsibleTeacherReportDisclosureToAcademicComunity; } class oldInquiries.StudentInquiriesTeachingResult extends DomainObject { String headers; String rawValues; DateTime uploadDateTime; LocalDate resultsDate; ShiftType shiftType; Integer numberOfAnswers; Boolean unsatisfactoryResultsAssiduity; Boolean unsatisfactoryResultsPresencialLearning; Boolean unsatisfactoryResultsPedagogicalCapacity; Boolean unsatisfactoryResultsStudentInteraction; Boolean unsatisfactoryResultsAuditable; Boolean internalDisclosure; Boolean publicDisclosure; Boolean internalDegreeDisclosure; Boolean publicDegreeDisclosure; Integer number_P6_1; Double average_P6_1; Double standardDeviation_P6_1; Double p6_1_greater_3; Double perc_P6_1_1; Double perc_P6_1_2; Double perc_P6_1_3; Double perc_P6_1_4; Double perc_P6_1_5; Double perc_P6_1_6; Double perc_P6_1_7; Double p6_1_1_a; Double p6_1_1_b; Double p6_1_1_c; Double p6_1_1_d; Double p6_1_1_e; Integer number_P6_1_values; Double perc_P6_1_a; Double perc_P6_1_b; Double perc_P6_1_c; Double perc_P6_1_d; Double perc_P6_1_e; Integer number_P6_2; Double average_P6_2; Double standardDeviation_P6_2; Double perc_P6_2_1; Double perc_P6_2_2; Double perc_P6_2_3; Double perc_P6_2_4; Double perc_P6_2_5; Double perc_P6_2_6; Double perc_P6_2_7; Double perc_P6_2_8; Double perc_P6_2_9; Integer number_P6_3; Double average_P6_3; Double standardDeviation_P6_3; Double perc_P6_3_1; Double perc_P6_3_2; Double perc_P6_3_3; Double perc_P6_3_4; Double perc_P6_3_5; Double perc_P6_3_6; Double perc_P6_3_7; Double perc_P6_3_8; Double perc_P6_3_9; Integer number_P7_1; Double average_P7_1; Double standardDeviation_P7_1; Double perc_P7_1_1; Double perc_P7_1_2; Double perc_P7_1_3; Double perc_P7_1_4; Double perc_P7_1_5; Double perc_P7_1_6; Double perc_P7_1_7; Double perc_P7_1_8; Double perc_P7_1_9; Integer number_P7_2; Double average_P7_2; Double standardDeviation_P7_2; Double perc_P7_2_1; Double perc_P7_2_2; Double perc_P7_2_3; Double perc_P7_2_4; Double perc_P7_2_5; Double perc_P7_2_6; Double perc_P7_2_7; Double perc_P7_2_8; Double perc_P7_2_9; Integer number_P7_3; Double average_P7_3; Double standardDeviation_P7_3; Double perc_P7_3_1; Double perc_P7_3_2; Double perc_P7_3_3; Double perc_P7_3_4; Double perc_P7_3_5; Double perc_P7_3_6; Double perc_P7_3_7; Double perc_P7_3_8; Double perc_P7_3_9; Integer number_P7_4; Double average_P7_4; Double standardDeviation_P7_4; Double perc_P7_4_1; Double perc_P7_4_2; Double perc_P7_4_3; Double perc_P7_4_4; Double perc_P7_4_5; Double perc_P7_4_6; Double perc_P7_4_7; Double perc_P7_4_8; Double perc_P7_4_9; Integer number_P8_1; Double average_P8_1; Double standardDeviation_P8_1; Double perc_P8_1_1; Double perc_P8_1_2; Double perc_P8_1_3; Double perc_P8_1_4; Double perc_P8_1_5; Double perc_P8_1_6; Double perc_P8_1_7; Double perc_P8_1_8; Double perc_P8_1_9; Integer number_P8_2; Double average_P8_2; Double standardDeviation_P8_2; Double perc_P8_2_1; Double perc_P8_2_2; Double perc_P8_2_3; Double perc_P8_2_4; Double perc_P8_2_5; Double perc_P8_2_6; Double perc_P8_2_7; Double perc_P8_2_8; Double perc_P8_2_9; Integer number_P9; Double average_P9; Double standardDeviation_P9; Double perc_P9_1; Double perc_P9_2; Double perc_P9_3; } class oldInquiries.StudentInquiriesCourseResult extends DomainObject { String headers; String rawValues; DateTime uploadDateTime; LocalDate resultsDate; String courseResultsCoordinatorComment; DateTime courseResultsCoordinatorCommentDate; Integer numberOfEnrolled; Double evaluatedRatio; Double approvedRatio; Boolean availableToInquiry; Double validInitialFormAnswersNumber; Double validInitialFormAnswersRatio; Double validInquiryAnswersNumber; Double validInquiryAnswersRatio; Double noInquiryAnswersNumber; Double noInquiryAnswersRatio; Double invalidInquiryAnswersNumber; Double invalidInquiryAnswersRatio; Double gradeAverage; Boolean internalDisclosure; Boolean publicDisclosure; Boolean unsatisfactoryResultsEsfECTSCU; Boolean unsatisfactoryResultsCUOrganization; Boolean unsatisfactoryResultsCUEvaluation; Boolean auditCU; Double scheduleLoad; Double ects; Integer estimatedEctsNumber; Double estimatedEctsAverage; Double estimatedEctsStandardDeviation; Integer number_NHTA; Double average_NHTA; Double standardDeviation_NHTA; Integer number_perc_NHTA; Double average_perc_weeklyHours; Double standardDeviation_perc_NHTA; Integer number_NDE; Double average_NDE; Double standardDeviation_NDE; Double number_P1_1; Double perc_10_12; Double perc_13_14; Double perc_15_16; Double perc_17_18; Double perc_19_20; Double perc_flunked; Double perc_nonEvaluated; Double number_P1_2_a; Double perc__P1_2_a; Double number_P1_2_b; Double perc__P1_2_b; Double number_P1_2_c; Double perc__P1_2_c; Double number_P1_2_d; Double perc__P1_2_d; Double number_P1_2_e; Double perc__P1_2_e; Double number_P_1_2_f; Double perc__P1_2_f; Double number_P1_2_g; Double perc__P1_2_g; Integer number_P1_3; Double average_P1_3; Double standardDeviation_P1_3; Double perc_P1_3_1; Double perc_P1_3_2; Double perc_P1_3_3; Double perc_P1_3_4; Double perc_P1_3_5; Double perc_P1_3_6; Double perc_P1_3_7; Double perc_P1_3_8; Double perc_P1_3_9; Integer number_P1_4; Double average_P1_4; Double standardDeviation_P1_4; Double perc_P1_4_1; Double perc_P1_4_2; Double perc_P1_4_3; Integer number_P2_1; Double average_P2_1; Double standardDeviation_P2_1; Double perc_P2_1_0; Double perc_P2_1_1; Double perc_P2_1_2; Double perc_P2_1_3; Integer number_P2_2; Double average_P2_2; Double standardDeviation_P2_2; Double perc_P2_2_0; Double perc_P2_2_1; Double perc_P2_2_2; Double perc_P2_2_3; Integer number_P2_3; Double average_P2_3; Double standardDeviation_P2_3; Double perc_P2_3_0; Double perc_P2_3_1; Double perc_P2_3_2; Double perc_P2_3_3; Integer number_P2_4; Double average_P2_4; Double standardDeviation_P2_4; Double perc_P2_4_0; Double perc_P2_4_1; Double perc_P2_4_2; Double perc_P2_4_3; Integer number_P3_1; Double average_P3_1; Double standardDeviation_P3_1; Double perc_P3_1_1; Double perc_P3_1_2; Double perc_P3_1_3; Double perc_P3_1_4; Double perc_P3_1_5; Double perc_P3_1_6; Double perc_P3_1_7; Double perc_P3_1_8; Double perc_P3_1_9; Integer number_P3_2; Double average_P3_2; Double standardDeviation_P3_2; Double perc_P3_2_1; Double perc_P3_2_2; Double perc_P3_2_3; Double perc_P3_2_4; Double perc_P3_2_5; Double perc_P3_2_6; Double perc_P3_2_7; Double perc_P3_2_8; Double perc_P3_2_9; Integer number_P3_3; Double average_P3_3; Double standardDeviation_P3_3; Double perc_P3_3_1; Double perc_P3_3_2; Double perc_P3_3_3; Double perc_P3_3_4; Double perc_P3_3_5; Double perc_P3_3_6; Double perc_P3_3_7; Double perc_P3_3_8; Double perc_P3_3_9; Integer number_P3_4; Double average_P3_4; Double standardDeviation_P3_4; Double perc_P3_4_1; Double perc_P3_4_2; Double perc_P3_4_3; Double perc_P3_4_4; Double perc_P3_4_5; Double perc_P3_4_6; Double perc_P3_4_7; Double perc_P3_4_8; Double perc_P3_4_9; Integer number_P4; Double average_P4; Double standardDeviation_P4; Double perc_P4_1; Double perc_P4_2; Double perc_P4_3; Double perc_P4_4; Double perc_P4_5; Double perc_P4_6; Double perc_P4_7; Double perc_P4_8; Double perc_P4_9; Integer number_P5; Double average_P5; Double standardDeviation_P5; Double perc_P5_1; Double perc_P5_2; Double perc_P5_3; Double perc_P5_4; Double perc_P5_5; Double perc_P5_6; Double perc_P5_7; Double perc_P5_8; Double perc_P5_9; } class oldInquiries.InquiryResponsePeriod extends DomainObject { DateTime begin; DateTime end; String introduction; InquiryResponsePeriodType type; } class oldInquiries.OldInquiriesCoursesRes extends DomainObject { Double average2_2; Double average2_3; Double average2_4; Double average2_5; Double average2_6; String average2_7; Double average2_8; String courseCode; Integer curricularYear; Double deviation2_2; Double deviation2_3; Double deviation2_4; Double deviation2_5; Double deviation2_6; Double deviation2_8; Integer firstEnrollment; Integer gepCourseId; String gepCourseName; Integer gepExecutionYear; Integer inquiryId; Integer numAnswers2_2; Integer numAnswers2_3; Integer numAnswers2_4; Integer numAnswers2_5_number; Integer numAnswers2_5_text; Integer numAnswers2_6; Integer numAnswers2_7; Integer numAnswers2_8; Integer numberAnswers; Double numberApproved; Double numberEnrollments; Double numberEvaluated; Double representationQuota; Integer semester; Double tolerance2_2; Double tolerance2_3; Double tolerance2_4; Double tolerance2_5; Double tolerance2_6; Double tolerance2_8; } class oldInquiries.OldInquiriesSummary extends DomainObject { Double average2_2; Double average2_3; Double average2_4; Double average2_5; Double average2_6; String average2_7_interval; Double average2_7_numerical; Double average2_8; Double average3_10; Double average3_11; String average3_3_interval; Double average3_3_numerical; String average3_4_interval; Double average3_4_numerical; Double average3_5; Double average3_6; Double average3_7; Double average3_8; Double average3_9; Double average6_1; Double average6_2; Double average6_3; Double averageAppreciationCourse; Double averageAppreciationTeachers; String courseCode; Integer curricularYear; Double firstEnrollment; Integer gepCourseId; String gepCourseName; String gepDegreeName; Integer gepExecutionYear; Integer inquiryId; Integer numberAnswers; Integer numberApproved; Integer numberEnrollments; Integer numberEvaluated; Double representationQuota; Double roomAverage; Integer semester; } class oldInquiries.OldInquiriesTeachersRes extends DomainObject { String active; Double average3_10; Double average3_11; String average3_3; String average3_4; Double average3_5; Double average3_6; Double average3_7; Double average3_8; Double average3_9; String category; String classType; String classTypeLong; String courseCode; Integer curricularYear; Integer departmentCode; Double deviation3_10; Double deviation3_11; Double deviation3_3; Double deviation3_4; Double deviation3_5; Double deviation3_6; Double deviation3_7; Double deviation3_8; Double deviation3_9; Integer gepCourseId; String gepCourseName; Integer gepExecutionYear; Integer inquiryId; Integer mail; Integer numAnswers3_10; Integer numAnswers3_11; Integer numAnswers3_3; Integer numAnswers3_4; Integer numAnswers3_5; Integer numAnswers3_6; Integer numAnswers3_7; Integer numAnswers3_8; Integer numAnswers3_9; Integer semester; String teacherName; Integer teacherNumber; Double tolerance3_10; Double tolerance3_11; Double tolerance3_3; Double tolerance3_4; Double tolerance3_5; Double tolerance3_6; Double tolerance3_7; Double tolerance3_8; Double tolerance3_9; Integer totalNumberAnswers; } class EducationArea extends DomainObject { String code; String description; } class BusinessArea extends DomainObject { Integer level; String code; String description; } class Job extends DomainObject { String employerName; String city; LocalDate beginDate; LocalDate endDate; String position; JobApplicationType jobApplicationType; ContractType contractType; SalaryType salaryType; DateTime lastModifiedDate; Double salary; } class Alert extends DomainObject { DateTime whenCreated; MultiLanguageString subject; MultiLanguageString body; Boolean active; DateTime fireDate; } class log.CurriculumLineLog extends DomainObject { EnrolmentAction action; DateTime dateDateTime; String who; } class log.EnrolmentLog extends log.CurriculumLineLog { } class log.OptionalEnrolmentLog extends log.EnrolmentLog { } class log.DismissalLog extends log.CurriculumLineLog { String sourceDescription; BigDecimal credits; } class log.OptionalDismissalLog extends log.DismissalLog { } class log.CreditsDismissalLog extends log.DismissalLog { } class log.EnrolmentEvaluationLog extends DomainObject { String action; String who; String gradeValue; String gradeScale; String enrolmentEvaluationType; String enrolmentEvaluationState; String executionSemester; String curricularCourse; String examDate; String enrolmentEvaluationResponsible; String book; String page; String actionDate; } class log.FirstTimeCandidacyLog extends DomainObject { } class log.FirstTimeCandidacyLogEntry extends DomainObject { FirstTimeCandidacyStage stage; DateTime entryDate; } class material.PersonExtension extends DomainObject { YearMonthDay begin; YearMonthDay end; } class onlineTests.DistributedTest extends DomainObject { YearMonthDay beginDateDateYearMonthDay; HourMinuteSecond beginHourDateHourMinuteSecond; CorrectionAvailability correctionAvailability; YearMonthDay endDateDateYearMonthDay; HourMinuteSecond endHourDateHourMinuteSecond; Boolean imsFeedback; Integer numberOfQuestions; String testInformation; TestType testType; String title; String evaluationTitle; } class onlineTests.Metadata extends DomainObject { String author; String description; String difficulty; HourMinuteSecond learningTimeDateHourMinuteSecond; String level; String mainSubject; String metadataFile; String secondarySubject; Boolean visibility; } class onlineTests.Question extends DomainObject { Boolean visibility; String xmlFile; String xmlFileName; } class onlineTests.StudentTestLog extends DomainObject { DateTime dateDateTime; String event; String checksum; } class onlineTests.StudentTestQuestion extends DomainObject { CorrectionFormula correctionFormula; String itemId; String optionShuffle; Response response; Double testQuestionMark; Integer testQuestionOrder; Double testQuestionValue; } class onlineTests.Test extends DomainObject { DateTime creationDateDateTime; String information; DateTime lastModifiedDateDateTime; String title; } class onlineTests.TestChecksum extends DomainObject { String checksumCode; } class onlineTests.TestQuestion extends DomainObject { CorrectionFormula correctionFormula; Integer testQuestionOrder; Double testQuestionValue; } class onlineTests.TestScope extends DomainObject { String className; Integer keyClass; } class organizationalStructure.AccountabilityType extends DomainObject { MultiLanguageString typeName; AccountabilityTypeEnum type; } class organizationalStructure.Function extends organizationalStructure.AccountabilityType { YearMonthDay beginDateYearMonthDay; YearMonthDay endDateYearMonthDay; FunctionType functionType; Integer functionOrder; } class organizationalStructure.SharedFunction extends organizationalStructure.Function { BigDecimal credits; } class organizationalStructure.Accountability extends DomainObject { YearMonthDay beginDate; YearMonthDay endDate; } class organizationalStructure.Contract extends organizationalStructure.Accountability { } class organizationalStructure.EmployeeContract extends organizationalStructure.Contract { Boolean teacherContract; } class organizationalStructure.ExternalContract extends organizationalStructure.Contract { } class organizationalStructure.ResearchContract extends organizationalStructure.Contract { Boolean externalContract; } class organizationalStructure.ResearcherContract extends organizationalStructure.ResearchContract { } class organizationalStructure.ResearchScholarshipContract extends organizationalStructure.ResearchContract { } class organizationalStructure.ResearchTechnicalStaffContract extends organizationalStructure.ResearchContract { } class organizationalStructure.ResearchInternshipContract extends organizationalStructure.ResearchContract { } class organizationalStructure.Invitation extends organizationalStructure.Contract { } class organizationalStructure.PersonFunction extends organizationalStructure.Accountability { Double credits; } class organizationalStructure.PersonFunctionShared extends organizationalStructure.PersonFunction { BigDecimal percentage; } class organizationalStructure.ConnectionRule extends DomainObject { } class organizationalStructure.PartyType extends DomainObject { PartyTypeEnum type; } class organizationalStructure.PartySocialSecurityNumber extends DomainObject { String socialSecurityNumber; } class organizationalStructure.Party extends DomainObject { MultiLanguageString partyName; } class Person extends organizationalStructure.Party { String givenNames; String familyNames; YearMonthDay dateOfBirthYearMonthDay; String districtOfBirth; String districtSubdivisionOfBirth; String documentIdNumber; YearMonthDay emissionDateOfDocumentIdYearMonthDay; String emissionLocationOfDocumentId; YearMonthDay expirationDateOfDocumentIdYearMonthDay; String fiscalCode; Gender gender; IDDocumentType idDocumentType; MaritalStatus maritalStatus; String nameOfFather; String nameOfMother; String nickname; String parishOfBirth; String profession; String eidentifier; Integer numberOfValidationRequests; DateTime lastValidationRequestDate; Boolean disableSendEmails; } class PersonIdentificationDocumentExtraInfo extends DomainObject { DateTime registeredInSystemTimestamp; String value; } class IdentificationDocumentExtraDigit extends PersonIdentificationDocumentExtraInfo { } class IdentificationDocumentSeriesNumber extends PersonIdentificationDocumentExtraInfo { } class organizationalStructure.Unit extends organizationalStructure.Party { String acronym; String code; YearMonthDay beginDateYearMonthDay; Boolean canBeResponsibleOfSpaces; UnitClassification classification; YearMonthDay endDateYearMonthDay; String identificationCardLabel; } class organizationalStructure.ResidenceManagementUnit extends organizationalStructure.Unit { } class organizationalStructure.TutorUnit extends organizationalStructure.Unit { } class organizationalStructure.AdministrativeOfficeUnit extends organizationalStructure.Unit { } class organizationalStructure.AggregateUnit extends organizationalStructure.Unit { } class organizationalStructure.CompetenceCourseGroupUnit extends organizationalStructure.Unit { } class organizationalStructure.CountryUnit extends organizationalStructure.Unit { } class organizationalStructure.DegreeUnit extends organizationalStructure.Unit { } class organizationalStructure.DepartmentUnit extends organizationalStructure.Unit { } class organizationalStructure.PedagogicalCouncilUnit extends organizationalStructure.Unit { } class organizationalStructure.PlanetUnit extends organizationalStructure.Unit { } class organizationalStructure.ResearchUnit extends organizationalStructure.Unit { } class organizationalStructure.ManagementCouncilUnit extends organizationalStructure.Unit { } class organizationalStructure.ScientificAreaUnit extends organizationalStructure.Unit { } class organizationalStructure.ScientificCouncilUnit extends organizationalStructure.Unit { } class organizationalStructure.SectionUnit extends organizationalStructure.Unit { } class organizationalStructure.AcademicalInstitutionUnit extends organizationalStructure.Unit { Boolean official; AcademicalInstitutionType institutionType; } class organizationalStructure.SchoolUnit extends organizationalStructure.AcademicalInstitutionUnit { } class organizationalStructure.UniversityUnit extends organizationalStructure.AcademicalInstitutionUnit { } class organizationalStructure.UnitCostCenterCode extends DomainObject { Integer costCenterCode; } class organizationalStructure.UnitName extends DomainObject { Boolean isExternalUnit; String name; } class organizationalStructure.UnitNamePart extends DomainObject { String namePart; } class organizationalStructure.UnitAcronym extends DomainObject { String acronym; } class parking.NewParkingDocument extends DomainObject { NewParkingDocumentType parkingDocumentType; } class parking.ParkingGroup extends DomainObject { String groupName; MultiLanguageString groupDescription; } class parking.ParkingParty extends DomainObject { Boolean acceptedRegulation; Boolean authorized; DateTime cardEndDate; Long cardNumber; DateTime cardStartDate; DocumentDeliveryType driverLicenseDeliveryType; ParkingDocumentState driverLicenseDocumentState; ParkingDocumentState firstCarDeclarationDocumentState; ParkingDocumentState firstCarInsuranceDocumentState; ParkingDocumentState firstCarOwnerIdDocumentState; ParkingDocumentState firstCarPropertyRegistryDocumentState; Integer phdNumber; ParkingDocumentState secondCarDeclarationDocumentState; ParkingDocumentState secondCarInsuranceDocumentState; ParkingDocumentState secondCarOwnerIdDocumentState; ParkingDocumentState secondCarPropertyRegistryDocumentState; String notes; RoleType requestedAs; Integer usedNumber; } class parking.ParkingPartyHistory extends DomainObject { DateTime cardEndDate; DateTime cardStartDate; Long cardNumber; Integer phdNumber; String notes; RoleType requestedAs; Integer usedNumber; DateTime historyDate; Boolean onlineRequest; } class parking.ParkingRequest extends DomainObject { DateTime creationDate; DocumentDeliveryType driverLicenseDeliveryType; ParkingDocumentState driverLicenseDocumentState; String email; ParkingDocumentState firstCarDeclarationDocumentState; ParkingDocumentState firstCarInsuranceDocumentState; ParkingDocumentState firstCarOwnerIdDocumentState; ParkingDocumentState firstCarPropertyRegistryDocumentState; Boolean limitlessAccessCard; String mobile; String note; ParkingRequestState parkingRequestState; String phone; RoleType requestedAs; ParkingDocumentState secondCarDeclarationDocumentState; ParkingDocumentState secondCarInsuranceDocumentState; ParkingDocumentState secondCarOwnerIdDocumentState; ParkingDocumentState secondCarPropertyRegistryDocumentState; ParkingRequestType parkingRequestType; } class parking.ParkingRequestPeriod extends DomainObject { DateTime beginDate; DateTime endDate; } class parking.Vehicle extends DomainObject { DocumentDeliveryType authorizationDeclarationDeliveryType; DocumentDeliveryType insuranceDeliveryType; DocumentDeliveryType ownerIdDeliveryType; String plateNumber; DocumentDeliveryType propertyRegistryDeliveryType; String vehicleMake; } class person.IdDocument extends DomainObject { String value; } class person.IdDocumentTypeObject extends DomainObject { IDDocumentType value; } class person.PersonName extends DomainObject { Boolean isExternalPerson; String name; } class person.PersonNamePart extends DomainObject { String namePart; } class precedences.Precedence extends DomainObject { } class precedences.Restriction extends DomainObject { } class precedences.RestrictionByCurricularCourse extends precedences.Restriction { } class precedences.RestrictionDoneCurricularCourse extends precedences.RestrictionByCurricularCourse { } class precedences.RestrictionDoneOrHasEverBeenEnrolledInCurricularCourse extends precedences.RestrictionDoneCurricularCourse { } class precedences.RestrictionHasEverBeenOrIsCurrentlyEnrolledInCurricularCourse extends precedences.RestrictionDoneOrHasEverBeenEnrolledInCurricularCourse { } class precedences.RestrictionHasEverBeenOrWillBeAbleToBeEnrolledInCurricularCourse extends precedences.RestrictionDoneOrHasEverBeenEnrolledInCurricularCourse { } class precedences.RestrictionNotDoneCurricularCourse extends precedences.RestrictionByCurricularCourse { } class precedences.RestrictionNotEnrolledInCurricularCourse extends precedences.RestrictionNotDoneCurricularCourse { } class precedences.RestrictionByNumberOfCurricularCourses extends precedences.Restriction { Integer numberOfCurricularCourses; } class precedences.RestrictionByNumberOfDoneCurricularCourses extends precedences.RestrictionByNumberOfCurricularCourses { } class precedences.RestrictionPeriodToApply extends precedences.Restriction { PeriodToApplyRestriction periodToApplyRestriction; } class projectsManagement.ProjectAccess extends DomainObject { DateTime beginDateTime; Boolean costCenter; DateTime endDateTime; String keyProject; Integer keyProjectCoordinator; Boolean itProject; BackendInstance instance; } class protocols.Protocol extends DomainObject { Boolean active; String observations; ProtocolAction protocolAction; String protocolNumber; Boolean renewable; String scientificAreas; YearMonthDay signedDate; } class protocols.ProtocolHistory extends DomainObject { YearMonthDay beginDate; YearMonthDay endDate; } class reimbursementGuide.ReimbursementGuide extends DomainObject { YearMonthDay creationYearMonthDay; Integer number; } class reimbursementGuide.ReimbursementGuideEntry extends DomainObject { String justification; BigDecimal valueBigDecimal; } class reimbursementGuide.ReimbursementGuideSituation extends DomainObject { YearMonthDay modificationYearMonthDay; YearMonthDay officialYearMonthDay; ReimbursementGuideState reimbursementGuideState; String remarks; State state; } class research.Prize extends DomainObject { MultiLanguageString description; MultiLanguageString name; Integer year; } class research.ResearchInterest extends DomainObject { MultiLanguageString interest; Integer interestOrder; } class research.activity.ArticleAssociation extends DomainObject { } class research.activity.Cooperation extends DomainObject { CooperationType cooperationType; YearMonthDay endDate; String name; YearMonthDay startDate; } class research.activity.EventConferenceArticlesAssociation extends DomainObject { } class research.activity.EventEdition extends DomainObject { String edition; YearMonthDay endDate; String eventLocation; String organization; YearMonthDay startDate; String url; } class research.activity.JournalIssue extends DomainObject { Month month; String number; Boolean specialIssue; String specialIssueComment; String url; String volume; Integer year; } class research.activity.Participation extends DomainObject { ResearchActivityParticipationRole role; MultiLanguageString roleMessage; } class research.activity.CooperationParticipation extends research.activity.Participation { } class research.activity.EventEditionParticipation extends research.activity.Participation { } class research.activity.EventParticipation extends research.activity.Participation { } class research.activity.JournalIssueParticipation extends research.activity.Participation { } class research.activity.ScientificJournalParticipation extends research.activity.Participation { YearMonthDay beginDate; YearMonthDay endDate; } class research.activity.ResearchEvent extends DomainObject { activity.EventType eventType; ScopeType locationType; String name; ResearchActivityStage stage; String url; } class research.activity.ScientificJournal extends DomainObject { String issn; ScopeType locationType; String name; String publisher; ResearchActivityStage stage; String url; } class research.project.Project extends DomainObject { String acronym; Partial endDate; Integer number; MultiLanguageString projectAbstract; ProjectType projectType; Partial startDate; MultiLanguageString title; } class research.project.ProjectEventAssociation extends DomainObject { ProjectEventAssociationRole role; } class research.project.ProjectParticipation extends DomainObject { ProjectParticipationType role; } class research.Researcher extends DomainObject { Boolean allowsToBeSearched; Boolean allowsContactByStudents; Boolean allowsContactByMedia; Boolean allowsContactByOtherResearchers; String keywordsPt; String keywordsEn; } class research.result.ResearchResult extends DomainObject { DateTime lastModificationDate; String modifiedBy; MultiLanguageString note; String title; String uniqueStorageId; String url; } class research.result.patent.ResearchResultPatent extends research.result.ResearchResult { Partial approvalDate; String local; String patentNumber; ResultPatentStatus patentStatus; ResultPatentType patentType; Partial registrationDate; } class research.result.publication.ResearchResultPublication extends research.result.ResearchResult { MultiLanguageString keywords; Month month; String organization; String publisher; Integer year; } class research.result.publication.PreferredPublication extends DomainObject { PreferredPublicationPriority priority; } class research.result.publication.Article extends research.result.publication.ResearchResultPublication { Integer firstPage; Integer issn; String journal; String language; Integer lastPage; } class research.result.publication.Book extends research.result.publication.ResearchResultPublication { String address; String edition; String isbn; String language; Integer numberPages; ScopeType scope; String series; String volume; } class research.result.publication.BookPart extends research.result.publication.ResearchResultPublication { String address; String bookTitle; String chapter; String edition; Integer firstPage; Integer lastPage; String series; String volume; } class research.result.publication.ConferenceArticles extends research.result.publication.ResearchResultPublication { String conference; ScopeType scope; } class research.result.publication.Inproceedings extends research.result.publication.ConferenceArticles { String address; Integer firstPage; String language; Integer lastPage; } class research.result.publication.Proceedings extends research.result.publication.ConferenceArticles { String address; } class research.result.publication.Manual extends research.result.publication.ResearchResultPublication { String address; String edition; } class research.result.publication.OtherPublication extends research.result.publication.ResearchResultPublication { String address; String howPublished; String language; Integer numberPages; String otherPublicationType; } class research.result.publication.TechnicalReport extends research.result.publication.ResearchResultPublication { String address; String language; String number; Integer numberPages; String technicalReportType; } class research.result.publication.Thesis extends research.result.publication.ResearchResultPublication { String address; String language; Month monthBegin; Integer numberPages; String scientificArea; ThesisType thesisType; Integer yearBegin; } class research.result.publication.Unstructured extends research.result.publication.ResearchResultPublication { } class research.result.ResultParticipation extends DomainObject { Integer personOrder; ResultParticipationRole role; } class research.result.ResultTeacher extends DomainObject { PublicationArea publicationArea; } class research.result.ResultUnitAssociation extends DomainObject { ResultUnitAssociationRole role; } class resource.Resource extends DomainObject { } class resource.ResourceAllocation extends DomainObject { } class resource.VehicleAllocation extends resource.ResourceAllocation { DateTime beginDateTime; DateTime endDateTime; String reason; BigDecimal distance; BigDecimal amountCharged; } class space.SpaceOccupation extends resource.ResourceAllocation { } class space.EventSpaceOccupation extends space.SpaceOccupation { } class space.GenericEventSpaceOccupation extends space.EventSpaceOccupation { } class space.LessonSpaceOccupation extends space.EventSpaceOccupation { } class space.LessonInstanceSpaceOccupation extends space.EventSpaceOccupation { } class space.WrittenEvaluationSpaceOccupation extends space.EventSpaceOccupation { } class space.MaterialSpaceOccupation extends space.SpaceOccupation { YearMonthDay begin; YearMonthDay end; } class space.ExtensionSpaceOccupation extends space.MaterialSpaceOccupation { } class space.PersonSpaceOccupation extends space.SpaceOccupation { YearMonthDay begin; YearMonthDay end; } class space.UnitSpaceOccupation extends space.SpaceOccupation { YearMonthDay begin; YearMonthDay end; } class material.Material extends resource.Resource { YearMonthDay acquisition; String barCodeNumber; YearMonthDay cease; String identification; } class material.Extension extends material.Material { } class material.FireExtinguisher extends material.Material { String delivererEnterprise; YearMonthDay loadedDate; YearMonthDay toBeInspectedDate; } class resource.Vehicle extends resource.Resource { YearMonthDay acquisition; YearMonthDay cease; String make; String model; String numberPlate; BigDecimal allocationCostMultiplier; } class space.Space extends resource.Resource { YearMonthDay createdOn; Group extensionOccupationsAccessGroup; Group genericEventOccupationsAccessGroup; Group lessonOccupationsAccessGroup; Group personOccupationsAccessGroup; Group spaceManagementAccessGroup; Group unitOccupationsAccessGroup; Group writtenEvaluationOccupationsAccessGroup; } class space.AllocatableSpace extends space.Space { } class space.Room extends space.AllocatableSpace { Integer examCapacity; Integer normalCapacity; } class space.RoomSubdivision extends space.AllocatableSpace { } class space.Building extends space.Space { } class space.Campus extends space.Space { } class space.Floor extends space.Space { } class resource.ResourceResponsibility extends DomainObject { YearMonthDay begin; YearMonthDay end; } class material.MaterialResponsibility extends resource.ResourceResponsibility { } class space.SpaceResponsibility extends resource.ResourceResponsibility { } class serviceRequests.InstitutionRegistryCodeGenerator extends DomainObject { Integer currentFirstCycle; Integer currentSecondCycle; Integer currentThirdCycle; } class serviceRequests.RegistryCode extends DomainObject { String code; } class serviceRequests.RectorateSubmissionBatch extends DomainObject { DateTime creation; DateTime submission; DateTime reception; RectorateSubmissionState state; } class serviceRequests.AcademicServiceRequestSituation extends DomainObject { AcademicServiceRequestSituationType academicServiceRequestSituationType; String justification; DateTime creationDate; DateTime situationDate; } class serviceRequests.SentToExternalEntityAcademicServiceRequestSituation extends serviceRequests.AcademicServiceRequestSituation { DateTime sentDate; } class serviceRequests.ReceivedFromExternalEntityAcademicServiceRequestSituation extends serviceRequests.AcademicServiceRequestSituation { DateTime receivedDate; } class serviceRequests.AcademicServiceRequestYear extends DomainObject { Integer year; Integer latestServiceRequestNumber; } class serviceRequests.AcademicServiceRequest extends DomainObject { Boolean freeProcessed; Boolean urgentRequest; Integer serviceRequestNumber; DateTime requestDate; Language language; } class serviceRequests.RegistrationAcademicServiceRequest extends serviceRequests.AcademicServiceRequest { } class serviceRequests.documentRequests.DocumentRequest extends serviceRequests.RegistrationAcademicServiceRequest { Integer numberOfPages; } class serviceRequests.documentRequests.CertificateRequest extends serviceRequests.documentRequests.DocumentRequest { DocumentPurposeType documentPurposeType; String otherDocumentPurposeTypeDescription; } class serviceRequests.documentRequests.ApprovementCertificateRequest extends serviceRequests.documentRequests.CertificateRequest { MobilityProgram mobilityProgram; Boolean ignoreExternalEntries; Boolean ignoreCurriculumInAdvance; Integer numberOfUnits; } class serviceRequests.documentRequests.ApprovementMobilityCertificateRequest extends serviceRequests.documentRequests.CertificateRequest { Integer numberOfUnits; } class serviceRequests.documentRequests.DegreeFinalizationCertificateRequest extends serviceRequests.documentRequests.CertificateRequest { Boolean average; Boolean detailed; Boolean technicalEngineer; Boolean internshipAbolished; Boolean internshipApproved; Boolean studyPlan; String branch; YearMonthDay exceptionalConclusionDate; MobilityProgram mobilityProgram; Boolean ignoreExternalEntries; Boolean ignoreCurriculumInAdvance; CycleType requestedCycle; } class serviceRequests.documentRequests.EnrolmentCertificateRequest extends serviceRequests.documentRequests.CertificateRequest { Boolean detailed; } class serviceRequests.documentRequests.SchoolRegistrationCertificateRequest extends serviceRequests.documentRequests.CertificateRequest { } class serviceRequests.documentRequests.ExtraCurricularCertificateRequest extends serviceRequests.documentRequests.CertificateRequest { } class serviceRequests.documentRequests.StandaloneEnrolmentCertificateRequest extends serviceRequests.documentRequests.CertificateRequest { } class serviceRequests.documentRequests.CourseLoadRequest extends serviceRequests.documentRequests.CertificateRequest { CycleType requestedCycle; } class serviceRequests.documentRequests.ExternalCourseLoadRequest extends serviceRequests.documentRequests.CourseLoadRequest { Integer numberOfCourseLoads; } class serviceRequests.documentRequests.ExamDateCertificateRequest extends serviceRequests.documentRequests.CertificateRequest { } class serviceRequests.documentRequests.ProgramCertificateRequest extends serviceRequests.documentRequests.CertificateRequest { CycleType requestedCycle; } class serviceRequests.documentRequests.ExternalProgramCertificateRequest extends serviceRequests.documentRequests.ProgramCertificateRequest { Integer numberOfPrograms; } class serviceRequests.documentRequests.DeclarationRequest extends serviceRequests.documentRequests.DocumentRequest { DocumentPurposeType documentPurposeType; String otherDocumentPurposeTypeDescription; } class serviceRequests.documentRequests.EnrolmentDeclarationRequest extends serviceRequests.documentRequests.DeclarationRequest { } class serviceRequests.documentRequests.IRSDeclarationRequest extends serviceRequests.documentRequests.DeclarationRequest { Integer year; } class serviceRequests.documentRequests.SchoolRegistrationDeclarationRequest extends serviceRequests.documentRequests.DeclarationRequest { } class serviceRequests.documentRequests.GenericDeclarationRequest extends serviceRequests.documentRequests.DeclarationRequest { } class serviceRequests.documentRequests.DiplomaRequest extends serviceRequests.documentRequests.DocumentRequest { CycleType requestedCycle; } class serviceRequests.documentRequests.PastDiplomaRequest extends serviceRequests.documentRequests.DocumentRequest { } class serviceRequests.documentRequests.RegistryDiplomaRequest extends serviceRequests.documentRequests.DocumentRequest { CycleType requestedCycle; } class serviceRequests.documentRequests.DiplomaSupplementRequest extends serviceRequests.documentRequests.DocumentRequest { CycleType requestedCycle (REQUIRED); } class serviceRequests.documentRequests.PhotocopyRequest extends serviceRequests.documentRequests.DocumentRequest { String subject; String purpose; } class serviceRequests.Under23TransportsDeclarationRequest extends serviceRequests.documentRequests.DocumentRequest { } class serviceRequests.StudentReingressionRequest extends serviceRequests.RegistrationAcademicServiceRequest { } class serviceRequests.EquivalencePlanRequest extends serviceRequests.RegistrationAcademicServiceRequest { Integer numberOfEquivalences; } class serviceRequests.EquivalencePlanRevisionRequest extends serviceRequests.RegistrationAcademicServiceRequest { } class serviceRequests.CourseGroupChangeRequest extends serviceRequests.RegistrationAcademicServiceRequest { } class serviceRequests.ExtraExamRequest extends serviceRequests.RegistrationAcademicServiceRequest { } class serviceRequests.FreeSolicitationAcademicRequest extends serviceRequests.RegistrationAcademicServiceRequest { String subject; String purpose; } class serviceRequests.DuplicateRequest extends serviceRequests.RegistrationAcademicServiceRequest { String description; Money amountToPay; } class serviceRequests.SpecialSeasonRequest extends serviceRequests.RegistrationAcademicServiceRequest { Boolean deferred; } class serviceRequests.PartialRegistrationRegimeRequest extends serviceRequests.RegistrationAcademicServiceRequest { } class phd.serviceRequests.PhdAcademicServiceRequest extends serviceRequests.AcademicServiceRequest { Integer horizontalOffset; Integer verticalOffset; } class phd.serviceRequests.PhdStudentReingressionRequest extends phd.serviceRequests.PhdAcademicServiceRequest { } class phd.serviceRequests.documentRequests.PhdDocumentRequest extends phd.serviceRequests.PhdAcademicServiceRequest { Integer numberOfPages; } class phd.serviceRequests.documentRequests.PhdRegistryDiplomaRequest extends phd.serviceRequests.documentRequests.PhdDocumentRequest { } class phd.serviceRequests.documentRequests.PhdDiplomaSupplementRequest extends phd.serviceRequests.documentRequests.PhdDocumentRequest { } class phd.serviceRequests.documentRequests.PhdDiplomaRequest extends phd.serviceRequests.documentRequests.PhdDocumentRequest { } class phd.serviceRequests.documentRequests.certificates.PhdCertificateRequest extends phd.serviceRequests.documentRequests.PhdDocumentRequest { } class phd.serviceRequests.documentRequests.certificates.PhdFinalizationCertificateRequest extends phd.serviceRequests.documentRequests.certificates.PhdCertificateRequest { } class space.Blueprint extends DomainObject { YearMonthDay validFrom; YearMonthDay validUntil; } class space.RoomClassification extends DomainObject { Integer code; MultiLanguageString name; } class space.SpaceInformation extends DomainObject { Integer capacity; String blueprintNumber; YearMonthDay validFrom; YearMonthDay validUntil; String emails; } class space.BuildingInformation extends space.SpaceInformation { String name; } class space.CampusInformation extends space.SpaceInformation { String name; } class space.FloorInformation extends space.SpaceInformation { Integer level; } class space.RoomInformation extends space.SpaceInformation { Boolean ageQuality; BigDecimal area; String description; Boolean distanceFromSanitaryInstalationsQuality; String doorNumber; Boolean heightQuality; String identification; Boolean illuminationQuality; String observations; Boolean securityQuality; } class space.RoomSubdivisionInformation extends space.SpaceInformation { String identification; } class space.SpaceAttendances { String personIstUsername; String responsibleForEntranceIstUsername; DateTime entranceTime; DateTime exitTime; String responsibleForExitIstUsername; } class student.curriculum.ConclusionProcess extends DomainObject { } class student.curriculum.RegistrationConclusionProcess extends student.curriculum.ConclusionProcess { } class student.curriculum.CycleConclusionProcess extends student.curriculum.ConclusionProcess { } class student.curriculum.ConclusionProcessVersion extends DomainObject { DateTime creationDateTime (REQUIRED); LocalDate conclusionDate (REQUIRED); Integer finalAverage (REQUIRED); BigDecimal average (REQUIRED); BigDecimal credits (REQUIRED); String curriculum (REQUIRED); String notes; } class student.curriculum.ExtraCurricularActivity extends DomainObject { Interval activityInterval (REQUIRED); } class student.curriculum.ExtraCurricularActivityType extends DomainObject { MultiLanguageString name (REQUIRED); } class student.ExternalRegistrationData extends DomainObject { String coordinatorName; } class student.PrecedentDegreeInformation extends DomainObject { String conclusionGrade; Integer conclusionYear; String degreeDesignation; SchoolLevelType schoolLevel; String otherSchoolLevel; String precedentDegreeDesignation; SchoolLevelType precedentSchoolLevel; String otherPrecedentSchoolLevel; Integer numberOfEnrolmentsInPreviousDegrees; SchoolPeriodDuration mobilityProgramDuration; DateTime lastModifiedDate; CycleType cycleType; LocalDate conclusionDate; Integer numberOfEnroledCurricularCourses; Integer numberOfApprovedCurricularCourses; BigDecimal gradeSum; BigDecimal approvedEcts; BigDecimal enroledEcts; Boolean candidacyInternal; } class student.Registration extends DomainObject { Character approvationRatioClassification; Character arithmeticMeanClassification; Character entryGradeClassification; YearMonthDay homologationDate; Integer number; String agreementInformation; Boolean requestedChangeBranch; Boolean requestedChangeDegree; YearMonthDay startDate; YearMonthDay studiesStartDate; Ingression ingression; EntryPhase entryPhase; } class student.RegistrationDataByExecutionYear extends DomainObject { EnrolmentModel enrolmentModel; } class student.RegistrationNumber extends DomainObject { Integer number; } class student.RegistrationProtocol extends DomainObject { RegistrationAgreement registrationAgreement; } class student.RegistrationRegime extends DomainObject { DateTime whenCreated; RegistrationRegimeType regimeType; } class student.ResidenceCandidacies extends DomainObject { Boolean candidate; DateTime creationDateDateTime; String observations; } class student.Senior extends DomainObject { Integer expectedDegreeAverageGrade; DateTime expectedDegreeTerminationDateTime; String extracurricularActivities; String informaticsSkills; String languageSkills; DateTime lastModificationDateDateTime; String professionalExperience; String professionalInterests; String specialtyField; } class student.Student extends DomainObject { Integer number; String exportInformationPassword; } class student.StudentNumber extends DomainObject { Integer number; } class student.StudentDataByExecutionYear extends DomainObject { Boolean workingStudent; } class student.StudentDataShareAuthorization extends DomainObject { StudentPersonalDataAuthorizationChoice authorizationChoice (REQUIRED); DateTime since (REQUIRED); } class student.StudentDataShareStudentsAssociationAuthorization extends student.StudentDataShareAuthorization { } class student.StudentStatute extends DomainObject { StudentStatuteType statuteType; DateTime creationDate; } class student.SeniorStatute extends student.StudentStatute { } class student.WeeklyWorkLoad extends DomainObject { Integer autonomousStudy; Integer contact; Integer other; Integer weekOffset; } class student.registrationStates.RegistrationState extends DomainObject { String remarks; DateTime stateDate; } class student.registrationStates.CanceledState extends student.registrationStates.RegistrationState { } class student.registrationStates.ConcludedState extends student.registrationStates.RegistrationState { } class student.registrationStates.ExternalAbandonState extends student.registrationStates.RegistrationState { } class student.registrationStates.FlunkedState extends student.registrationStates.RegistrationState { } class student.registrationStates.InternalAbandonState extends student.registrationStates.RegistrationState { } class student.registrationStates.InterruptedState extends student.registrationStates.RegistrationState { } class student.registrationStates.MobilityState extends student.registrationStates.RegistrationState { } class student.registrationStates.RegisteredState extends student.registrationStates.RegistrationState { } class student.registrationStates.SchoolPartConcludedState extends student.registrationStates.RegistrationState { } class student.registrationStates.StudyPlanConcludedState extends student.registrationStates.RegistrationState { } class student.registrationStates.TransitionalState extends student.registrationStates.RegistrationState { } class student.registrationStates.TransitedState extends student.registrationStates.RegistrationState { } class student.registrationStates.InactiveState extends student.registrationStates.RegistrationState { } class student.registrationStates.RegistrationStateLog extends DomainObject { DateTime whenCreated; DateTime stateDate; String stateType; EnrolmentAction action; String who; } class studentCurriculum.Credits extends DomainObject { Double givenCredits; } class studentCurriculum.Equivalence extends studentCurriculum.Credits { Grade grade; } class studentCurriculum.Substitution extends studentCurriculum.Equivalence { } class studentCurriculum.TemporarySubstitution extends studentCurriculum.Substitution { } class studentCurriculum.InternalSubstitution extends studentCurriculum.Substitution { } class studentCurriculum.CurriculumModule extends DomainObject { DateTime creationDateDateTime; } class studentCurriculum.CurriculumGroup extends studentCurriculum.CurriculumModule { } class studentCurriculum.CycleCurriculumGroup extends studentCurriculum.CurriculumGroup { } class studentCurriculum.ExternalCurriculumGroup extends studentCurriculum.CycleCurriculumGroup { } class studentCurriculum.BranchCurriculumGroup extends studentCurriculum.CurriculumGroup { } class studentCurriculum.NoCourseGroupCurriculumGroup extends studentCurriculum.CurriculumGroup { } class studentCurriculum.ExtraCurriculumGroup extends studentCurriculum.NoCourseGroupCurriculumGroup { } class studentCurriculum.PropaedeuticsCurriculumGroup extends studentCurriculum.NoCourseGroupCurriculumGroup { } class studentCurriculum.StandaloneCurriculumGroup extends studentCurriculum.NoCourseGroupCurriculumGroup { } class studentCurriculum.InternalCreditsSourceCurriculumGroup extends studentCurriculum.NoCourseGroupCurriculumGroup { } class studentCurriculum.RootCurriculumGroup extends studentCurriculum.CurriculumGroup { } class studentCurriculum.CurriculumLine extends studentCurriculum.CurriculumModule { Boolean usedInSeparationCycle; String createdBy; } class Enrolment extends studentCurriculum.CurriculumLine { EnrollmentState enrollmentState; EnrollmentCondition enrolmentCondition; EnrolmentEvaluationType enrolmentEvaluationType; Boolean isExtraCurricular; Boolean isFirstTime; Double weigth; } class EnrolmentInOptionalCurricularCourse extends Enrolment { } class ExternalDegreeEnrolment extends Enrolment { } class OptionalEnrolment extends Enrolment { } class FakeEnrollment extends DomainObject { String stuff; DateTime creationDate; } class FakeShift extends DomainObject { Integer capacity; String name; } class FakeShiftEnrollment extends DomainObject { String stuff; DateTime creationDate; } class studentCurriculum.Dismissal extends studentCurriculum.CurriculumLine { } class studentCurriculum.OptionalDismissal extends studentCurriculum.Dismissal { Double ectsCredits; } class studentCurriculum.CreditsDismissal extends studentCurriculum.Dismissal { } class studentCurriculum.EnrolmentWrapper extends DomainObject { } class studentCurriculum.InternalEnrolmentWrapper extends studentCurriculum.EnrolmentWrapper { } class studentCurriculum.ExternalEnrolmentWrapper extends studentCurriculum.EnrolmentWrapper { } class studentCurriculum.ExternalEnrolment extends DomainObject { String createdBy; DateTime creationDateDateTime; Double ectsCredits (REQUIRED); YearMonthDay evaluationDate; Grade grade (REQUIRED); degreeStructure.RegimeType regime; } class support.FAQEntry extends DomainObject { String answer; String question; } class support.FAQSection extends DomainObject { String sectionName; } class support.GlossaryEntry extends DomainObject { String definition; String term; } class support.SupportRequest extends DomainObject { SupportRequestPriority requestPriority; String responseEmail; String subject; String message; DateTime requestTime; } class support.SupportSugestion extends support.SupportRequest { } class support.SupportDoubt extends support.SupportRequest { } class support.SupportError extends support.SupportRequest { } class support.SupportException extends support.SupportRequest { } class support.SupportDemand extends support.SupportRequest { } class system.CronRegistry extends DomainObject { DateTime buildVersion; } class system.CronScriptInvocation extends DomainObject { DateTime endTime; String log; String serverID; DateTime startTime; Boolean successful; } class system.CronScriptState extends DomainObject { Integer absoluteExecutionOrder; Boolean active; ByteArray context; String cronScriptClassname; String emails; Period invocationPeriod; Boolean isCurrentlyRunning; DateTime registrationDate; WhenToSendEmail whenToSendEmail; Boolean runNow; } class teacher.Advise extends DomainObject { AdviseType adviseType; } class teacher.Career extends DomainObject { Integer beginYear; Integer endYear; DateTime lastModificationDateDateTime; } class teacher.ProfessionalCareer extends teacher.Career { String entity; String function; } class teacher.TeachingCareer extends teacher.Career { String courseOrPosition; MultiLanguageString categoryName; } class teacher.ExternalActivity extends DomainObject { String activity; DateTime lastModificationDateDateTime; } class teacher.OldPublication extends DomainObject { DateTime lastModificationDateDateTime; OldPublicationType oldPublicationType; String publication; } class teacher.Orientation extends DomainObject { String description; DateTime lastModificationDateDateTime; Integer numberOfStudents; OrientationType orientationType; } class teacher.PublicationsNumber extends DomainObject { Integer international; DateTime lastModificationDateDateTime; Integer national; PublicationType publicationType; } class teacher.ServiceProviderRegime extends DomainObject { DateTime lastModificationDateDateTime; ProviderRegimeType providerRegimeType; } class teacher.TeacherPersonalExpectation extends DomainObject { String autoEvaluation; Integer bookPublications; String cientificComunityService; Integer cientificPosGraduations; String cientificPosGraduationsDescription; String companyPositions; String companySocialOrgans; Integer conferencePublications; String consulting; String departmentOrgans; String educationMainFocus; Integer finalDegreeWorkOrientations; Integer graduations; String graduationsDescription; String institutionOrgans; Integer jornalArticlePublications; Integer masterDegreeOrientations; String orientationsMainFocus; Integer otherPublications; String otherPublicationsDescription; Integer patentPublications; Integer phdOrientations; String professionalActivityMainFocus; Integer professionalPosGraduations; String professionalPosGraduationsDescription; String researchAndDevMainFocus; Integer researchAndDevProjects; Integer seminaries; String seminariesDescription; String societyService; Integer technicalReportPublications; String tutorComment; String universityOrgans; String universityServiceMainFocus; } class NonRegularTeachingService extends DomainObject { Double percentage; } class teacher.TeacherService extends DomainObject { DateTime teacherServiceLock; } class teacher.TeacherServiceLog extends DomainObject { DateTime modificationDate; String description; } class teacher.TeacherServiceItem extends DomainObject { } class teacher.DegreeTeachingService extends teacher.TeacherServiceItem { Double percentage; } class teacher.DegreeProjectTutorialService extends teacher.TeacherServiceItem { Integer percentageValue; } class teacher.InstitutionWorkTime extends teacher.TeacherServiceItem { HourMinuteSecond endTimeHourMinuteSecond; HourMinuteSecond startTimeHourMinuteSecond; WeekDay weekDay; } class teacher.ReductionService extends teacher.TeacherServiceItem { BigDecimal creditsReduction; BigDecimal creditsReductionAttributed; DateTime attributionDate; } class teacher.OtherService extends teacher.TeacherServiceItem { Double credits; String reason; } class teacher.TeacherAdviseService extends teacher.TeacherServiceItem { Double percentage; } class teacher.TeacherMasterDegreeService extends teacher.TeacherServiceItem { Double credits; Double hours; } class teacher.TeacherPastService extends teacher.TeacherServiceItem { Double credits; } class teacher.TeacherServiceNotes extends teacher.TeacherServiceItem { String functionsAccumulation; String managementFunctionNotes; String masterDegreeTeachingNotes; String othersNotes; String serviceExemptionNotes; String thesisNote; } class teacher.TeacherServiceComment extends teacher.TeacherServiceItem { String content; DateTime creationDate; DateTime lastModifiedDate; } class teacher.WeeklyOcupation extends DomainObject { DateTime lastModificationDateDateTime; Integer lecture; Integer management; Integer other; Integer research; Integer support; } class teacher.workTime.TeacherInstitutionWorkTime extends DomainObject { HourMinuteSecond endTimeHourMinuteSecond; HourMinuteSecond startTimeHourMinuteSecond; DiaSemana weekDay; } class teacherServiceDistribution.TSDCourse extends DomainObject { Integer firstTimeEnrolledStudentsManual; TSDValueType firstTimeEnrolledStudentsType; Integer secondTimeEnrolledStudentsManual; TSDValueType secondTimeEnrolledStudentsType; Boolean isActive; } class teacherServiceDistribution.TSDCompetenceCourse extends teacherServiceDistribution.TSDCourse { } class teacherServiceDistribution.TSDCurricularCourse extends teacherServiceDistribution.TSDCourse { } class teacherServiceDistribution.TSDCurricularCourseGroup extends teacherServiceDistribution.TSDCourse { } class teacherServiceDistribution.TSDVirtualCourseGroup extends teacherServiceDistribution.TSDCourse { String name; } class teacherServiceDistribution.TSDCurricularLoad extends DomainObject { ShiftType type; Double frequency; Double hoursManual; TSDValueType hoursType; Double hoursPerShiftManual; Integer timeTableSlots; Integer studentsPerShiftManual; TSDValueType studentsPerShiftType; Double weightFirstTimeEnrolledStudentsPerShiftManual; TSDValueType weightFirstTimeEnrolledStudentsPerShiftType; Double weightSecondTimeEnrolledStudentsPerShiftManual; TSDValueType weightSecondTimeEnrolledStudentsPerShiftType; SchoolClassCalculationMethod schoolClassCalculationMethod; } class teacherServiceDistribution.TSDProfessorship extends DomainObject { Double hoursManual; TSDValueType hoursType; ShiftType type; } class teacherServiceDistribution.TSDProcess extends DomainObject { Group automaticValuationGroup; String name; Group omissionConfigurationGroup; Group phasesManagementGroup; Group tsdCoursesAndTeachersManagementGroup; } class teacherServiceDistribution.TeacherServiceDistribution extends DomainObject { Group coursesManagementGroup; Group teachersManagementGroup; Group coursesValuationManagers; Group teachersValuationManagers; String name; } class teacherServiceDistribution.TSDProcessPhase extends DomainObject { Boolean isPublished; String name; TSDProcessPhaseStatus status; Integer studentsPerLaboratorialShift; Integer studentsPerTheoreticalShift; Integer studentsPerProblemShift; Integer studentsPerSeminaryShift; Integer studentsPerFieldWorkShift; Integer studentsPerTrainingPeriodShift; Integer studentsPerTutDirectionShift; Double weightFirstTimeEnrolledStudentsPerLabShift; Double weightFirstTimeEnrolledStudentsPerTheoShift; Double weightFirstTimeEnrolledStudentsPerProblemShift; Double weightFirstTimeEnrolledStudentsPerSeminaryShift; Double weightFirstTimeEnrolledStudentsPerFieldWorkShift; Double weightFirstTimeEnrolledStudentsPerTrainingShift; Double weightFirstTimeEnrolledStudentsPerTutDirectionShift; Double weightSecondTimeEnrolledStudentsPerLabShift; Double weightSecondTimeEnrolledStudentsPerTheoShift; Double weightSecondTimeEnrolledStudentsPerProblemShift; Double weightSecondTimeEnrolledStudentsPerSeminaryShift; Double weightSecondTimeEnrolledStudentsPerFieldWorkShift; Double weightSecondTimeEnrolledStudentsPerTrainingShift; Double weightSecondTimeEnrolledStudentsPerTutDirectionShift; } class teacherServiceDistribution.TSDTeacher extends DomainObject { String extraCreditsName; Double extraCreditsValue; Boolean usingExtraCredits; } class teacherServiceDistribution.TSDRealTeacher extends teacherServiceDistribution.TSDTeacher { } class teacherServiceDistribution.TSDVirtualTeacher extends teacherServiceDistribution.TSDTeacher { String name; Double requiredHours; } class tests.NewAnswer extends DomainObject { ConcreteAnswer concreteAnswer; Double percentage; } class tests.NewCorrector extends DomainObject { Integer percentage; Integer position; Predicate predicate; } class tests.NewGroupElement extends DomainObject { Integer position; } class tests.NewPermissionUnit extends DomainObject { NewPermission permission; } class tests.NewPresentationMaterial extends DomainObject { Boolean inline; Integer position; } class tests.NewMathMlMaterial extends tests.NewPresentationMaterial { String mathMl; } class tests.NewPictureMaterial extends tests.NewPresentationMaterial { } class tests.NewStringMaterial extends tests.NewPresentationMaterial { String text; } class tests.NewTestElement extends DomainObject { Integer sectionPosition; } class tests.NewChoice extends tests.NewTestElement { Integer position; } class tests.NewModelRestriction extends tests.NewTestElement { Integer count; Integer position; Double value; } class tests.NewModelGroup extends tests.NewModelRestriction { String name; } class tests.NewTestModel extends tests.NewModelGroup { DateTime created; Double scale; } class tests.NewQuestion extends tests.NewTestElement { TestsGrade grade; Predicate preCondition; Integer timesUsed; } class tests.NewAtomicQuestion extends tests.NewQuestion { Predicate validator; } class tests.NewDateQuestion extends tests.NewAtomicQuestion { } class tests.NewMultipleChoiceQuestion extends tests.NewAtomicQuestion { Boolean shuffle; } class tests.NewNumericQuestion extends tests.NewAtomicQuestion { } class tests.NewStringQuestion extends tests.NewAtomicQuestion { } class tests.NewQuestionGroup extends tests.NewQuestion { String name; } class tests.NewAllGroup extends tests.NewQuestionGroup { } class tests.NewQuestionBank extends tests.NewQuestionGroup { } class tests.NewSection extends tests.NewTestElement { Predicate preCondition; } class tests.NewTest extends tests.NewSection { Integer position; Double scale; } class tests.NewTestGroup extends DomainObject { DateTime beginDate; DateTime finalDate; String name; TestGroupStatus status; } class thesis.Thesis extends DomainObject { DateTime approval; String comment; DateTime confirmation; DateTime creation; Boolean declarationAccepted; DateTime declarationAcceptedTime; DateTime proposedDiscussed; String proposedPlace; DateTime discussed; DateTime documentsAvailableAfter; DateTime evaluation; MultiLanguageString keywords; Integer mark; Integer orientatorCreditsDistribution; String rejectionComment; ThesisState state; DateTime submission; MultiLanguageString thesisAbstract; MultiLanguageString title; ThesisVisibilityType visibility; DateTime confirmmedDocuments; } class thesis.ThesisLibraryOperation extends DomainObject { DateTime operation; } relation ThesisLibraryLastOperation { thesis.Thesis playsRole thesis; thesis.ThesisLibraryOperation playsRole lastLibraryOperation; } relation ThesisLibraryPreviousOperation { thesis.ThesisLibraryOperation playsRole previous; thesis.ThesisLibraryOperation playsRole next; } relation ThesisLibraryOperationPerformer { Person playsRole performer; thesis.ThesisLibraryOperation playsRole thesisLibraryOperation { multiplicity *; } } class thesis.ThesisLibraryPendingOperation extends thesis.ThesisLibraryOperation { String pendingComment; } class thesis.ThesisLibraryArchiveOperation extends thesis.ThesisLibraryOperation { String libraryReference; } class thesis.ThesisLibraryCancelOperation extends thesis.ThesisLibraryOperation { } class thesis.ThesisEvaluationParticipant extends DomainObject { String affiliation; String category; String personName; ThesisParticipationType type; } class time.calendarStructure.AcademicCalendarEntry extends DomainObject { MultiLanguageString title; MultiLanguageString description; DateTime begin; DateTime end; } class time.calendarStructure.AcademicCalendarRootEntry extends time.calendarStructure.AcademicCalendarEntry { } class time.calendarStructure.AcademicSemesterCE extends time.calendarStructure.AcademicCalendarEntry { } class time.calendarStructure.AcademicTrimesterCE extends time.calendarStructure.AcademicCalendarEntry { } class time.calendarStructure.AcademicYearCE extends time.calendarStructure.AcademicCalendarEntry { } class time.calendarStructure.EnrolmentsPeriodCE extends time.calendarStructure.AcademicCalendarEntry { } class time.calendarStructure.ExamsPeriodCE extends time.calendarStructure.AcademicCalendarEntry { } class time.calendarStructure.ExamsPeriodInNormalSeasonCE extends time.calendarStructure.ExamsPeriodCE { } class time.calendarStructure.ExamsPeriodInSpecialSeasonCE extends time.calendarStructure.ExamsPeriodCE { } class time.calendarStructure.LessonsPeriodCE extends time.calendarStructure.AcademicCalendarEntry { } class time.calendarStructure.GradeSubmissionCE extends time.calendarStructure.AcademicCalendarEntry { } class time.calendarStructure.GradeSubmissionInNormalSeasonCE extends time.calendarStructure.GradeSubmissionCE { } class time.calendarStructure.GradeSubmissionInSpecialSeasonCE extends time.calendarStructure.GradeSubmissionCE { } class time.calendarStructure.TeacherCreditsFillingCE extends time.calendarStructure.AcademicCalendarEntry { } class time.calendarStructure.TeacherCreditsFillingForTeacherCE extends time.calendarStructure.TeacherCreditsFillingCE { } class time.calendarStructure.TeacherCreditsFillingForDepartmentAdmOfficeCE extends time.calendarStructure.TeacherCreditsFillingCE { } class transactions.Transaction extends DomainObject { PaymentType paymentType; String remarks; DateTime transactionDateDateTime; TransactionType transactionType; BigDecimal valueBigDecimal; Boolean wasInternalBalance; } class transactions.PaymentTransaction extends transactions.Transaction { } class transactions.GratuityTransaction extends transactions.PaymentTransaction { } class transactions.InsuranceTransaction extends transactions.PaymentTransaction { } class transactions.SmsTransaction extends transactions.PaymentTransaction { } class transactions.ReimbursementTransaction extends transactions.Transaction { } class util.Email extends DomainObject { EmailAddressList bccAddresses; String body; String htmlBody; EmailAddressList ccAddresses; String fromAddress; String fromName; EmailAddressList replyTos; String subject; EmailAddressList toAddresses; EmailAddressList confirmedAddresses; EmailAddressList failedAddresses; } class util.email.Message extends DomainObject { String subject; String body; String htmlBody; DateTime created; DateTime sent; String bccs; } class util.email.MessageTransportResult extends DomainObject { Integer code; String description; } class util.email.MessageId extends DomainObject { String id; DateTime sendTime; } class util.email.Recipient extends DomainObject { String toName; Group members; Integer membersSize; } class util.email.ReplyTo extends DomainObject { } class util.email.ConcreteReplyTo extends util.email.ReplyTo { String replyToAddress; } class util.email.PersonReplyTo extends util.email.ReplyTo { } class util.email.ExecutionCourseReplyTo extends util.email.ReplyTo { } class util.email.CurrentUserReplyTo extends util.email.ReplyTo { } class util.email.Sender extends DomainObject { String fromName; String fromAddress; Group members; } class util.email.UnitBasedSender extends util.email.Sender {} class util.email.DepartmentMemberBasedSender extends util.email.UnitBasedSender {} class util.email.ResearchUnitBasedSender extends util.email.UnitBasedSender {} class util.email.ExecutionCourseSender extends util.email.Sender { } class util.email.CoordinatorSender extends util.email.Sender {} class util.email.PersonFunctionSender extends util.email.Sender {} class util.email.PersonSender extends util.email.Sender {} class util.email.SystemSender extends util.email.Sender {} class util.FunctionalityPrinters extends DomainObject { String functionality; String keyPrinters; } class util.UsernameCounter extends DomainObject { Integer invitationCounter; } class vigilancy.ExamCoordinator extends DomainObject { Boolean allowedToCreateGroups; } class vigilancy.UnavailablePeriod extends DomainObject { DateTime beginDate; DateTime endDate; String justification; } class vigilancy.Vigilancy extends DomainObject { Boolean active; AttendingStatus status; } class vigilancy.OtherCourseVigilancy extends vigilancy.Vigilancy { Boolean confirmed; } class vigilancy.OwnCourseVigilancy extends vigilancy.Vigilancy { } class vigilancy.VigilantGroup extends DomainObject { DateTime beginOfFirstPeriodForUnavailablePeriods; DateTime beginOfSecondPeriodForUnavailablePeriods; String contactEmail; String emailSubjectPrefix; String convokeStrategy; DateTime endOfFirstPeriodForUnavailablePeriods; DateTime endOfSecondPeriodForUnavailablePeriods; String name; Integer pointsForConvoked; Integer pointsForDisconvoked; Integer pointsForDismissed; Integer pointsForDismissedTeacher; Integer pointsForMissing; Integer pointsForMissingTeacher; Integer pointsForTeacher; String rulesLink; } class vigilancy.VigilantWrapper extends DomainObject { BigDecimal pointsWeight; BigDecimal startPoints; Boolean convokable; String justification; } class personnelSection.contracts.ContractSituation extends DomainObject { String giafId (REQUIRED); MultiLanguageString name (REQUIRED); Boolean endSituation (REQUIRED); Boolean serviceExemption (REQUIRED); Boolean inExercise (REQUIRED); Boolean hasMandatoryCredits (REQUIRED); Boolean giveCredits (REQUIRED); Boolean mustHaveAssociatedExemption (REQUIRED); } class personnelSection.contracts.ProfessionalContractType extends DomainObject { String giafId; MultiLanguageString name; } class personnelSection.contracts.PersonProfessionalData extends DomainObject { } class personnelSection.contracts.GiafProfessionalData extends DomainObject { String giafPersonIdentification; LocalDate institutionEntryDate; String contractSituationGiafId; LocalDate contractSituationDate; String professionalRelationGiafId; LocalDate professionalRelationDate; String professionalContractTypeGiafId; String professionalCategoryGiafId; LocalDate professionalCategoryDate; String professionalRegimeGiafId; LocalDate professionalRegimeDate; LocalDate terminationSituationDate; DateTime creationDate; DateTime modifiedDate; DateTime importationDate; DateTime anulationDate; } class personnelSection.contracts.PersonProfessionalContract extends DomainObject { LocalDate beginDate; LocalDate endDate; DateTime creationDate; DateTime modifiedDate; DateTime importationDate; DateTime anulationDate; String contractSituationGiafId; } class personnelSection.contracts.PersonContractSituation extends DomainObject { LocalDate beginDate; LocalDate endDate; String step; DateTime creationDate; DateTime modifiedDate; DateTime importationDate; DateTime anulationDate; String contractSituationGiafId; String professionalCategoryGiafId; } class personnelSection.contracts.ProfessionalCategory extends DomainObject { String giafId; MultiLanguageString name; CategoryType categoryType; Integer weight; String identificationCardLabel; } class personnelSection.contracts.PersonProfessionalCategory extends DomainObject { LocalDate beginDate; LocalDate endDate; String step; String level; DateTime creationDate; DateTime modifiedDate; DateTime importationDate; DateTime anulationDate; String professionalCategoryGiafId; String professionalRegimeGiafId; String professionalRelationGiafId; } class personnelSection.contracts.ProfessionalRegime extends DomainObject { String giafId; MultiLanguageString name; Integer weighting; BigDecimal fullTimeEquivalent; CategoryType categoryType; } class personnelSection.contracts.PersonProfessionalRegime extends DomainObject { LocalDate beginDate; LocalDate endDate; DateTime creationDate; DateTime modifiedDate; DateTime importationDate; DateTime anulationDate; String professionalRegimeGiafId; } class personnelSection.contracts.ProfessionalRelation extends DomainObject { String giafId; MultiLanguageString name; Boolean fullTimeEquivalent; } class personnelSection.contracts.PersonProfessionalRelation extends DomainObject { LocalDate beginDate; LocalDate endDate; DateTime creationDate; DateTime modifiedDate; DateTime importationDate; DateTime anulationDate; String professionalRelationGiafId; String professionalCategoryGiafId; } class personnelSection.contracts.FunctionsAccumulation extends DomainObject { String giafId; MultiLanguageString name; } class personnelSection.contracts.PersonFunctionsAccumulation extends DomainObject { LocalDate beginDate; LocalDate endDate; BigDecimal hours; DateTime creationDate; DateTime modifiedDate; DateTime importationDate; DateTime anulationDate; String functionsAccumulationGiafId; String professionalRegimeGiafId; } class personnelSection.contracts.PersonProfessionalExemption extends DomainObject { LocalDate beginDate; LocalDate endDate; DateTime creationDate; DateTime modifiedDate; DateTime importationDate; DateTime anulationDate; } class personnelSection.contracts.PersonSabbatical extends personnelSection.contracts.PersonProfessionalExemption { } class personnelSection.contracts.PersonGrantOwnerEquivalent extends personnelSection.contracts.PersonProfessionalExemption { String motive; String local; String giafCountryName; String grantOwnerEquivalentGiafId; } class personnelSection.contracts.PersonServiceExemption extends personnelSection.contracts.PersonProfessionalExemption { String serviceExemptionGiafId; } class personnelSection.contracts.PersonAbsence extends personnelSection.contracts.PersonProfessionalExemption { String absenceGiafId; } class personnelSection.contracts.GrantOwnerEquivalent extends DomainObject { String giafId; MultiLanguageString name; Boolean hasMandatoryCredits (REQUIRED); Boolean giveCredits (REQUIRED); Boolean isSabaticalOrEquivalent (REQUIRED); } class personnelSection.contracts.ServiceExemption extends DomainObject { String giafId; MultiLanguageString name; Boolean hasMandatoryCredits (REQUIRED); Boolean giveCredits (REQUIRED); Boolean isSabaticalOrEquivalent (REQUIRED); } class personnelSection.contracts.Absence extends DomainObject { String giafId; MultiLanguageString name; Boolean importAbsence (REQUIRED); Boolean hasMandatoryCredits (REQUIRED); Boolean giveCredits (REQUIRED); Boolean isSabaticalOrEquivalent (REQUIRED); } class library.LibraryCard extends DomainObject { String userName; String unitName; String cardNumber; PartyClassification partyClassification; Integer pin; YearMonthDay validUntil; DateTime cardEmitionDate; DateTime letterGenerationDate; } class library.LibraryDocument extends DomainObject { } class elections.DelegateElection extends DomainObject { Boolean sentResultsToCandidates; } class elections.YearDelegateElection extends elections.DelegateElection { } class elections.DelegateElectionVote extends DomainObject { } class elections.DelegateElectionBlankVote extends elections.DelegateElectionVote { } class elections.DelegateElectionPeriod extends DomainObject { YearMonthDay startDate; YearMonthDay endDate; } class elections.DelegateElectionCandidacyPeriod extends elections.DelegateElectionPeriod { } class elections.DelegateElectionVotingPeriod extends elections.DelegateElectionPeriod { } class MetaDomainObject extends DomainObject { String type; } class contents.Content extends DomainObject { String contentId; DateTime creationDate; MultiLanguageString name; MultiLanguageString title; MultiLanguageString body; MultiLanguageString description; MultiLanguageString normalizedName; } class contents.Element extends contents.Content { } class contents.Attachment extends contents.Element { } class messaging.Announcement extends contents.Element { String author; String authorEmail; MultiLanguageString excerpt; MultiLanguageString keywords; DateTime lastModification; String place; DateTime publicationBegin; DateTime publicationEnd; DateTime referedSubjectBegin; DateTime referedSubjectEnd; MultiLanguageString subject; Boolean visible; Boolean approved; String photoUrl; String editorNotes; Boolean pressRelease; Boolean sticky; Integer priority; Boolean publication; } class functionalities.ExecutionPath extends DomainObject { String executionPath; String contentId; } class functionalities.Functionality extends contents.Element { //MultiLanguageString description; //Integer orderInModule; //String parameters; //UUID uuid; // TODO: replace uuid by relative content ids String executionPath; //Boolean principal; //Boolean relative; Boolean visible; } class contents.FunctionalityCall extends contents.Element { } class functionalities.FunctionalityParameter extends DomainObject { String name; } class contents.Container extends contents.Content { Boolean maximizable; String prefix; } class contents.Portal extends contents.Container { } class contents.MetaDomainObjectPortal extends contents.Portal { } class contents.ContentJump extends contents.Portal { } class functionalities.Module extends contents.Container { //Boolean maximized; //String prefix; String executionPath; Boolean visible; } class messaging.AnnouncementBoard extends contents.Container { Group managers; Boolean mandatory; Group readers; Group writers; Group approvers; } class messaging.ExecutionCourseAnnouncementBoard extends messaging.AnnouncementBoard { ExecutionCourseBoardPermittedGroupType executionCoursePermittedManagementGroupType; ExecutionCourseBoardPermittedGroupType executionCoursePermittedReadGroupType; ExecutionCourseBoardPermittedGroupType executionCoursePermittedWriteGroupType; } class messaging.PartyAnnouncementBoard extends messaging.AnnouncementBoard { } class messaging.UnitAnnouncementBoard extends messaging.PartyAnnouncementBoard { UnitBoardPermittedGroupType unitPermittedManagementGroupType; UnitBoardPermittedGroupType unitPermittedReadGroupType; UnitBoardPermittedGroupType unitPermittedWriteGroupType; } class contents.Node extends DomainObject { Boolean ascending; Boolean visible; String contentId; } class contents.DateOrderedNode extends contents.Node { } class contents.ExplicitOrderNode extends contents.Node { Integer nodeOrder; } class messaging.AnnouncementNode extends contents.Node { } class messaging.ConversationMessage extends contents.Element { } class messaging.ConversationThread extends contents.Container { } class messaging.Forum extends contents.Container { } class messaging.ForumSubscription extends DomainObject { Boolean favorite; Boolean receivePostsByEmail; } class messaging.ExecutionCourseForum extends messaging.Forum { } class messaging.DepartmentForum extends messaging.Forum { } class Item extends contents.Container { Boolean enabled; Boolean showName; } class Section extends contents.Container { Boolean enabled; YearMonthDay modificationDate; Boolean showSubSections; } class Site extends contents.Portal { String alternativeSite; String style; } class ExecutionCourseSite extends Site { Boolean dynamicMailDistribution; String initialStatement; String introduction; Boolean lessonPlanningAvailable; String mail; } class thesis.ThesisSite extends Site; class UnitSite extends Site { UnitSiteLayoutType layout; Boolean personalizedLogo; Boolean showAnnouncements; Boolean showBanner; Boolean showEvents; Boolean showFlags; Boolean showInstitutionLogo; Boolean showIntroduction; MultiLanguageString sideBanner; String googleAnalyticsCode; } class DegreeSite extends UnitSite { } class DepartmentSite extends UnitSite { } class SpecificUnitSite extends UnitSite { } class TutorSite extends SpecificUnitSite { } class AssemblySite extends SpecificUnitSite { } class StudentsSite extends SpecificUnitSite { } class EdamSite extends SpecificUnitSite { } class ManagementCouncilSite extends UnitSite { } class InstitutionSite extends UnitSite { } class PedagogicalCouncilSite extends UnitSite { } class ResearchUnitSite extends UnitSite { } class ScientificCouncilSite extends UnitSite { } class ScientificAreaSite extends UnitSite { } class homepage.Homepage extends Site { Boolean activated; MultiLanguageString researchUnit; String researchUnitHomepage; Boolean showActiveStudentCurricularPlans; Boolean showAlternativeHomepage; Boolean showAlumniDegrees; Boolean showCategory; Boolean showCurrentAttendingExecutionCourses; Boolean showCurrentExecutionCourses; Boolean showEmail; Boolean showInterests; Boolean showMobileTelephone; Boolean showParticipations; Boolean showPatents; Boolean showPhoto; Boolean showPrizes; Boolean showPublications; Boolean showResearchUnitHomepage; Boolean showTelephone; Boolean showUnit; Boolean showWorkTelephone; } class DeployNotifier extends DomainObject { Boolean notifyUsers; DateTime timeStamp; } class log.requests.RequestMapping extends DomainObject { String path; String parameters; } class log.requests.RequestLogYear extends DomainObject { Integer year; } class log.requests.RequestLogMonth extends DomainObject { Integer monthOfYear; } class log.requests.RequestLogDay extends DomainObject { Integer dayOfMonth; } class log.requests.RequestLog extends DomainObject { String queryString; DateTime requestTime; String requester; String requestAttributes; String sessionAttributes; String referer; Boolean post; } class log.requests.ErrorLog extends DomainObject { String stackTrace; } class log.requests.ExceptionType extends DomainObject { String type; } class caseHandling.Process extends DomainObject { } class caseHandling.ProcessLog extends DomainObject { String userName; DateTime whenDateTime; String activity; } /* Candidacies */ class period.CandidacyPeriod extends DomainObject { DateTime start; DateTime end; } class period.CandidacyProcessCandidacyPeriod extends period.CandidacyPeriod { } class period.Over23CandidacyPeriod extends period.CandidacyProcessCandidacyPeriod { } class period.SecondCycleCandidacyPeriod extends period.CandidacyProcessCandidacyPeriod { } class period.DegreeCandidacyForGraduatedPersonCandidacyPeriod extends period.CandidacyProcessCandidacyPeriod { } class period.DegreeChangeCandidacyPeriod extends period.CandidacyProcessCandidacyPeriod { } class period.DegreeTransferCandidacyPeriod extends period.CandidacyProcessCandidacyPeriod { } class period.StandaloneCandidacyPeriod extends period.CandidacyProcessCandidacyPeriod { } class period.MobilityApplicationPeriod extends period.CandidacyProcessCandidacyPeriod { } class phd.candidacy.PhdCandidacyPeriod extends period.CandidacyPeriod { PhdCandidacyPeriodType type; } class phd.candidacy.InstitutionPhdCandidacyPeriod extends phd.candidacy.PhdCandidacyPeriod { } class phd.candidacy.EPFLPhdCandidacyPeriod extends phd.candidacy.PhdCandidacyPeriod { } class candidacyProcess.CandidacyProcess extends caseHandling.Process { CandidacyProcessState state; } class candidacyProcess.over23.Over23CandidacyProcess extends candidacyProcess.CandidacyProcess { } class candidacyProcess.secondCycle.SecondCycleCandidacyProcess extends candidacyProcess.CandidacyProcess { } class candidacyProcess.graduatedPerson.DegreeCandidacyForGraduatedPersonProcess extends candidacyProcess.CandidacyProcess { } class candidacyProcess.degreeChange.DegreeChangeCandidacyProcess extends candidacyProcess.CandidacyProcess { } class candidacyProcess.degreeTransfer.DegreeTransferCandidacyProcess extends candidacyProcess.CandidacyProcess { } class candidacyProcess.standalone.StandaloneCandidacyProcess extends candidacyProcess.CandidacyProcess { } class candidacyProcess.mobility.MobilityApplicationProcess extends candidacyProcess.CandidacyProcess { ErasmusApplyForSemesterType forSemester; String receptionEmailSubject; String receptionEmailBody; } class institutionalRelations.academic.Program extends DomainObject { RegistrationAgreement registrationAgreement; } class candidacyProcess.mobility.MobilityQuota extends DomainObject { Integer numberOfOpenings; } class candidacyProcess.erasmus.ErasmusVacancy extends DomainObject { Integer numberOfVacancies; } class candidacyProcess.mobility.MobilityAgreement extends DomainObject { } class candidacyProcess.mobility.MobilityProgram extends institutionalRelations.academic.Program { } class candidacyProcess.mobility.MobilityEmailTemplate extends DomainObject { MobilityEmailTemplateType type; String subject; String body; } class candidacyProcess.IndividualCandidacyProcess extends caseHandling.Process { String accessHash; String processCode; Boolean processChecked; Boolean paymentChecked; } class candidacyProcess.over23.Over23IndividualCandidacyProcess extends candidacyProcess.IndividualCandidacyProcess { } class candidacyProcess.secondCycle.SecondCycleIndividualCandidacyProcess extends candidacyProcess.IndividualCandidacyProcess { } class candidacyProcess.graduatedPerson.DegreeCandidacyForGraduatedPersonIndividualProcess extends candidacyProcess.IndividualCandidacyProcess { } class candidacyProcess.degreeChange.DegreeChangeIndividualCandidacyProcess extends candidacyProcess.IndividualCandidacyProcess { } class candidacyProcess.degreeTransfer.DegreeTransferIndividualCandidacyProcess extends candidacyProcess.IndividualCandidacyProcess { } class candidacyProcess.standalone.StandaloneIndividualCandidacyProcess extends candidacyProcess.IndividualCandidacyProcess { } class candidacyProcess.mobility.MobilityIndividualApplicationProcess extends candidacyProcess.IndividualCandidacyProcess { Boolean validatedByGri; Boolean validatedByMobilityCoordinator; erasmus.StorkAttributesList personalFieldsFromStork; } class candidacyProcess.IndividualCandidacy extends DomainObject { DateTime whenCreated; LocalDate candidacyDate; IndividualCandidacyState state; String responsible; String notes; Integer numberOfCandidaciesToHigherSchool; Integer numberOfFlunksOnHighSchool; Boolean dislocatedFromPermanentResidence; GrantOwnerType grantOwnerType; AcademicalInstitutionType highSchoolType; MaritalStatus maritalStatus; ProfessionType professionType; ProfessionalSituationConditionType professionalCondition; SchoolLevelType motherSchoolLevel; ProfessionType motherProfessionType; ProfessionalSituationConditionType motherProfessionalCondition; SchoolLevelType fatherSchoolLevel; ProfessionType fatherProfessionType; ProfessionalSituationConditionType fatherProfessionalCondition; SchoolLevelType spouseSchoolLevel; ProfessionType spouseProfessionType; ProfessionalSituationConditionType spouseProfessionalCondition; String observations; String formerStudentNumber; Boolean utlStudent; } class candidacyProcess.IndividualCandidacyDocumentFile extends File { IndividualCandidacyDocumentFileType candidacyFileType; Boolean candidacyFileActive; } class candidacyProcess.IndividualCandidacyPersonalDetails extends DomainObject { } class candidacyProcess.IndividualCandidacyInternalPersonDetails extends candidacyProcess.IndividualCandidacyPersonalDetails { } class candidacyProcess.IndividualCandidacyExternalPersonDetails extends candidacyProcess.IndividualCandidacyPersonalDetails { String name; Gender gender; String profession; MaritalStatus maritalStatus; YearMonthDay dateOfBirthYearMonthDay; String fiscalCode; String documentIdNumber; IDDocumentType idDocumentType; YearMonthDay emissionDateOfDocumentIdYearMonthDay; YearMonthDay expirationDateOfDocumentIdYearMonthDay; String emissionLocationOfDocumentId; String telephoneContact; String email; String address; String area; String areaCode; String areaOfAreaCode; Boolean internalized; } class candidacyProcess.over23.Over23IndividualCandidacy extends candidacyProcess.IndividualCandidacy { String disabilities; String education; String languages; String languagesRead; String languagesWrite; String languagesSpeak; } class candidacyProcess.secondCycle.SecondCycleIndividualCandidacy extends candidacyProcess.IndividualCandidacy { String professionalStatus; String otherEducation; Integer professionalExperience; BigDecimal affinity; Integer degreeNature; BigDecimal candidacyGrade; String interviewGrade; BigDecimal seriesCandidacyGrade; } // ------------ class candidacyProcess.IndividualCandidacySeriesGrade extends DomainObject{ BigDecimal affinity; Integer degreeNature; IndividualCandidacySeriesGradeState state; String notes; } class candidacyProcess.graduatedPerson.DegreeCandidacyForGraduatedPersonSeriesGade extends candidacyProcess.IndividualCandidacySeriesGrade{ BigDecimal candidacyGrade; } class candidacyProcess.degreeChange.DegreeChangeIndividualCandidacySeriesGrade extends candidacyProcess.IndividualCandidacySeriesGrade{ BigDecimal approvedEctsRate; BigDecimal gradeRate; BigDecimal seriesCandidacyGrade; } class candidacyProcess.degreeTransfer.DegreeTransferIndividualCandidacySeriesGrade extends candidacyProcess.IndividualCandidacySeriesGrade{ BigDecimal approvedEctsRate; BigDecimal gradeRate; BigDecimal seriesCandidacyGrade; } class candidacyProcess.secondCycle.SecondCycleIndividualCandidacySeriesGrade extends candidacyProcess.IndividualCandidacySeriesGrade{ Integer professionalExperience; BigDecimal candidacyGrade; String interviewGrade; BigDecimal seriesCandidacyGrade; } // ------------ class candidacyProcess.graduatedPerson.DegreeCandidacyForGraduatedPerson extends candidacyProcess.IndividualCandidacy { BigDecimal affinity; Integer degreeNature; BigDecimal candidacyGrade; } class candidacyProcess.degreeChange.DegreeChangeIndividualCandidacy extends candidacyProcess.IndividualCandidacy { BigDecimal affinity; Integer degreeNature; BigDecimal approvedEctsRate; BigDecimal gradeRate; BigDecimal seriesCandidacyGrade; } class candidacyProcess.degreeTransfer.DegreeTransferIndividualCandidacy extends candidacyProcess.IndividualCandidacy { BigDecimal affinity; Integer degreeNature; BigDecimal approvedEctsRate; BigDecimal gradeRate; BigDecimal seriesCandidacyGrade; } class candidacyProcess.standalone.StandaloneIndividualCandidacy extends candidacyProcess.IndividualCandidacy { } class candidacyProcess.mobility.MobilityIndividualApplication extends candidacyProcess.IndividualCandidacy { NationalIdCardAvoidanceQuestion nationalIdCardAvoidanceQuestion; DateTime nationalIdCardAvoidanceAnswerDate; String idCardAvoidanceOtherReason; } class candidacyProcess.mobility.MobilityStudentData extends DomainObject { String homeInstitutionName; String homeInstitutionAddress; String homeInstitutionCoordinatorName; String homeInstitutionPhone; String homeInstitutionFax; String homeInstitutionEmail; Boolean hasDiplomaOrDegree; Integer diplomaConclusionYear; String diplomaName; Boolean experienceCarryingOutProject; SchoolLevelType schoolLevel; String otherSchoolLevel; LocalDate dateOfArrival; LocalDate dateOfDeparture; erasmus.TypeOfProgrammeList typesOfProgramme; String mainSubjectThesis; Boolean hasContactedOtherStaff; String nameOfContact; Boolean ptStudyingLanguage; Boolean ptAbleFollowLecures; Boolean ptAbleToFollowLectureWithExtraPreparation; Boolean enStudyingLanguage; Boolean enAbleFollowLecures; Boolean enAbleToFollowLectureWithExtraPreparation; Boolean intensivePortugueseCourseSeptember; Boolean intensivePortugueseCourseFebruary; ErasmusApplyForSemesterType applyFor; } class candidacyProcess.erasmus.ErasmusAlert extends Alert { Boolean sendEmail; LocalDate whenToFire; ErasmusAlertEntityType entity; } class candidacyProcess.erasmus.ApprovedLearningAgreementDocumentFile extends candidacyProcess.IndividualCandidacyDocumentFile { } class candidacyProcess.erasmus.ExecutedAction extends DomainObject { ExecutedActionType type; DateTime whenOccured; } class candidacyProcess.erasmus.ApprovedLearningAgreementExecutedAction extends candidacyProcess.erasmus.ExecutedAction { } class candidacyProcess.erasmus.ErasmusIndividualCandidacyProcessExecutedAction extends candidacyProcess.erasmus.ExecutedAction { } class candidacyProcess.erasmus.ErasmusCandidacyProcessExecutedAction extends candidacyProcess.erasmus.ExecutedAction { } class candidacyProcess.erasmus.ReceptionEmailExecutedAction extends candidacyProcess.erasmus.ErasmusCandidacyProcessExecutedAction { String subject; String body; DateTime beginIntervalOfAcceptedStudents; DateTime endIntervalOfAcceptedStudents; } class candidacyProcess.CandidacyPrecedentDegreeInformation extends DomainObject { SchoolLevelType schoolLevel; String otherSchoolLevel; } class candidacyProcess.InstitutionPrecedentDegreeInformation extends candidacyProcess.CandidacyPrecedentDegreeInformation { CycleType cycleType; } class candidacyProcess.ExternalPrecedentDegreeInformation extends candidacyProcess.CandidacyPrecedentDegreeInformation { String degreeDesignation; Integer conclusionYear; LocalDate conclusionDate; String conclusionGrade; Integer numberOfEnroledCurricularCourses; Integer numberOfApprovedCurricularCourses; BigDecimal gradeSum; BigDecimal approvedEcts; BigDecimal enroledEcts; } class candidacyProcess.over23.Over23IndividualCandidacyDegreeEntry extends DomainObject { Integer degreeOrder; } class residence.ResidenceYear extends DomainObject { Integer year; } class residence.ResidencePriceTable extends DomainObject { Integer paymentLimitDay; Money singleRoomValue; Money doubleRoomValue; } class residence.ResidenceMonth extends DomainObject { Month month; } class internship.InternshipCandidacySession extends DomainObject { Interval candidacyInterval; } class internship.InternshipCandidacy extends DomainObject { Integer candidacyCode (REQUIRED); DateTime candidacyDate (REQUIRED); String studentNumber; Integer studentYear; String degree; String branch; String name; Gender gender; String street; String area; String areaCode; String email; String telephone; String mobilePhone; LocalDate birthday; String parishOfBirth; String documentIdNumber; String emissionLocationOfDocumentId; LocalDate emissionDateOfDocumentId; LocalDate expirationDateOfDocumentId; String passportIdNumber; String emissionLocationOfPassport; LocalDate emissionDateOfPassport; LocalDate expirationDateOfPassport; LanguageKnowledgeLevel english; LanguageKnowledgeLevel french; LanguageKnowledgeLevel spanish; LanguageKnowledgeLevel german; Boolean previousCandidacy; } class QueueJob extends DomainObject { Boolean done; Integer failedCounter; DateTime requestDate; DateTime jobStartTime; DateTime jobEndTime; } class QueueJobWithFile extends QueueJob { String contentType; } class QueueJobResultFile extends documents.GeneratedDocument{} class reports.ParkingDataReportFile extends QueueJobWithFile { } class reports.GepReportFile extends QueueJobWithFile { String type; DegreeType degreeType; } class reports.EurAceReportFile extends reports.GepReportFile {} class reports.EctsLabelDegreeReportFile extends reports.GepReportFile {} class reports.EctsLabelCurricularCourseReportFile extends reports.GepReportFile {} class reports.StatusAndApprovalReportFile extends reports.GepReportFile {} class reports.EtiReportFile extends reports.GepReportFile {} class reports.CourseLoadAndResponsiblesReportFile extends reports.GepReportFile {} class reports.RegistrationReportFile extends reports.GepReportFile {} class reports.FlunkedReportFile extends reports.GepReportFile {} class reports.TeachersByShiftReportFile extends reports.GepReportFile {} class reports.CourseLoadReportFile extends reports.GepReportFile {} class reports.DissertationsProposalsReportFile extends reports.GepReportFile {} class reports.DissertationsWithExternalAffiliationsReportFile extends reports.GepReportFile {} class reports.TimetablesReportFile extends reports.GepReportFile {} class reports.TeachersListFromGiafReportFile extends reports.GepReportFile {} class reports.GraduationReportFile extends reports.GepReportFile {} class reports.TutorshipProgramReportFile extends reports.GepReportFile {} class reports.RaidesGraduationReportFile extends reports.GepReportFile {} class reports.RaidesDfaReportFile extends reports.GepReportFile {} class reports.RaidesPhdReportFile extends reports.GepReportFile {} class reports.RaidesSpecializationReportFile extends reports.GepReportFile {} class reports.SummaryOccupancyReportFile extends reports.GepReportFile {} class reports.WrittenEvaluationReportFile extends reports.GepReportFile {} class PublicRelationsStudentListQueueJob extends QueueJobWithFile{ Boolean active; Boolean concluded; DegreeType degreeType; } class TutorshipStudentLowPerformanceQueueJob extends QueueJobWithFile { PrescriptionEnum prescriptionEnum; } class StudentHighPerformanceQueueJob extends QueueJobWithFile { AcademicInterval executionInterval (REQUIRED); } class candidacyProcess.erasmus.reports.ErasmusCandidacyProcessReport extends QueueJobWithFile { } class student.scholarship.report.UTLScholarshipReport extends QueueJobWithFile { } class student.scholarship.report.UTLScholarshipSource extends File { } class student.Delegate extends DomainObject { } class student.YearDelegate extends student.Delegate { } class student.YearDelegateCourseInquiry extends DomainObject { Long answerDuration; DateTime responseDateTime; Integer workLoadClassification; String workLoadClassificationReasons; Integer enoughOnlineCUInformation; String enoughOnlineCUInformationReasons; Integer clearOnlineCUInformation; String clearOnlineCUInformationReasons; Integer explicitEvaluationMethods; String explicitEvaluationMethodsReasons; Integer evaluationMethodsWellApplied; String evaluationMethodsWellAppliedReasons; String evaluationMethodsDisclosedToWorkingStudents; String evaluationMethodsDisclosedToSpecialSeasonStudents; Integer evaluationDatesScheduleActiveParticipation; String evaluationDatesScheduleActiveParticipationReasons; Integer supportMaterialAvailableOnTime; String supportMaterialAvailableOnTimeReasons; Integer previousKnowlegdeArticulation; String previousKnowlegdeArticulationReasons; String suggestedBestPractices; String strongAndWeakPointsOfCUTeachingProcess; String finalCommentsAndImproovements; String reportDisclosureAuthorization; } class accessControl.PersistentAccessGroup extends DomainObject { DateTime created (REQUIRED); } class accessControl.academicAdministration.PersistentAcademicAuthorizationGroup extends accessControl.PersistentAccessGroup { AcademicOperationType operation; } class messaging.AnnouncementCategory extends DomainObject { MultiLanguageString name; AnnouncementCategoryType type; } class PublicCandidacyHashCode extends DomainObject { DateTime whenCreated; String email; String value; } class candidacyProcess.DegreeOfficePublicCandidacyHashCode extends PublicCandidacyHashCode { } /* Phd Module */ class phd.PhdProgram extends AcademicProgram { DateTime whenCreated; String creator; MultiLanguageString name; String acronym; } class phd.PhdProgramInformation extends DomainObject { LocalDate beginDate; BigDecimal minThesisEctsCredits; BigDecimal maxThesisEctsCredits; BigDecimal minStudyPlanEctsCredits; BigDecimal maxStudyPlanEctsCredits; Integer numberOfYears; Integer numberOfSemesters; } class phd.ExternalPhdProgram extends DomainObject { DateTime whenCreated; MultiLanguageString name; String acronym; PhdIndividualProgramCollaborationType forCollaborationType; } class phd.PhdProgramFocusArea extends DomainObject { DateTime whenCreated; MultiLanguageString name; } class phd.ThesisSubject extends DomainObject { MultiLanguageString name; MultiLanguageString description; String externalAdvisorName; } class phd.ThesisSubjectOrder extends DomainObject { Integer subjectOrder; } class phd.PhdProgramUnit extends organizationalStructure.Unit { } class phd.PhdProcessState extends DomainObject { DateTime whenCreated; DateTime stateDate (REQUIRED); String remarks; } class phd.PhdProgramProcessState extends phd.PhdProcessState { PhdIndividualProgramProcessState type; } class phd.PhdCandidacyProcessState extends phd.PhdProcessState { PhdProgramCandidacyProcessState type; } class phd.seminar.PublicPresentationSeminarState extends phd.PhdProcessState { PublicPresentationSeminarProcessStateType type; } class phd.thesis.PhdThesisProcessState extends phd.PhdProcessState { PhdThesisProcessStateType type; } class phd.candidacy.feedbackRequest.PhdCandidacyFeedbackState extends phd.PhdProcessState { PhdCandidacyFeedbackStateType type; } class phd.thesis.meeting.PhdMeetingSchedulingProcessState extends phd.PhdProcessState { PhdMeetingSchedulingProcessStateType type; } class phd.PhdProgramProcess extends caseHandling.Process { } class phd.PhdIndividualProgramProcess extends phd.PhdProgramProcess { String thesisTitle; String thesisTitleEn; String latexThesisTitle; String latexThesisTitleEn; PhdIndividualProgramCollaborationType collaborationType; String otherCollaborationType; Boolean qualificationExamsRequired; Boolean qualificationExamsPerformed; LocalDate whenFormalizedRegistration; LocalDate whenStartedStudies; } class phd.PhdIndividualProgramProcessNumber extends DomainObject { Integer year; Integer number; Integer phdStudentNumber; } class phd.candidacy.PhdProgramCandidacyProcess extends phd.PhdProgramProcess { LocalDate candidacyDate; Boolean validatedByCandidate; LocalDate whenRatified; } class phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestProcess extends phd.PhdProgramProcess { PhdCandidacySharedDocumentsList sharedDocuments; } class phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestElement extends DomainObject { String mailSubject; String mailBody; } class phd.PhdProgramProcessDocument extends File { PhdIndividualProgramDocumentType documentType; String remarks; Integer documentVersion; Boolean documentAccepted; } class phd.PhdThesisReportFeedbackDocument extends phd.PhdProgramProcessDocument { } class phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestDocument extends phd.PhdProgramProcessDocument { } class phd.thesis.meeting.PhdMeetingMinutesDocument extends phd.PhdProgramProcessDocument { } class phd.seminar.PublicPresentationSeminarProcess extends phd.PhdProgramProcess { LocalDate presentationRequestDate; LocalDate presentationDate; } class phd.serviceRequests.PhdAcademicServiceRequestDocument extends phd.PhdProgramProcessDocument { } class phd.serviceRequests.PhdStudentReingressionRequestDocument extends phd.serviceRequests.PhdAcademicServiceRequestDocument { } class phd.guidance.PhdGuidanceDocument extends phd.PhdProgramProcessDocument { } class phd.candidacy.PhdGuiderAcceptanceLetter extends phd.PhdProgramProcessDocument { } class phd.thesis.PhdThesisProcess extends phd.PhdProgramProcess { LocalDate whenThesisDiscussionRequired; LocalDate whenJuryRequired; LocalDate whenJuryValidated; LocalDate whenJuryDesignated; DateTime meetingDate; String meetingPlace; DateTime discussionDate; String discussionPlace; LocalDate whenFinalThesisRatified; PhdThesisFinalGrade finalGrade; LocalDate conclusionDate; PhdJuryElementsRatificationEntity phdJuryElementsRatificationEntity; String ratificationEntityCustomMessage; MultiLanguageString presidentTitle; } class phd.thesis.meeting.PhdMeetingSchedulingProcess extends phd.PhdProgramProcess { } class phd.thesis.meeting.PhdMeeting extends DomainObject { DateTime meetingDate; String meetingPlace; } class phd.thesis.ThesisJuryElement extends DomainObject { DateTime creationDate; Boolean reporter; Boolean expert; Integer elementOrder; } class phd.PhdProgramServiceAgreementTemplate extends accounting.ServiceAgreementTemplate { } class phd.candidacy.PHDProgramCandidacy extends candidacy.StudentCandidacy { } class phd.PhdParticipant extends DomainObject { DateTime whenCreated; String accessHashCode; PhdProcessAccessTypeList accessTypes; String password; String title; String category; String workLocation; String institution; } class phd.InternalPhdParticipant extends phd.PhdParticipant { } class phd.ExternalPhdParticipant extends phd.PhdParticipant { String name; String qualification; String address; String email; String phone; } class phd.candidacy.PhdProgramPublicCandidacyHashCode extends PublicCandidacyHashCode { } class phd.candidacy.PhdCandidacyReferee extends PublicCandidacyHashCode { String name; String institution; } class phd.candidacy.PhdCandidacyRefereeLetter extends DomainObject { String howLongKnownApplicant; String capacity; String comparisonGroup; String rankInClass; ApplicantOverallPromise academicPerformance; ApplicantOverallPromise socialAndCommunicationSkills; ApplicantOverallPromise potencialToExcelPhd; String comments; String refereeName; String refereePosition; String refereeInstitution; String refereeAddress; String refereeCity; String refereeZipCode; } class phd.candidacy.PhdCandidacyRefereeLetterFile extends phd.PhdProgramProcessDocument { } class phd.alert.PhdAlert extends Alert { } class phd.alert.PhdCustomAlert extends phd.alert.PhdAlert { Group targetGroup; Boolean sendEmail; LocalDate whenToFire; Boolean userDefined; Boolean shared; } class phd.alert.PhdCandidacyRefereeAlert extends phd.alert.PhdAlert { } class phd.alert.PublicPhdMissingCandidacyAlert extends phd.alert.PhdAlert { } class phd.alert.PublicPhdMissingCandidacyValidationAlert extends phd.alert.PhdAlert { } class phd.alert.PhdRegistrationFormalizationAlert extends phd.alert.PhdAlert { Integer maxDays; } class phd.alert.PhdFinalProofRequestAlert extends phd.alert.PhdAlert { } class phd.alert.PhdPublicPresentationSeminarAlert extends phd.alert.PhdAlert { } class phd.alert.PhdReporterReviewAlert extends phd.alert.PhdAlert { } class phd.alert.PhdAlertMessage extends DomainObject { DateTime whenCreated; MultiLanguageString subject; MultiLanguageString body; Boolean readed; } class phd.PhdStudyPlan extends DomainObject { DateTime whenCreated; String createdBy; Boolean exempted; } class phd.PhdStudyPlanEntry extends DomainObject { PhdStudyPlanEntryType type; DateTime whenCreated; String createdBy; } class phd.ExternalPhdStudyPlanEntry extends phd.PhdStudyPlanEntry { String courseName; } class phd.InternalPhdStudyPlanEntry extends phd.PhdStudyPlanEntry { } class phd.notification.PhdNotification extends DomainObject { Integer year; Integer number; DateTime whenCreated; String createdBy; PhdNotificationType type; PhdNotificationState state; } class phd.debts.PhdEvent extends accounting.AcademicEvent { } class phd.candidacy.PhdProgramCandidacyEvent extends phd.debts.PhdEvent { } class phd.candidacy.PhdProgramCandidacyPR extends accounting.postingRules.FixedAmountPR { } class phd.debts.PhdRegistrationFee extends phd.debts.PhdEvent { } class phd.debts.PhdRegistrationFeePR extends accounting.postingRules.FixedAmountWithPenaltyPR { } class phd.debts.PhdThesisRequestFee extends phd.debts.PhdEvent { } class phd.debts.PhdThesisRequestFeePR extends accounting.postingRules.FixedAmountPR { } class phd.debts.PhdEventExemption extends accounting.Exemption { Money value; } class phd.debts.PhdEventExemptionJustification extends accounting.events.ExemptionJustification { PhdEventExemptionJustificationType justificationType; LocalDate dispatchDate; } class phd.debts.PhdRegistrationFeePenaltyExemption extends accounting.events.PenaltyExemption { } class phd.PhdConfigurationIndividualProgramProcess extends DomainObject { Boolean migratedProcess; Boolean generateAlert; Boolean isBolonha; } class phd.migration.PhdMigrationProcess extends DomainObject { DateTime creationDate; DateTime startTime; DateTime endTime; } class phd.migration.PhdMigrationIndividualProcessData extends DomainObject { Integer number; String data; String parseLog; PhdMigrationProcessStateType migrationStatus; String migrationParseLog; DateTime migrationDate; } class phd.migration.PhdMigrationIndividualPersonalData extends DomainObject { Integer number; String data; String parseLog; } class phd.migration.PhdMigrationGuiding extends DomainObject { String teacherNumber; String data; String institution; String parseLog; } class phd.email.PhdEmail extends Alert { String additionalTo; String additionalBcc; } class phd.email.PhdProgramEmail extends phd.email.PhdEmail { } class phd.email.PhdIndividualProgramProcessEmail extends phd.email.PhdEmail { } class phd.PhdProgramContextPeriod extends DomainObject { DateTime beginDate; DateTime endDate; } class phd.conclusion.PhdConclusionProcess extends DomainObject { DateTime whenCreated; Integer version; LocalDate conclusionDate; PhdThesisFinalGrade finalGrade; BigDecimal thesisEctsCredits; BigDecimal studyPlanEctsCredits; } class phd.log.PhdLogEntry extends DomainObject { DateTime whenOccured; String state; String message; String activityClassName; } /* End of Phd Module */ class PendingRequest extends DomainObject{ DateTime generationDate; String url; Boolean post; String buildVersion; } class PendingRequestParameter extends DomainObject{ Boolean attribute; String parameterKey; String parameterValue; } class candidacy.MeasurementTest extends DomainObject { EntryPhase entryPhase; } class candidacy.MeasurementTestShift extends DomainObject { String name; DateTime date; } class candidacy.MeasurementTestRoom extends DomainObject { String name; Integer capacity; Integer roomOrder; } class TeacherCreditsQueueJob extends QueueJob{ } class credits.CreditsPersonFunctionsSharedQueueJob extends QueueJob{ } class administrativeOffice.curriculumValidation.DocumentPrintRequest extends DomainObject { String newConclusionDateValue; String newGraduatedTitleValue; String newDegreeDescriptionValue; DateTime whenRequested; } class ImportRegister extends DomainObject { String remoteExternalOid; } class PartyImportRegister extends ImportRegister { } class AccountabilityImportRegister extends ImportRegister { } class ImportRegisterLog extends DomainObject { DateTime instant; } class candidacyProcess.mobility.MobilityCoordinator extends DomainObject { } class CoordinatorLog extends DomainObject { DateTime date; OperationType operation; } /* Export Payments */ class accounting.events.export.DebtsFile extends File { String errors; } class accounting.events.export.SIBSOutgoingPaymentFile extends accounting.events.export.DebtsFile { DateTime successfulSentDate; PrintedPaymentCodes printedPaymentCodes; } class accounting.events.export.SIBSOutgoingPaymentQueueJob extends QueueJob { DateTime lastSuccessfulSentPaymentFileDate; } class residence.StudentsPerformanceReport extends QueueJobWithFile { } class alumni.AlumniReportFile extends QueueJobWithFile { boolean fullReport; boolean onlyRegisteredAlumni; } class accounting.report.GratuityReportQueueJob extends QueueJobWithFile { GratuityReportQueueJobType type; DateTime beginDate; DateTime endDate; } class accounting.report.events.EventReportQueueJob extends QueueJobWithFile { Boolean exportGratuityEvents; Boolean exportAcademicServiceRequestEvents; Boolean exportIndividualCandidacyEvents; Boolean exportPhdEvents; Boolean exportResidenceEvents; Boolean exportOthers; Boolean forDegreeAdministrativeOffice; Boolean forMasterDegreeAdministrativeOffice; LocalDate beginDate; LocalDate endDate; String errors; } class accounting.report.events.EventReportQueueJobFile extends File { } class ProfessorshipPermissions extends DomainObject { boolean personalization; boolean siteArchive; boolean announcements; boolean sections; boolean summaries; boolean students; boolean planning; boolean evaluationSpecific; boolean evaluationWorksheets; boolean evaluationProject; boolean evaluationTests; boolean evaluationExams; boolean evaluationFinal; boolean worksheets; boolean groups; boolean shift; boolean evaluationMethod; boolean bibliografy; } class student.importation.DgesBaseProcess extends QueueJobWithFile { EntryPhase entryPhase; } class student.importation.DgesStudentImportationProcess extends student.importation.DgesBaseProcess { } class student.importation.DgesStudentImportationFile extends File { } class student.importation.ExportDegreeCandidaciesByDegreeForPasswordGeneration extends student.importation.DgesBaseProcess { } class student.importation.ExportExistingStudentsFromImportationProcess extends student.importation.DgesBaseProcess { } class ExternalUser extends DomainObject { String username; String passwordHash; } /* Students, Teacher and Courses Inquiries */ class inquiries.InquiryTemplate extends DomainObject { DateTime responsePeriodBegin; DateTime responsePeriodEnd; MultiLanguageString inquiryMessage; } class inquiries.StudentInquiryTemplate extends inquiries.InquiryTemplate { } class inquiries.CurricularCourseInquiryTemplate extends inquiries.StudentInquiryTemplate { CompetenceCourseType courseType; } class inquiries.StudentTeacherInquiryTemplate extends inquiries.StudentInquiryTemplate { } class inquiries.RoomInquiryTemplate extends inquiries.StudentInquiryTemplate { } class inquiries.DelegateInquiryTemplate extends inquiries.InquiryTemplate { } class inquiries.TeacherInquiryTemplate extends inquiries.InquiryTemplate { } class inquiries.RegentInquiryTemplate extends inquiries.InquiryTemplate { } class inquiries.CoordinatorInquiryTemplate extends inquiries.InquiryTemplate { Boolean shared; } class inquiries.ResultsInquiryTemplate extends inquiries.InquiryTemplate { } class inquiries.StudentRegistrationInquiryTemplate extends inquiries.InquiryTemplate { } class inquiries.StudentCycleInquiryTemplate extends inquiries.InquiryTemplate { } class inquiries.Student1rstCycleInquiryTemplate extends inquiries.StudentCycleInquiryTemplate { } class inquiries.Student2ndCycleInquiryTemplate extends inquiries.StudentCycleInquiryTemplate { } class inquiries.StudentOtherCycleInquiryTemplate extends inquiries.StudentCycleInquiryTemplate { } class inquiries.InquiryBlock extends DomainObject { Integer blockOrder; } class inquiries.InquiryGroupQuestion extends DomainObject { Integer groupOrder; Boolean required; GroupResultType groupResultType; } class inquiries.InquiryQuestionHeader extends DomainObject { MultiLanguageString title; MultiLanguageString toolTip; QuestionScale scaleHeaders; } class inquiries.InquiryQuestion extends DomainObject { MultiLanguageString label; MultiLanguageString toolTip; Boolean required; Boolean showRequiredMark; Boolean newRow; Boolean autofit; Boolean hasClassification; Boolean presentResults; Integer questionOrder; } class inquiries.InquiryCheckBoxQuestion extends inquiries.InquiryQuestion { } class inquiries.InquiryTextBoxQuestion extends inquiries.InquiryQuestion { Boolean textArea; } class inquiries.InquiryRadioGroupQuestion extends inquiries.InquiryQuestion { Boolean isMatrix; } class inquiries.QuestionCondition extends DomainObject { } class inquiries.MandatoryCondition extends inquiries.QuestionCondition { String conditionValues; Boolean dependsResult; Boolean showIfConditionIsFalse; Integer minimumNumberOfChars; } class inquiries.ECTSVisibleCondition extends inquiries.QuestionCondition { Double ectsDifference; Boolean workLoadExcessive; } class inquiries.StudentInquiryRegistry extends DomainObject { InquiriesRegistryState state; Integer weeklyHoursSpentPercentage; Integer attendenceClassesPercentage; Double studyDaysSpentInExamsSeason; Double estimatedECTS; } class inquiries.StudentInquiryExecutionPeriod extends DomainObject { Boolean dontWantToRespond; Integer weeklyHoursSpentInClassesSeason; } class inquiries.InquiryAnswer extends DomainObject { DateTime responseDateTime; } class inquiries.InquiryCourseAnswer extends inquiries.InquiryAnswer { Integer weeklyHoursSpentPercentage; Integer weeklyHoursSpentInAutonomousWork; Double studyDaysSpentInExamsSeason; Integer attendenceClassesPercentage; Integer numberOfEnrolments; Boolean committedFraud; InquiryGradesInterval grade; RegistrationAgreement studentType; InquiryGradesInterval entryGrade; Long answerDuration; InquiryNotAnsweredJustification notAnsweredJustification; String notAnsweredOtherJustification; } class inquiries.InquiryStudentTeacherAnswer extends inquiries.InquiryAnswer { ShiftType shiftType; } class inquiries.InquiryRoomAnswer extends inquiries.InquiryAnswer { } class inquiries.InquiryDelegateAnswer extends inquiries.InquiryAnswer { Boolean allowAcademicPublicizing; } class inquiries.InquiryTeacherAnswer extends inquiries.InquiryAnswer { Boolean allowAcademicPublicizing; } class inquiries.InquiryRegentAnswer extends inquiries.InquiryAnswer { } class inquiries.InquiryCoordinatorAnswer extends inquiries.InquiryAnswer { } class inquiries.InquiryStudentCycleAnswer extends inquiries.InquiryAnswer { } class inquiries.QuestionAnswer extends DomainObject { String answer; } class inquiries.InquiryResult extends DomainObject { InquiryResultType resultType; InquiryConnectionType connectionType; String value; String scaleValue; ResultClassification resultClassification; ShiftType shiftType; DateTime lastModifiedDate; DateTime resultDate; } class inquiries.InquiryResultComment extends DomainObject { String comment; Group allowedToView; Integer resultOrder; ResultPersonCategory personCategory; } class inquiries.InquiryGlobalComment extends DomainObject { Boolean commentOnTeacher; } class inquiries.ExecutionCourseAudit extends DomainObject { String measuresToTake; String conclusions; Boolean approvedByStudent; Boolean approvedByTeacher; Boolean availableProcess; } class inquiries.ExecutionCourseAuditFile extends File { } /* End of Inquiries */ class careerWorkshop.CareerWorkshopApplication extends DomainObject { String sessions; String themes; DateTime sealStamp; } class careerWorkshop.CareerWorkshopApplicationEvent extends DomainObject { DateTime beginDate; DateTime endDate; DateTime lastUpdate; String relatedInformation; } class careerWorkshop.CareerWorkshopConfirmation extends DomainObject { Boolean confirmation; String confirmationCode; DateTime sealStamp; } class careerWorkshop.CareerWorkshopConfirmationEvent extends DomainObject { DateTime beginDate; DateTime endDate; DateTime lastUpdate; } class phd.debts.PhdGratuityEvent extends phd.debts.PhdEvent { Integer year (REQUIRED); DateTime phdGratuityDate; } class phd.debts.PhdGratuityPR extends accounting.PostingRule { Money gratuity; Double fineRate; } class phd.debts.PhdGratuityPaymentPeriod extends DomainObject { Partial start; Partial end; Partial lastPayment; } class phd.debts.ExternalScholarshipPhdGratuityContribuitionEvent extends accounting.Event {} class phd.debts.ExternalScholarshipPhdGratuityContribuitionPR extends accounting.PostingRule {} class phd.debts.PhdGratuityExternalScholarshipExemption extends phd.debts.PhdEventExemption{} class phd.debts.PhdGratuityFineExemption extends phd.debts.PhdEventExemption{ } class phd.debts.PhdGratuityPriceQuirk extends DomainObject { int year; Money gratuity; } class util.MessageTask extends .pt.ist.fenixframework.plugins.scheduler.domain.Task { } class util.EmailTask extends .pt.ist.fenixframework.plugins.scheduler.domain.Task { } class raides.DegreeDesignation extends DomainObject { String code; String description; } class raides.DegreeClassification extends DomainObject { String code; String description1; String description2; String abbreviation; Integer classificationOrder; } class student.PersonalIngressionData extends DomainObject { Boolean dislocatedFromPermanentResidence; AcademicalInstitutionType highSchoolType; GrantOwnerType grantOwnerType; MaritalStatus maritalStatus; ProfessionType professionType; ProfessionalSituationConditionType professionalCondition; SchoolLevelType motherSchoolLevel; ProfessionType motherProfessionType; ProfessionalSituationConditionType motherProfessionalCondition; SchoolLevelType fatherSchoolLevel; ProfessionType fatherProfessionType; ProfessionalSituationConditionType fatherProfessionalCondition; SchoolLevelType spouseSchoolLevel; ProfessionType spouseProfessionType; ProfessionalSituationConditionType spouseProfessionalCondition; DateTime lastModifiedDate; } /* * Relations definitions * */ /* Students, Teacher and Courses Inquiries */ relation DomainOperationLogPerson { DomainOperationLog playsRole domainOperationLogs { multiplicity*; } Person playsRole person{ multiplicity 1..1; } } relation DomainOperationLogRootDomainObject { DomainOperationLog playsRole domainOperationLogs { multiplicity*; } RootDomainObject playsRole rootDomainObject{ multiplicity 1..1; } } relation ExecutionCourseExecutionCourseLog { ExecutionCourse playsRole executionCourse{ multiplicity 1..1; } ExecutionCourseLog playsRole executionCourseLogs { multiplicity*; } } relation RootDomainObjectInquiryTemplate { RootDomainObject playsRole rootDomainObject; inquiries.InquiryTemplate playsRole inquiryTemplates { multiplicity *; } } relation RootDomainObjectInquiryBlock { RootDomainObject playsRole rootDomainObject; inquiries.InquiryBlock playsRole inquiryBlocks { multiplicity *; } } relation RootDomainObjectInquiryGroupQuestion { RootDomainObject playsRole rootDomainObject; inquiries.InquiryGroupQuestion playsRole inquiryGroupsQuestions { multiplicity *; } } relation RootDomainObjectInquiryQuestion { RootDomainObject playsRole rootDomainObject; inquiries.InquiryQuestion playsRole inquiryQuestions { multiplicity *; } } relation RootDomainObjectInquiryQuestionHeader { RootDomainObject playsRole rootDomainObject; inquiries.InquiryQuestionHeader playsRole inquiryQuestionHeaders { multiplicity *; } } relation RootDomainObjectQuestionCondition { RootDomainObject playsRole rootDomainObject; inquiries.QuestionCondition playsRole questionsConditions { multiplicity *; } } relation RootDomainObjectStudentInquiryRegistry { RootDomainObject playsRole rootDomainObject; inquiries.StudentInquiryRegistry playsRole studentsInquiryRegistries { multiplicity *; } } relation RootDomainObjectInquiryAnswer { RootDomainObject playsRole rootDomainObject; inquiries.InquiryAnswer playsRole inquiriesAnswers { multiplicity *; } } relation RootDomainObjectQuestionAnswer { RootDomainObject playsRole rootDomainObject; inquiries.QuestionAnswer playsRole questionAnswers { multiplicity *; } } relation RootDomainObjectStudentInquiryExecutionPeriod { RootDomainObject playsRole rootDomainObject; inquiries.StudentInquiryExecutionPeriod playsRole studentsInquiriesExecutionPeriod { multiplicity *; } } relation RootDomainObjectInquiryResult { RootDomainObject playsRole rootDomainObject; inquiries.InquiryResult playsRole inquiryResults { multiplicity *; } } relation RootDomainObjectInquiryResultComment { RootDomainObject playsRole rootDomainObject; inquiries.InquiryResultComment playsRole inquiryResultComments { multiplicity *; } } relation RootDomainObjectInquiryGlobalComment { RootDomainObject playsRole rootDomainObject; inquiries.InquiryGlobalComment playsRole inquiryGlobalComments { multiplicity *; } } relation RootDomainObjectExecutionCourseAudit { RootDomainObject playsRole rootDomainObject; inquiries.ExecutionCourseAudit playsRole executionCourseAudits { multiplicity *; } } relation InquiryTemplateExecutionPeriod { inquiries.InquiryTemplate playsRole inquiriesTemplates { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation InquiryTemplateInquiryBlock { inquiries.InquiryTemplate playsRole inquiries { multiplicity *; } inquiries.InquiryBlock playsRole inquiryBlocks { multiplicity *; } } relation InquiryBlockInquiryGroupQuestion { inquiries.InquiryBlock playsRole inquiryBlock; inquiries.InquiryGroupQuestion playsRole inquiryGroupsQuestions { multiplicity *; } } relation ResultQuestionInquiryBlocks { inquiries.InquiryQuestion playsRole resultQuestion; inquiries.InquiryBlock playsRole associatedBlocks { multiplicity *; } } relation ResultQuestionInquiryResultBlocks { inquiries.InquiryQuestion playsRole groupResultQuestion; inquiries.InquiryBlock playsRole associatedResultBlocks { multiplicity *; } } relation InquiryGroupQuestionInquiryQuestion { inquiries.InquiryGroupQuestion playsRole inquiryGroupQuestion; inquiries.InquiryQuestion playsRole inquiryQuestions { multiplicity *; } } relation InquiryGroupQuestionInquiryQuestionResult { inquiries.InquiryGroupQuestion playsRole checkboxGroupQuestion; inquiries.InquiryQuestion playsRole resultQuestion; } relation InquiryGroupQuestionInquiryQuestionHeader { inquiries.InquiryGroupQuestion playsRole inquiryGroupQuestion; inquiries.InquiryQuestionHeader playsRole inquiryQuestionHeader; } relation InquiryGroupQuestionInquiryQuestionHeaderResult { inquiries.InquiryGroupQuestion playsRole resultGroupQuestion; inquiries.InquiryQuestionHeader playsRole resultQuestionHeader; } relation InquiryBlockInquiryQuestionHeader { inquiries.InquiryBlock playsRole inquiryBlock; inquiries.InquiryQuestionHeader playsRole inquiryQuestionHeader; } relation InquiryQuestionInquiryQuestionHeader { inquiries.InquiryQuestion playsRole inquiryQuestion; inquiries.InquiryQuestionHeader playsRole inquiryQuestionHeader; } relation InquiryQuestionQuestionCondition { inquiries.QuestionCondition playsRole questionConditions { multiplicity *; } inquiries.InquiryQuestion playsRole inquiryQuestion; } relation InquiryQuestionDependentQuestionCondition { inquiries.QuestionCondition playsRole dependentQuestionCondition; inquiries.InquiryQuestion playsRole inquiryDependentQuestion; } relation InquiryQuestionGroupQuestionCondition { inquiries.QuestionCondition playsRole questionConditions { multiplicity *; } inquiries.InquiryGroupQuestion playsRole inquiryGroupQuestion; } relation StudentInquiryRegistryExecutionCourse { inquiries.StudentInquiryRegistry playsRole studentsInquiryRegistries { multiplicity *; } ExecutionCourse playsRole executionCourse; } relation StudentInquiryRegistryExecutionPeriod { inquiries.StudentInquiryRegistry playsRole studentsInquiryRegistries { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation StudentInquiryRegistryCurricularCourse { inquiries.StudentInquiryRegistry playsRole studentsInquiryRegistries { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation StudentInquiryRegistryRegistration { inquiries.StudentInquiryRegistry playsRole studentsInquiryRegistries { multiplicity *; } student.Registration playsRole registration; } relation StudentInquiryRegistryStudent { inquiries.StudentInquiryRegistry playsRole studentsInquiryRegistries { multiplicity *; } student.Student playsRole student; } relation StudentInquiryExecutionPeriodStudent { student.Student playsRole student; inquiries.StudentInquiryExecutionPeriod playsRole studentsInquiriesExecutionPeriods { multiplicity *; } } relation ExecutionPeriodStudentInquiryExecutionPeriod { inquiries.StudentInquiryExecutionPeriod playsRole studentsInquiriesExecutionPeriod { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation InquiryCourseAnswerExecutionCourse { inquiries.InquiryCourseAnswer playsRole inquiryCourseAnswers { multiplicity *; } ExecutionCourse playsRole executionCourse; } relation InquiryCourseAnswerExecutionDegree { inquiries.InquiryCourseAnswer playsRole inquiryCourseAnswers { multiplicity *; } ExecutionDegree playsRole executionDegreeCourse; } relation InquiryCourseAnswerExecutionDegreeStudent { inquiries.InquiryCourseAnswer playsRole studentInquiryCourseAnswers { multiplicity *; } ExecutionDegree playsRole executionDegreeStudent; } relation InquiryCourseAnswerExecutionSemester { inquiries.InquiryCourseAnswer playsRole inquiryCourseAnswers { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation InquiryStudentTeacherAnswerProfessorship { inquiries.InquiryStudentTeacherAnswer playsRole inquiryStudentTeacherAnswers { multiplicity *; } Professorship playsRole professorship; } relation InquiryStudentTeacherAnswerInquiryCourseAnswer { inquiries.InquiryStudentTeacherAnswer playsRole associatedInquiryStudentTeacherAnswers { multiplicity *; } inquiries.InquiryCourseAnswer playsRole inquiryCourseAnswer; } relation InquiryCourseAnswerShift { Shift playsRole enrolledShifts { multiplicity *; } inquiries.InquiryCourseAnswer playsRole inquiryCoursesAnswers { multiplicity *; } } relation InquiryRoomAnswerRoom { inquiries.InquiryRoomAnswer playsRole inquiryRoomAnswers { multiplicity *; } space.AllocatableSpace playsRole room; } relation QuestionAnswerInquiryAnswer { inquiries.InquiryAnswer playsRole inquiryAnswer; inquiries.QuestionAnswer playsRole questionAnswers { multiplicity *; } } relation QuestionAnswerQuestion { inquiries.QuestionAnswer playsRole questionAnswers { multiplicity *; } inquiries.InquiryQuestion playsRole inquiryQuestion; } relation InquiryResultInquiryQuestion { inquiries.InquiryQuestion playsRole inquiryQuestion; inquiries.InquiryResult playsRole inquiryResults { multiplicity *; } } relation InquiryResultProfessorship { Professorship playsRole professorship; inquiries.InquiryResult playsRole inquiryResults { multiplicity *; } } relation InquiryResultExecutionPeriod { ExecutionSemester playsRole executionPeriod; inquiries.InquiryResult playsRole inquiryResults { multiplicity *; } } relation InquiryResultExecutionCourse { ExecutionCourse playsRole executionCourse; inquiries.InquiryResult playsRole inquiryResults { multiplicity *; } } relation InquiryResultExecutionDegree { ExecutionDegree playsRole executionDegree; inquiries.InquiryResult playsRole inquiryResults { multiplicity *; } } relation InquiryResultInquiryResultComment { inquiries.InquiryResult playsRole inquiryResult; inquiries.InquiryResultComment playsRole inquiryResultComments { multiplicity *; } } relation InquiryResultCommentPerson { Person playsRole person; inquiries.InquiryResultComment playsRole inquiryResultComments { multiplicity *; } } relation InquiryGlobalCommentInquiryResultComment { inquiries.InquiryGlobalComment playsRole inquiryGlobalComment; inquiries.InquiryResultComment playsRole inquiryResultComments { multiplicity *; } } relation InquiryDelegateAnswerExecutionCourse { ExecutionCourse playsRole executionCourse; inquiries.InquiryDelegateAnswer playsRole inquiryDelegatesAnswers { multiplicity *; } } relation InquiryDelegateAnswerExecutionDegree { ExecutionDegree playsRole executionDegree; inquiries.InquiryDelegateAnswer playsRole inquiryDelegatesAnswers { multiplicity *; } } relation InquiryDelegateAnswerDelegate { student.YearDelegate playsRole delegate; inquiries.InquiryDelegateAnswer playsRole inquiryDelegateAnswers { multiplicity *; } } relation InquiryTeacherAnswerProfessorship { Professorship playsRole professorship { multiplicity 1..1; } inquiries.InquiryTeacherAnswer playsRole inquiryTeacherAnswer; } relation InquiryRegentAnswerProfessorship { Professorship playsRole professorship { multiplicity 1..1; } inquiries.InquiryRegentAnswer playsRole inquiryRegentAnswer; } relation InquiryStudentCycleAnswerRegistration { student.Registration playsRole registration; inquiries.InquiryStudentCycleAnswer playsRole inquiryStudentCycleAnswer; } relation InquiryStudentCycleAnswerPhdIndividualProgramProcess { phd.PhdIndividualProgramProcess playsRole phdProcess; inquiries.InquiryStudentCycleAnswer playsRole inquiryStudentCycleAnswer; } relation InquiryCoordinatorAnswerCoordinator { Coordinator playsRole coordinator; inquiries.InquiryCoordinatorAnswer playsRole inquiryCoordinatorAnswers { multiplicity *; } } relation InquiryCoordinatorAnswerExecutionDegree { ExecutionDegree playsRole executionDegree { multiplicity 1..1; } inquiries.InquiryCoordinatorAnswer playsRole inquiryCoordinationAnswers { multiplicity *; } } relation InquiryCoordinatorAnswerExecutionSemester { ExecutionSemester playsRole executionSemester { multiplicity 1..1; } inquiries.InquiryCoordinatorAnswer playsRole inquiryCoordinatorsAnswers { multiplicity *; } } relation InquiryCoordinatorAnswerUpdatedByPerson { Person playsRole lastUpdatedBy; inquiries.InquiryCoordinatorAnswer playsRole inquiryCoordinatorsAnswers { multiplicity *; } } relation InquiryGlobalCommentExecutionSemester { ExecutionSemester playsRole executionSemester; inquiries.InquiryGlobalComment playsRole inquiryGlobalComments { multiplicity *; } } relation InquiryGlobalCommentExecutionCourse { ExecutionCourse playsRole executionCourse; inquiries.InquiryGlobalComment playsRole inquiryGlobalComments { multiplicity *; } } relation InquiryGlobalCommentExecutionDegree { ExecutionDegree playsRole executionDegree; inquiries.InquiryGlobalComment playsRole inquiryGlobalComments { multiplicity *; } } relation InquiryGlobalCommentPerson { Person playsRole teacher; inquiries.InquiryGlobalComment playsRole inquiryGlobalComments { multiplicity *; } } relation ExecutionCourseAuditExecutionCourse { ExecutionCourse playsRole executionCourse { multiplicity 1..1; } inquiries.ExecutionCourseAudit playsRole executionCourseAudit; } relation ExecutionCourseAuditTeacherAuditor { Teacher playsRole teacherAuditor { multiplicity 1..1; } inquiries.ExecutionCourseAudit playsRole executionCourseAudits { multiplicity *; } } relation ExecutionCourseAuditStudentAuditor { student.Student playsRole studentAuditor { multiplicity 1..1; } inquiries.ExecutionCourseAudit playsRole executionCourseAudits { multiplicity *; } } relation ExecutionCourseAuditFileExecutionCourseAudit { inquiries.ExecutionCourseAuditFile playsRole executionCourseAuditFiles { multiplicity *; } inquiries.ExecutionCourseAudit playsRole executionCourseAudit; } /* End of Inquiries */ relation RootDomainObjectMeasurementTest { RootDomainObject playsRole rootDomainObject; candidacy.MeasurementTest playsRole measurementTests { multiplicity *; } } relation RootDomainObjectMeasurementTestShift { RootDomainObject playsRole rootDomainObject; candidacy.MeasurementTestShift playsRole measurementTestShifts { multiplicity *; } } relation RootDomainObjectMeasurementTestRoom { RootDomainObject playsRole rootDomainObject; candidacy.MeasurementTestRoom playsRole measurementTestRooms { multiplicity *; } } relation RegistrationMeasurementTestRoom { candidacy.MeasurementTestRoom playsRole measurementTestRoom; student.Registration playsRole registrations { multiplicity *; } } relation MeasurementTestShiftDegreeCurricularPlan { candidacy.MeasurementTestShift playsRole shift; DegreeCurricularPlan playsRole forDegreeCurricularPlan { multiplicity *; } } relation MeasurementTestShiftMeasurementTestRoom { candidacy.MeasurementTestShift playsRole shift; candidacy.MeasurementTestRoom playsRole rooms { multiplicity *; } } relation MeasurementTestShiftMeasurementTest { candidacy.MeasurementTest playsRole test; candidacy.MeasurementTestShift playsRole shifts { multiplicity *; } } relation MeasurementTestExecutionYear { ExecutionYear playsRole executionYear; candidacy.MeasurementTest playsRole measurementTests { multiplicity *; } } relation MeasurementTestCampus { space.Campus playsRole campus; candidacy.MeasurementTest playsRole measurementTests { multiplicity *; } } /* Phd Module */ relation PhdProgramRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.PhdProgram playsRole phdPrograms { multiplicity *; } } relation PhdProgramInformationRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.PhdProgramInformation playsRole phdProgramInformations { multiplicity *; } } relation PhdProgramPhdProgramInformation { phd.PhdProgram playsRole phdProgram { multiplicity 1; } phd.PhdProgramInformation playsRole phdProgramInformations { multiplicity *; } } relation PhdProgramFocusAreaRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.PhdProgramFocusArea playsRole phdProgramFocusAreas { multiplicity *; } } relation ThesisSubjectsRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.ThesisSubject playsRole thesisSubjects { multiplicity *; } } relation PhdProgramFocusAreaThesisSubjects { phd.ThesisSubject playsRole thesisSubjects { multiplicity *; } phd.PhdProgramFocusArea playsRole phdProgramFocusArea; } relation TeacherThesisSubjects { phd.ThesisSubject playsRole thesisSubjects { multiplicity *; } Teacher playsRole teacher; } relation ThesisSubjectOrdersRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.ThesisSubjectOrder playsRole thesisSubjectOrders { multiplicity *; } } relation ThesisSubjectOrdersThesisSubject { phd.ThesisSubject playsRole thesisSubject; phd.ThesisSubjectOrder playsRole thesisSubjectOrders { multiplicity *; } } relation PhdIndividualProgramProcessThesisSubjectsOrders { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcess; phd.ThesisSubjectOrder playsRole thesisSubjectOrders { multiplicity *; } } relation PhdProgramPhdProgramFocusArea { phd.PhdProgram playsRole phdPrograms { multiplicity *; } phd.PhdProgramFocusArea playsRole phdProgramFocusAreas { multiplicity *; } } relation PhdIndividualProgramProcessNumberRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.PhdIndividualProgramProcessNumber playsRole phdIndividualProcessNumbers { multiplicity *; } } relation PhdIndividualProgramProcessNumberPhdIndividualProgramProcess { phd.PhdIndividualProgramProcess playsRole process; phd.PhdIndividualProgramProcessNumber playsRole phdIndividualProcessNumber; } relation PhdIndividualProgramProcessPhdProcessState { phd.PhdIndividualProgramProcess playsRole process; phd.PhdProgramProcessState playsRole states { multiplicity *; } } relation PhdProgramPhdProgramUnit { phd.PhdProgram playsRole phdProgram; phd.PhdProgramUnit playsRole phdProgramUnit; } relation PhdProgramDegree { phd.PhdProgram playsRole phdProgram; Degree playsRole degree; } relation PhdProgramPhdIndividualProgramProcess { phd.PhdProgram playsRole phdProgram; phd.PhdIndividualProgramProcess playsRole individualProgramProcesses { multiplicity *; } } relation ExternalPhdProgramIndividualProgramProcess { phd.ExternalPhdProgram playsRole externalPhdProgram; phd.PhdIndividualProgramProcess playsRole individualProgramProcesses { multiplicity *; } } relation PhdProgramFocusAreaPhdIndividualProgramProcess { phd.PhdProgramFocusArea playsRole phdProgramFocusArea; phd.PhdIndividualProgramProcess playsRole individualProgramProcesses { multiplicity *; } } relation PhdIndividualProgramProcessPerson { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcesses { multiplicity *; } Person playsRole person; } relation PhdIndividualProgramProcessRegistration { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcess; student.Registration playsRole registration; } relation PhdIndividualProgramProcessPrecedentDegreeInformations { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcess; student.PrecedentDegreeInformation playsRole precedentDegreeInformations { multiplicity *; } } relation PhdIndividualProgramProcessPhdProgramCandidacyProcess { phd.PhdIndividualProgramProcess playsRole individualProgramProcess; phd.candidacy.PhdProgramCandidacyProcess playsRole candidacyProcess; } relation PhdCandidacyFeedbackRequestProcessPhdProgramCandidacyProcess { phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestProcess playsRole feedbackRequest; phd.candidacy.PhdProgramCandidacyProcess playsRole candidacyProcess; } relation PhdProgramCandidacyProcessPhdProgramCandidacyEvent { phd.candidacy.PhdProgramCandidacyProcess playsRole candidacyProcess; phd.candidacy.PhdProgramCandidacyEvent playsRole event; } relation PhdIndividualProgramProcessPhdRegistrationFee { phd.PhdIndividualProgramProcess playsRole process; phd.debts.PhdRegistrationFee playsRole registrationFee; } relation PhdIndividualProgramProcessPhdThesisRequestFee { phd.PhdIndividualProgramProcess playsRole process; phd.debts.PhdThesisRequestFee playsRole thesisRequestFee; } relation PhdProgramCandidacyProcessPhdProgramCandidacy { phd.candidacy.PhdProgramCandidacyProcess playsRole candidacyProcess; phd.candidacy.PHDProgramCandidacy playsRole candidacy; } relation PhdIndividualProgramProcessExecutionYear { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcesses { multiplicity *; } ExecutionYear playsRole executionYear; } relation PhdProgramServiceAgreementTemplatePhdProgram { phd.PhdProgramServiceAgreementTemplate playsRole serviceAgreementTemplate; phd.PhdProgram playsRole phdProgram; } relation PhdProgramProcessDocumentPhdProgramProcess { phd.PhdProgramProcess playsRole phdProgramProcess; phd.PhdProgramProcessDocument playsRole documents { multiplicity *; } } relation PhdMeetingPhdMeetingMinutesDocument { phd.thesis.meeting.PhdMeeting playsRole phdMeeting; phd.thesis.meeting.PhdMeetingMinutesDocument playsRole documents { multiplicity *; } } relation ThesisJuryElementReportFeedbackDocuments { phd.thesis.ThesisJuryElement playsRole juryElement; phd.PhdThesisReportFeedbackDocument playsRole feedbackDocuments { multiplicity *; } } relation PhdCandidacyFeedbackRequestElementDocuments { phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestElement playsRole element; phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestDocument playsRole feedbackDocuments { multiplicity *; } } relation PhdProgramProcessDocumentPerson { Person playsRole uploader; phd.PhdProgramProcessDocument playsRole uploadedPhdProcessDocuments { multiplicity *; } } relation PhdParticipantRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.PhdParticipant playsRole phdParticipants { multiplicity *; } } relation InternalPhdParticipantPerson { Person playsRole person; phd.InternalPhdParticipant playsRole internalParticipants { multiplicity *; } } relation phd.PhdProcessState { RootDomainObject playsRole rootDomainObject; phd.PhdProcessState playsRole phdProgramStates { multiplicity *; } } relation PersonPhdProgramState { Person playsRole person; phd.PhdProcessState playsRole phdProgramStates { multiplicity *; } } relation PhdIndividualProgramProcessPhdParticipant { phd.PhdIndividualProgramProcess playsRole individualProcess; phd.PhdParticipant playsRole participants { multiplicity *; } } relation PhdIndividualProgramProcessGuiding { phd.PhdIndividualProgramProcess playsRole processForGuiding; phd.PhdParticipant playsRole guidings { multiplicity *; } } relation PhdIndividualProgramProcessAssistantGuiding { phd.PhdIndividualProgramProcess playsRole processForAssistantGuiding; phd.PhdParticipant playsRole assistantGuidings { multiplicity *; } } relation PhdProgramPublicCandidacyHashCodePhdProgramCandidacyProcess { phd.candidacy.PhdProgramPublicCandidacyHashCode playsRole candidacyHashCode; phd.candidacy.PhdProgramCandidacyProcess playsRole phdProgramCandidacyProcess; } relation PhdProgramCandidacyProcessPhdCandidacyReferee { phd.candidacy.PhdProgramCandidacyProcess playsRole phdProgramCandidacyProcess; phd.candidacy.PhdCandidacyReferee playsRole candidacyReferees { multiplicity *; } } relation PhdProgramCandidacyProcessPhdProcessState { phd.candidacy.PhdProgramCandidacyProcess playsRole process; phd.PhdCandidacyProcessState playsRole states { multiplicity *; } } relation PublicPresentationSeminarPhdProcessState { phd.seminar.PublicPresentationSeminarProcess playsRole process; phd.seminar.PublicPresentationSeminarState playsRole states { multiplicity *; } } relation PhdThesisPhdProcessState { phd.thesis.PhdThesisProcess playsRole process; phd.thesis.PhdThesisProcessState playsRole states { multiplicity *; } } relation PhdMeetingSchedulingPhdProcessState { phd.thesis.meeting.PhdMeetingSchedulingProcess playsRole meetingProcess; phd.thesis.meeting.PhdMeetingSchedulingProcessState playsRole states { multiplicity *; } } relation PhdMeetingSchedulingPhdMeeting { phd.thesis.meeting.PhdMeetingSchedulingProcess playsRole meetingProcess; phd.thesis.meeting.PhdMeeting playsRole meetings { multiplicity *; } } relation PhdCandidacyFeedbackRequestProcessStates { phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestProcess playsRole process; phd.candidacy.feedbackRequest.PhdCandidacyFeedbackState playsRole states { multiplicity *; } } relation PhdCandidacyRefereeLetterRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.candidacy.PhdCandidacyRefereeLetter playsRole phdCandidacyRefereeLetters { multiplicity *; } } relation PhdCandidacyRefereePhdCandidacyRefereeLetter { phd.candidacy.PhdCandidacyRefereeLetter playsRole letter; phd.candidacy.PhdCandidacyReferee playsRole candidacyReferee; } relation PhdProgramCandidacyProcessPhdCandidacyRefereeLetter { phd.candidacy.PhdProgramCandidacyProcess playsRole phdProgramCandidacyProcess; phd.candidacy.PhdCandidacyRefereeLetter playsRole refereeLetters { multiplicity *; } } relation PhdCandidacyRefereeLetterPhdCandidacyRefereeLetterFile { phd.candidacy.PhdCandidacyRefereeLetter playsRole letter; phd.candidacy.PhdCandidacyRefereeLetterFile playsRole file; } relation PhdCandidacyRefereeLetterCountry { Country playsRole refereeCountry; phd.candidacy.PhdCandidacyRefereeLetter playsRole refereeLetters { multiplicity *; } } relation RootDomainObjectPhdAlert { RootDomainObject playsRole rootDomainObject; Alert playsRole alerts { multiplicity *; } } relation RootDomainObjectPhdAlertActive { RootDomainObject playsRole rootDomainObjectForActiveAlerts; Alert playsRole activeAlerts { multiplicity *; } } relation RootDomainObjectPhdAlertMessage { RootDomainObject playsRole rootDomainObject; phd.alert.PhdAlertMessage playsRole phdAlertMessages { multiplicity *; } } relation PhdAlertMessagePerson { Person playsRole persons { multiplicity *; } phd.alert.PhdAlertMessage playsRole phdAlertMessages { multiplicity *; } } relation PhdAlertMessagePersonWhoMarkedAsReaded { Person playsRole personWhoMarkedAsReaded; phd.alert.PhdAlertMessage playsRole phdAlertMessagesMarkedAsReaded { multiplicity *; } } relation PhdAlertPhdIndividualProgramProcess { phd.PhdIndividualProgramProcess playsRole process; phd.alert.PhdAlert playsRole alerts { multiplicity *; } } relation PhdCandidacyRefereeAlertPhdCandidacyReferee { phd.candidacy.PhdCandidacyReferee playsRole referee; phd.alert.PhdCandidacyRefereeAlert playsRole alerts { multiplicity *; } } relation PublicPhdMissingCandidacyAlertPhdProgramPublicCandidacyHashCode { phd.candidacy.PhdProgramPublicCandidacyHashCode playsRole candidacyHashCode; phd.alert.PublicPhdMissingCandidacyAlert playsRole alerts { multiplicity *; } } relation PhdAlertMessagePhdIndividualProgramProcess { phd.PhdIndividualProgramProcess playsRole process; phd.alert.PhdAlertMessage playsRole alertMessages { multiplicity *; } } relation RootDomainObjectPhdStudyPlan { RootDomainObject playsRole rootDomainObject; phd.PhdStudyPlan playsRole phdStudyPlans { multiplicity *; } } relation RootDomainObjectPhdStudyPlanEntry { RootDomainObject playsRole rootDomainObject; phd.PhdStudyPlanEntry playsRole phdStudyPlanEntries { multiplicity *; } } relation PhdStudyPlanPhdIndividualProgramProcess { phd.PhdIndividualProgramProcess playsRole process; phd.PhdStudyPlan playsRole studyPlan; } relation InternalPhdStudyPlanEntryCompetenceCourse { CompetenceCourse playsRole competenceCourse; phd.InternalPhdStudyPlanEntry playsRole phdStudyPlanEntries { multiplicity *; } } relation PhdStudyPlanPhdStudyPlanEntry { phd.PhdStudyPlan playsRole studyPlan; phd.PhdStudyPlanEntry playsRole entries { multiplicity *; } } relation DegreePhdStudyPlan { Degree playsRole degree; phd.PhdStudyPlan playsRole phdStudyPlans { multiplicity *; } } relation PhdNotificationRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.notification.PhdNotification playsRole phdNotifications { multiplicity *; } } relation PhdNotificationPhdProgramCandidacyProcess { phd.candidacy.PhdProgramCandidacyProcess playsRole candidacyProcess; phd.notification.PhdNotification playsRole notifications { multiplicity *; } } relation PhdIndividualProgramProcessPublicPresentationSeminarProcess { phd.PhdIndividualProgramProcess playsRole individualProgramProcess; phd.seminar.PublicPresentationSeminarProcess playsRole seminarProcess; } relation PhdIndividualProgramProcessPhdThesisProcess { phd.PhdIndividualProgramProcess playsRole individualProgramProcess; phd.thesis.PhdThesisProcess playsRole thesisProcess; } relation RootDomainObjectThesisJuryElement { RootDomainObject playsRole rootDomainObject; phd.thesis.ThesisJuryElement playsRole phdThesisJuryElements { multiplicity *; } } relation RootDomainObjectPhdMeeting { RootDomainObject playsRole rootDomainObject; phd.thesis.meeting.PhdMeeting playsRole phdMeetings { multiplicity *; } } relation PhdThesisProcessThesisJuryElement { phd.thesis.PhdThesisProcess playsRole process; phd.thesis.ThesisJuryElement playsRole thesisJuryElements { multiplicity *; } } relation PhdThesisProcessPresidentThesisJuryElement { phd.thesis.PhdThesisProcess playsRole processForPresidentJuryElement; phd.thesis.ThesisJuryElement playsRole presidentJuryElement; } relation PhdThesisProcessPhdMeetingSchedulingProcess { phd.thesis.PhdThesisProcess playsRole thesisProcess; phd.thesis.meeting.PhdMeetingSchedulingProcess playsRole meetingProcess; } relation PhdParticipantThesisJuryElement { phd.PhdParticipant playsRole participant; phd.thesis.ThesisJuryElement playsRole thesisJuryElements { multiplicity *; } } relation RootDomainObjectPhdCandidacyFeedbackRequestElement { RootDomainObject playsRole rootDomainObject; phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestElement playsRole phdCandidacyFeedbackElements { multiplicity *; } } relation PhdCandidacyFeedbackRequestProcessElements { phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestProcess playsRole process; phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestElement playsRole elements { multiplicity *; } } relation PhdParticipantPhdCandidacyFeedbackRequestElements { phd.PhdParticipant playsRole participant; phd.candidacy.feedbackRequest.PhdCandidacyFeedbackRequestElement playsRole candidacyFeedbackRequestElements { multiplicity *; } } relation PhdAcademicServiceRequestPhdIndividualProgramProcess { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcess; phd.serviceRequests.PhdAcademicServiceRequest playsRole phdAcademicServiceRequests { multiplicity *; } } relation PhdStudentReingressionRequestDocumentPhdStudentReingressionRequest { phd.serviceRequests.PhdStudentReingressionRequest playsRole phdStudentReingressionRequest; phd.serviceRequests.PhdStudentReingressionRequestDocument playsRole phdStudentReingressionRequestDocument; } relation RootDomainObjectPhdConfigurationIndividualProgramProcess { RootDomainObject playsRole rootDomainObject; phd.PhdConfigurationIndividualProgramProcess playsRole phdConfigurationIndividualProgramProcess { multiplicity *; } } relation PhdIndividualProgramProcessPhdConfigurationIndividualProgramProcess { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcess; phd.PhdConfigurationIndividualProgramProcess playsRole phdConfigurationIndividualProgramProcess; } relation PhdReporterReviewAlertPhdParticipant { phd.alert.PhdReporterReviewAlert playsRole phdReporterReviewAlert; phd.PhdParticipant playsRole phdParticipant; } relation PhdMigrationProcessRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.migration.PhdMigrationProcess playsRole phdMigrationProcesses { multiplicity *; } } relation phd.migration.PhdIndividualProcessDataRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.migration.PhdMigrationIndividualProcessData playsRole phdMigrationIndividualProcessData { multiplicity *; } } relation PhdIndividualPersonalDataRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.migration.PhdMigrationIndividualPersonalData playsRole phdMigrationIndividualPersonalData { multiplicity *; } } relation phd.migration.PhdGuidingRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.migration.PhdMigrationGuiding playsRole phdMigrationGuidings { multiplicity *; } } relation PhdIndividualProcessDataPhdIndividualProcessData { phd.migration.PhdMigrationIndividualProcessData playsRole phdMigrationIndividualProcessData; phd.migration.PhdMigrationIndividualPersonalData playsRole phdMigrationIndividualPersonalData; } relation PhdMigrationProcessPhdIndividualProcessData { phd.migration.PhdMigrationProcess playsRole phdMigrationProcess; phd.migration.PhdMigrationIndividualProcessData playsRole phdMigrationIndividualProcessData { multiplicity *; } } relation PhdMigrationProcessPhdGuiding { phd.migration.PhdMigrationProcess playsRole phdMigrationProcess; phd.migration.PhdMigrationGuiding playsRole phdMigrationGuiding { multiplicity *; } } relation PhdProgramPhdProgramMessage { phd.PhdProgram playsRole phdProgram; phd.email.PhdProgramEmail playsRole phdProgramEmails { multiplicity *; } } relation PhdIndividualProgramProcessPhdProgramMessage { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcesses { multiplicity *; } phd.email.PhdProgramEmail playsRole phdProgramEmail { multiplicity *; } } relation PhdIndividualProgramProcessPhdIndividualProgramProcessMessage { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcess; phd.email.PhdIndividualProgramProcessEmail playsRole phdIndividualProgramProcessEmails { multiplicity *; } } relation PhdEmailPerson { Person playsRole person; phd.email.PhdEmail playsRole phdEmail { multiplicity *; } } relation PhdProgramContextPeriodRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.PhdProgramContextPeriod playsRole phdProgramContextPeriods { multiplicity *; } } relation PhdProgramPhdProgramContextPeriod { phd.PhdProgram playsRole phdProgram; phd.PhdProgramContextPeriod playsRole phdProgramContextPeriods { multiplicity *; } } relation PhdIndividualProgramProcessSourceDestiny { phd.PhdIndividualProgramProcess playsRole source; phd.PhdIndividualProgramProcess playsRole destiny; } relation InstitutionPhdCandidacyPeriodPhdPrograms { phd.candidacy.InstitutionPhdCandidacyPeriod playsRole institutionPhdCandidacyPeriod { multiplicity *; } phd.PhdProgram playsRole phdPrograms { multiplicity *; } } relation PhdProgramCandidacyProcessPhdCandidacyPeriod { phd.candidacy.PhdCandidacyPeriod playsRole publicPhdCandidacyPeriod { multiplicity 0..1; } phd.candidacy.PhdProgramCandidacyProcess playsRole phdProgramCandidacyProcesses { multiplicity *; } } relation PhdRegistryDiplomaRequestPhdDiplomaSupplementRequest { phd.serviceRequests.documentRequests.PhdRegistryDiplomaRequest playsRole registryDiplomaRequest; phd.serviceRequests.documentRequests.PhdDiplomaSupplementRequest playsRole diplomaSupplement; } relation PhdIndividualProgramProcessPhdConclusionProcess { phd.PhdIndividualProgramProcess playsRole phdProcess; phd.conclusion.PhdConclusionProcess playsRole phdConclusionProcesses { multiplicity *; } } relation PhdConclusionProcessRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.conclusion.PhdConclusionProcess playsRole phdConclusionProcesses { multiplicity *; } } relation PhdConclusionProcessResponsible { Person playsRole responsible; phd.conclusion.PhdConclusionProcess playsRole phdConclusionProcesses { multiplicity *; } } relation PhdGuiderAcceptanceLetterPhdParticipant { phd.candidacy.PhdGuiderAcceptanceLetter playsRole acceptanceLetter; phd.PhdParticipant playsRole phdGuider; } relation PhdLogEntryRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.log.PhdLogEntry playsRole phdLogEntries { multiplicity *; } } relation PhdLogEntryPhdProgramProcess { phd.PhdProgramProcess playsRole phdProgramProcess; phd.log.PhdLogEntry playsRole logEntries { multiplicity *; } } relation PhdLogEntryResponsible { Person playsRole responsible; phd.log.PhdLogEntry playsRole phdLogEntries { multiplicity *; } } /* End of Phd Module */ relation AcademicCalendarEntryAcademicCalendarEntry { time.calendarStructure.AcademicCalendarEntry playsRole parentEntry; time.calendarStructure.AcademicCalendarEntry playsRole childEntries { multiplicity *; } } relation AcademicCalendarEntryBasedAcademicCalendarEntry { time.calendarStructure.AcademicCalendarEntry playsRole templateEntry; time.calendarStructure.AcademicCalendarEntry playsRole basedEntries { multiplicity *; } } relation AcademicServiceRequestAcademicServiceRequestSituation { serviceRequests.AcademicServiceRequest playsRole academicServiceRequest { multiplicity 1..1; } serviceRequests.AcademicServiceRequestSituation playsRole academicServiceRequestSituations { multiplicity *; } } relation AcademicServiceRequestAcademicServiceRequestYear { serviceRequests.AcademicServiceRequestYear playsRole academicServiceRequestYear { multiplicity 1..1; } serviceRequests.AcademicServiceRequest playsRole academicServiceRequests { multiplicity *; } } relation AcademicServiceRequestYearRootDomainObject { RootDomainObject playsRole rootDomainObject; serviceRequests.AcademicServiceRequestYear playsRole academicServiceRequestYears { multiplicity *; } } relation AdministrativeOfficeManagedAcademicPrograms { administrativeOffice.AdministrativeOffice playsRole administrativeOffice { multiplicity 1..1; } AcademicProgram playsRole managedAcademicProgram { multiplicity *; } } relation AcademicServiceRequestAdministrativeOffice { administrativeOffice.AdministrativeOffice playsRole administrativeOffice { multiplicity 1..1; } serviceRequests.AcademicServiceRequest playsRole academicServiceRequests { multiplicity *; } } relation AcademicServiceRequestEventAcademicServiceRequest { serviceRequests.AcademicServiceRequest playsRole academicServiceRequest; accounting.events.serviceRequests.AcademicServiceRequestEvent playsRole event; } relation RegistryDiplomaSupplement { serviceRequests.documentRequests.RegistryDiplomaRequest playsRole registryDiplomaRequest; serviceRequests.documentRequests.DiplomaSupplementRequest playsRole diplomaSupplement; } relation InstitutionRegistryCodeGeneratorRootDomainObject { serviceRequests.InstitutionRegistryCodeGenerator playsRole registryCodeGenerator { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation RegistryCodeGeneratorInstitution { serviceRequests.InstitutionRegistryCodeGenerator playsRole registryCodeGenerator; organizationalStructure.Unit playsRole institution; } relation InstitutionRegistryCodeGeneratorCodes { serviceRequests.InstitutionRegistryCodeGenerator playsRole registryCodeGenerator { multiplicity 1..1; } serviceRequests.RegistryCode playsRole registryCode { multiplicity *; } } relation AcademicServiceRequestRegistryCode { serviceRequests.RegistryCode playsRole registryCode; serviceRequests.AcademicServiceRequest playsRole documentRequest { multiplicity *; } } relation RectorateSubmissionBatchRootDomainObject { serviceRequests.RectorateSubmissionBatch playsRole rectorateSubmissionBatch { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation AdministrativeOfficeRectorateSubmissionBatch { administrativeOffice.AdministrativeOffice playsRole administrativeOffice { multiplicity 1..1; } serviceRequests.RectorateSubmissionBatch playsRole rectorateSubmissionBatch { multiplicity *; } } relation DocumentRequestRectorateSubmissionBatch { serviceRequests.AcademicServiceRequest playsRole documentRequest { multiplicity *; } serviceRequests.RectorateSubmissionBatch playsRole rectorateSubmissionBatch { multiplicity 0..1; } } relation RectorateSubmissionBatchCreator { serviceRequests.RectorateSubmissionBatch playsRole createdRectorateSubmissionBatch { multiplicity *; } Person playsRole creator; } relation RectorateSubmissionBatchSubmitter { serviceRequests.RectorateSubmissionBatch playsRole submittedRectorateSubmissionBatch { multiplicity *; } Person playsRole submitter; } relation RectorateSubmissionBatchReceptor { serviceRequests.RectorateSubmissionBatch playsRole receivedRectorateSubmissionBatch { multiplicity *; } Person playsRole receptor; } relation RegistrationAcademicServiceRequestRegistration { student.Registration playsRole registration; serviceRequests.RegistrationAcademicServiceRequest playsRole academicServiceRequests { multiplicity *; } } relation AcademicServiceRequestSituationEmployee { serviceRequests.AcademicServiceRequestSituation playsRole academicServiceRequestSituations { multiplicity *; } Person playsRole creator; } relation EquivalencePlanRevisionRequestEquivalencePlanRequest { serviceRequests.EquivalencePlanRequest playsRole equivalencePlanRequest; serviceRequests.EquivalencePlanRevisionRequest playsRole equivalencePlanRevisionRequests { multiplicity *; } } relation SpecialSeasonRequestBeginPeriod { ExecutionSemester playsRole beginExecutionPeriod; serviceRequests.SpecialSeasonRequest playsRole beginningSpecialSeason { multiplicity *; } } relation SpecialSeasonRequestEndPeriod { ExecutionSemester playsRole endExecutionPeriod; serviceRequests.SpecialSeasonRequest playsRole endingSpecialSeason { multiplicity *; } } relation ExamDateCertificateRequestEnrolment { serviceRequests.documentRequests.ExamDateCertificateRequest playsRole examDateCertificateRequests { multiplicity *; } Enrolment playsRole enrolments { multiplicity *; } } relation ExamDateCertificateRequestExam { serviceRequests.documentRequests.ExamDateCertificateRequest playsRole examDateCertificateRequests { multiplicity *; } Exam playsRole exams { multiplicity *; } } relation ExamDateCertificateRequestExecutionPeriod { serviceRequests.documentRequests.ExamDateCertificateRequest playsRole examDateCertificateRequests { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation CourseGroupChangeRequestOldCourseGroup { degreeStructure.CourseGroup playsRole oldCourseGroup; serviceRequests.CourseGroupChangeRequest playsRole oldCourseGroupChangeRequests { multiplicity *; } } relation CourseGroupChangeRequestNewCourseGroup { degreeStructure.CourseGroup playsRole newCourseGroup; serviceRequests.CourseGroupChangeRequest playsRole newCourseGroupChangeRequests { multiplicity *; } } relation ExtraExamRequestEnrolment { Enrolment playsRole enrolment; serviceRequests.ExtraExamRequest playsRole extraExamRequests { multiplicity *; } } relation CourseLoadRequestEnrolment { Enrolment playsRole enrolments { multiplicity *; } serviceRequests.documentRequests.CourseLoadRequest playsRole courseLoadRequests { multiplicity *; } } relation ExtraCurricularCertificateRequestEnrolment { Enrolment playsRole enrolments { multiplicity *; } serviceRequests.documentRequests.ExtraCurricularCertificateRequest playsRole ExtraCurricularRequests { multiplicity *; } } relation StandaloneEnrolmentCertificateRequestEnrolment { Enrolment playsRole enrolments { multiplicity *; } serviceRequests.documentRequests.StandaloneEnrolmentCertificateRequest playsRole StandaloneEnrolmentRequests { multiplicity *; } } relation ProgramCertificateRequestEnrolment { Enrolment playsRole enrolments { multiplicity *; } serviceRequests.documentRequests.ProgramCertificateRequest playsRole programCertificateRequests { multiplicity *; } } relation AccountEntry { accounting.Account playsRole account; accounting.Entry playsRole entries { multiplicity *; } } relation AccountTransactionAdjustedTransaction { accounting.AccountingTransaction playsRole adjustedTransaction; accounting.AccountingTransaction playsRole adjustmentTransactions { multiplicity *; } } relation AccountTransactionEntry { accounting.AccountingTransaction playsRole accountingTransaction; accounting.Entry playsRole entries { multiplicity *; } } relation AccountTransactionUser { User playsRole responsibleUser; accounting.AccountingTransaction playsRole accountingTransactions { multiplicity *; } } relation AccountabilityAccountabilityType { organizationalStructure.AccountabilityType playsRole accountabilityType; organizationalStructure.Accountability playsRole accountabilities { multiplicity *; } } relation AccountabilityChildParty { organizationalStructure.Party playsRole parentParty; organizationalStructure.Accountability playsRole childs { multiplicity *; } } relation AccountabilityParentParty { organizationalStructure.Party playsRole childParty; organizationalStructure.Accountability playsRole parents { multiplicity *; } } relation AccountingEntryCreditNoteEntry { accounting.Entry playsRole accountingEntry; accounting.CreditNoteEntry playsRole creditNoteEntries { multiplicity *; } } relation AccountingEventEmployeeResponsibleForCancel { accounting.Event playsRole responsibleForCancelEvent { multiplicity *; } Person playsRole responsibleForCancel; } relation AccountingEventDiscount { accounting.Event playsRole event; accounting.Discount playsRole discounts { multiplicity *; } } relation AccountingTransactionAccountingTransactionDetail { accounting.AccountingTransaction playsRole transaction; accounting.AccountingTransactionDetail playsRole transactionDetail; } relation AccountingTransactionEvent { accounting.Event playsRole event; accounting.AccountingTransaction playsRole accountingTransactions { multiplicity *; } } relation AdjustmentAccountingEntryCreditNoteEntry { accounting.Entry playsRole adjustmentAccountingEntry; accounting.CreditNoteEntry playsRole adjustmentCreditNoteEntry; } relation AdministrativeOfficeAdministrativeOfficeServiceAgreementTemplate { administrativeOffice.AdministrativeOffice playsRole administrativeOffice { multiplicity *; } accounting.serviceAgreementTemplates.AdministrativeOfficeServiceAgreementTemplate playsRole serviceAgreementTemplate { multiplicity 1..1; } } relation AdministrativeOfficeEvent { administrativeOffice.AdministrativeOffice playsRole administrativeOffice; accounting.AcademicEvent playsRole events { multiplicity *; } } relation AdministrativeOfficeUnit { administrativeOffice.AdministrativeOffice playsRole administrativeOffice; organizationalStructure.Unit playsRole unit { multiplicity 1..1; } } relation AdviseEndPeriod { teacher.Advise playsRole associatedEndadvises { multiplicity *; } ExecutionSemester playsRole endExecutionPeriod; } relation AdviseStartPeriod { teacher.Advise playsRole associatedStartadvises { multiplicity *; } ExecutionSemester playsRole startExecutionPeriod; } relation AdviseStudent { teacher.Advise playsRole advises { multiplicity *; } student.Registration playsRole student; } relation AdviseTeacher { teacher.Advise playsRole advises { multiplicity *; } Teacher playsRole teacher; } relation AdviseTeacherAdviseService { teacher.Advise playsRole advise; teacher.TeacherAdviseService playsRole teacherAdviseServices { multiplicity *; } } relation AffinityCycleCourseGroup { degreeStructure.CycleCourseGroup playsRole sourceAffinities { multiplicity *; } degreeStructure.CycleCourseGroup playsRole destinationAffinities { multiplicity *; } } relation AllowedToUploadInUnit { organizationalStructure.Unit playsRole unitsWithUploadPermission { multiplicity *; } Person playsRole allowedPeopleToUploadFiles { multiplicity *; } } relation ExternalCourseLoadRequestUnit { organizationalStructure.Unit playsRole institution; serviceRequests.documentRequests.ExternalCourseLoadRequest playsRole externalCourseLoadRequests { multiplicity *; } } relation ExternalProgramCertificateRequestUnit { organizationalStructure.Unit playsRole institution; serviceRequests.documentRequests.ExternalProgramCertificateRequest playsRole externalProgramCertificateRequests { multiplicity *; } } relation AnnouncementBoardBookmark { Person playsRole bookmarkOwner { multiplicity *; } messaging.AnnouncementBoard playsRole bookmarkedBoards { multiplicity *; } } relation AnnualEventExecutionYear { ExecutionYear playsRole executionYear; accounting.events.AnnualEvent playsRole annualEvents { multiplicity *; } } relation AnswerAtomicQuestion { tests.NewAnswer playsRole answers { multiplicity *; } tests.NewAtomicQuestion playsRole atomicQuestion; } relation AnswerExportProposal { ExportGrouping playsRole exportGroupingReceivers { multiplicity *; } Person playsRole receiverPerson; } relation AnswerPerson { tests.NewAnswer playsRole answers { multiplicity *; } Person playsRole person; } relation AnyCurricularCourseDegree { curricularRules.AnyCurricularCourse playsRole participatingAnyCurricularCourseCurricularRules { multiplicity *; } Degree playsRole degree; } relation AnyCurricularCourseDepartmentUnit { curricularRules.AnyCurricularCourse playsRole participatingAnyCurricularCourseCurricularRules { multiplicity *; } organizationalStructure.DepartmentUnit playsRole departmentUnit; } relation ArticleAssociationArticle { research.activity.ArticleAssociation playsRole articleAssociation; research.result.publication.Article playsRole article; } relation AttendsEnrolment { Attends playsRole attends { multiplicity *; } Enrolment playsRole enrolment; } relation AttendsStudent { Attends playsRole associatedAttends { multiplicity *; } student.Registration playsRole aluno; } relation AttendsWeeklyWorkLoad { Attends playsRole attends; student.WeeklyWorkLoad playsRole weeklyWorkLoads { multiplicity *; } } relation BelongsTo { ExportGrouping playsRole exportGroupings { multiplicity *; } Grouping playsRole grouping; } /* Documents */ relation DocumentOperator { Person playsRole operator; documents.GeneratedDocument playsRole processedDocument { multiplicity *; } } relation DocumentAddressees { organizationalStructure.Party playsRole addressee; documents.GeneratedDocument playsRole addressedDocument { multiplicity *; } } relation CreditNoteDocuments { accounting.CreditNote playsRole source; documents.CreditNoteGeneratedDocument playsRole document { multiplicity *; } } relation ReceiptDocuments { accounting.Receipt playsRole source; documents.ReceiptGeneratedDocument playsRole document { multiplicity *; } } relation DocumentRequestDocuments { serviceRequests.AcademicServiceRequest playsRole source; documents.DocumentRequestGeneratedDocument playsRole document { multiplicity *; } } relation LibraryMissingCardsDocuments { library.LibraryCard playsRole source { multiplicity *; } documents.LibraryMissingCardsDocument playsRole document { multiplicity *; } } relation LibraryMissingLettersDocuments { library.LibraryCard playsRole source { multiplicity *; } documents.LibraryMissingLettersDocument playsRole letters { multiplicity *; } } relation RootDomainObjectLibraryDocument { library.LibraryDocument playsRole libraryDocument { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation LibraryDocumentLibraryMissingCardsDocument { library.LibraryDocument playsRole libraryDocument; documents.LibraryMissingCardsDocument playsRole cardDocument; } relation LibraryDocumentLibraryMissingLettersDocument { library.LibraryDocument playsRole libraryDocument; documents.LibraryMissingLettersDocument playsRole letterDocument; } relation BlueprintBlueprintFile { space.Blueprint playsRole blueprint; space.BlueprintFile playsRole blueprintFile; } relation BranchCurricularCourseScope { Branch playsRole branch; CurricularCourseScope playsRole scopes { multiplicity *; } } relation CampusInformationLocality { space.CampusInformation playsRole campusInformation { multiplicity *; } Locality playsRole locality; } relation CandidacyCandidacyDocument { candidacy.Candidacy playsRole candidacy; candidacy.CandidacyDocument playsRole candidacyDocuments { multiplicity *; } } relation CandidacyCaseStudyChoice { Seminaries.SeminaryCandidacy playsRole candidacy; Seminaries.CaseStudyChoice playsRole caseStudyChoices { multiplicity *; } } relation CandidacyCurricularCourse { Seminaries.SeminaryCandidacy playsRole associatedCandidancies { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation CandidacyDocumentCandidacyDocumentFile { candidacy.CandidacyDocument playsRole candidacyDocument; candidacy.CandidacyDocumentFile playsRole file; } relation CandidacyModality { Seminaries.SeminaryCandidacy playsRole associatedModalities { multiplicity *; } Seminaries.Modality playsRole modality; } relation CandidacyRootDomainObject { RootDomainObject playsRole rootDomainObject; candidacy.Candidacy playsRole candidacies { multiplicity *; } } relation CandidacySituationCandidacy { candidacy.Candidacy playsRole candidacy; candidacy.CandidacySituation playsRole candidacySituations { multiplicity *; } } relation CandidacySituationPerson { Person playsRole person; candidacy.CandidacySituation playsRole candidacySituations { multiplicity *; } } relation CandidacyStudent { Seminaries.SeminaryCandidacy playsRole associatedCandidancies { multiplicity *; } student.Registration playsRole student; } relation CandidateEnrolmentCurricularCourse { CandidateEnrolment playsRole candidateEnrolments { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation CandidateEnrolmentMasterDegreeCandidate { CandidateEnrolment playsRole candidateEnrolments { multiplicity *; } MasterDegreeCandidate playsRole masterDegreeCandidate; } relation CandidateSituationMasterDegreeCandidate { CandidateSituation playsRole situations { multiplicity *; } MasterDegreeCandidate playsRole masterDegreeCandidate; } relation CareerTeacher { teacher.Career playsRole associatedCareers { multiplicity *; } Person playsRole person { multiplicity 0..1; } } relation CareerTeacherTemp { teacher.Career playsRole associatedCareers { multiplicity *; } Teacher playsRole teacher { multiplicity 0..1; } } relation CaseStudyCaseStudyChoice { Seminaries.CaseStudy playsRole caseStudy; Seminaries.CaseStudyChoice playsRole seminaryCandidacies { multiplicity *; } } relation ChoiceMultipleChoiceQuestion { tests.NewChoice playsRole choices { multiplicity *; } tests.NewMultipleChoiceQuestion playsRole multipleChoiceQuestion; } relation CompetenceCourseDepartment { CompetenceCourse playsRole competenceCourses { multiplicity *; } Department playsRole departments { multiplicity *; } } relation CompetenceCourseInformationCompetenceCourse { degreeStructure.CompetenceCourseInformation playsRole competenceCourseInformations { multiplicity *; } CompetenceCourse playsRole competenceCourse; } relation CompetenceCourseInformationCompetenceCourseLoad { degreeStructure.CompetenceCourseInformation playsRole competenceCourseInformation; degreeStructure.CompetenceCourseLoad playsRole competenceCourseLoads { multiplicity *; } } relation EctsTableIndexRoot { degreeStructure.EctsTableIndex playsRole ectsTableIndex { multiplicity *; } RootDomainObject playsRole rootDomainObject { multiplicity 1..1; } } relation EctsConversionTableIndex { degreeStructure.EctsTableIndex playsRole index { multiplicity 1..1; } degreeStructure.EctsConversionTable playsRole table { multiplicity *; } } relation CompetenceCourseEctsCompetenceCourseConversionTable { CompetenceCourse playsRole competenceCourse { multiplicity 1..1; } degreeStructure.EctsCompetenceCourseConversionTable playsRole ectsConversionTables { multiplicity *; } } relation CurricularYearEctsCurricularYearConversionTable { CurricularYear playsRole curricularYear { multiplicity 1..1; } degreeStructure.EctsCurricularYearConversionTable playsRole ectsConversionTables { multiplicity *; } } relation SchoolEctsInstitutionConversionTable { organizationalStructure.Unit playsRole school { multiplicity 1..1; } degreeStructure.EctsInstitutionConversionTable playsRole ectsInstitutionConversionTables { multiplicity *; } } relation DegreeEctsDegreeByCurricularYearConversionTable { Degree playsRole degree { multiplicity 1..1; } degreeStructure.EctsDegreeByCurricularYearConversionTable playsRole ectsCourseConversionTables { multiplicity *; } } relation SchoolEctsInstitutionByCurricularYearConversionTable { organizationalStructure.Unit playsRole school { multiplicity 1..1; } degreeStructure.EctsInstitutionByCurricularYearConversionTable playsRole ectsCourseConversionTables { multiplicity *; } } relation DegreeEctsDegreeGraduationGradeConversionTable { Degree playsRole degree { multiplicity 1..1; } degreeStructure.EctsDegreeGraduationGradeConversionTable playsRole ectsGraduationGradeConversionTables { multiplicity *; } } relation SchoolEctsCycleGraduationGradeConversionTable { organizationalStructure.Unit playsRole school { multiplicity 1..1; } degreeStructure.EctsCycleGraduationGradeConversionTable playsRole ectsGraduationGradeConversionTables { multiplicity *; } } relation CompetenceCourseInformationUnit { degreeStructure.CompetenceCourseInformation playsRole competenceCourseInformations { multiplicity *; } organizationalStructure.CompetenceCourseGroupUnit playsRole competenceCourseGroupUnit; } relation ConclusionProcessConclusionProcessVersion { student.curriculum.ConclusionProcess playsRole conclusionProcess; student.curriculum.ConclusionProcessVersion playsRole versions { multiplicity *; } } relation ConclusionProcessLastVersion { student.curriculum.ConclusionProcess playsRole lastVersionConclusionProcess; student.curriculum.ConclusionProcessVersion playsRole lastVersion; } relation ConclusionProcessConclusionYear { student.curriculum.ConclusionProcess playsRole conclusionProcessesConcluded { multiplicity *; } ExecutionYear playsRole conclusionYear; } relation ConclusionProcessVersionConclusionYear { student.curriculum.ConclusionProcessVersion playsRole conclusionProcessVersionsConcluded { multiplicity *; } ExecutionYear playsRole conclusionYear; } relation ConclusionProcessVersionIngressionYear { student.curriculum.ConclusionProcessVersion playsRole conclusionProcessVersionsBegined { multiplicity *; } ExecutionYear playsRole ingressionYear; } relation ConferenceArticlesEventConferenceArticlesAssociation { research.result.publication.ConferenceArticles playsRole conferenceArticle; research.activity.EventConferenceArticlesAssociation playsRole eventConferenceArticlesAssociation; } relation ConnectionRuleAccountabilityType { organizationalStructure.AccountabilityType playsRole accountabilityType; organizationalStructure.ConnectionRule playsRole connectionRules { multiplicity *; } } relation ConvokeForWrittenEvaluation { vigilancy.Vigilancy playsRole vigilancies { multiplicity *; } WrittenEvaluation playsRole writtenEvaluation; } relation ConvokingVigilantWrapper { vigilancy.VigilantWrapper playsRole vigilantWrapper; vigilancy.Vigilancy playsRole vigilancies { multiplicity *; } } relation VigilantGroupVigilantWrapper { vigilancy.VigilantGroup playsRole vigilantGroup; vigilancy.VigilantWrapper playsRole vigilantWrappers { multiplicity *; } } relation VigilantWrapperPerson { vigilancy.VigilantWrapper playsRole vigilantWrappers { multiplicity *; } Person playsRole person; } relation PersonIsUnavailable { Person playsRole person; vigilancy.UnavailablePeriod playsRole unavailablePeriods { multiplicity *; } } relation VigilantWrapperRootDomainObject { RootDomainObject playsRole rootDomainObject; vigilancy.VigilantWrapper playsRole vigilantWrappers { multiplicity *; } } relation PersonIncompatibleVigilant { Person playsRole incompatiblePerson; Person playsRole incompatibleVigilant; } relation CooperationUnit { research.activity.Cooperation playsRole cooperation { multiplicity *; } organizationalStructure.Unit playsRole unit; } relation CoordinatorTeacher { Coordinator playsRole coordinators { multiplicity *; } Person playsRole person; } relation CorrectorAtomicQuestion { tests.NewCorrector playsRole correctors { multiplicity *; } tests.NewAtomicQuestion playsRole atomicQuestion; } relation CourseEquivalencyTheme { Seminaries.CourseEquivalency playsRole courseEquivalencies { multiplicity *; } Seminaries.Theme playsRole themes { multiplicity *; } } relation CourseGroupContext { degreeStructure.CourseGroup playsRole parentCourseGroup; degreeStructure.Context playsRole childContexts { multiplicity *; } } relation CourseGroupCurricularRule { curricularRules.CurricularRule playsRole participatingContextCurricularRules { multiplicity *; } degreeStructure.CourseGroup playsRole contextCourseGroup; } relation CreditNoteCreditNoteEntry { accounting.CreditNote playsRole creditNote; accounting.CreditNoteEntry playsRole creditNoteEntries { multiplicity *; } } relation CreditsDismissalEquivalence { studentCurriculum.Credits playsRole credits; studentCurriculum.Dismissal playsRole dismissals { multiplicity *; } } relation CreditsExecutionPeriod { ExecutionSemester playsRole executionPeriod { multiplicity 1..1; } studentCurriculum.Credits playsRole credits { multiplicity *; } } relation CreditsDismissalNoEnrolCurricularCourses { studentCurriculum.CreditsDismissal playsRole creditsDismissals { multiplicity *; } CurricularCourse playsRole noEnrolCurricularCourses { multiplicity *; } } relation CronScriptStateCronScriptInvocation { system.CronScriptState playsRole cronScriptState; system.CronScriptInvocation playsRole cronScriptInvocations { multiplicity *; } } relation CurricularCourseCompetenceCourse { CurricularCourse playsRole associatedCurricularCourses { multiplicity *; } CompetenceCourse playsRole competenceCourse; } relation CurricularCourseCourseEquivalency { Seminaries.CourseEquivalency playsRole courseEquivalencies { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation CurricularCourseCurricularCourseEquivalence { CurricularCourseEquivalence playsRole curricularCourseEquivalences { multiplicity *; } CurricularCourse playsRole equivalentCurricularCourse; } relation CurricularCourseCurricularCourseScope { CurricularCourse playsRole curricularCourse; CurricularCourseScope playsRole scopes { multiplicity *; } } relation CurricularCourseCurriculum { Curriculum playsRole associatedCurriculums { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation CurricularCourseCurriculumLineLog { log.CurriculumLineLog playsRole curriculumLineLogs { multiplicity *; } degreeStructure.DegreeModule playsRole degreeModule; } relation OptionalCurricularCourseOptionalEnrolmentLog { log.OptionalEnrolmentLog playsRole optionalEnrolmentLogs { multiplicity *; } degreeStructure.OptionalCurricularCourse playsRole optionalCurricularCourse; } relation CurricularCourseExecutionCourse { CurricularCourse playsRole associatedCurricularCourses { multiplicity *; } ExecutionCourse playsRole associatedExecutionCourses { multiplicity *; } } relation CurricularCourseHistoric { gesdis.CourseHistoric playsRole associatedCourseHistorics { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation CurricularCourseNotNeedToEnrollInCurricularCourse { degree.enrollment.NotNeedToEnrollInCurricularCourse playsRole notNeedToEnrollInCurricularCourses { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation CurricularCoursePrecedence { precedences.Precedence playsRole precedences { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation CurricularCourseRestrictionByCurricularCourse { precedences.RestrictionByCurricularCourse playsRole restrictionsByCurricularCourse { multiplicity *; } CurricularCourse playsRole precedentCurricularCourse; } relation CurricularCourseScientificArea { CurricularCourse playsRole associatedCurricularCourses { multiplicity *; } ScientificArea playsRole scientificArea; } relation CurricularCourseScopeCurricularSemester { CurricularCourseScope playsRole scopes { multiplicity *; } CurricularSemester playsRole curricularSemester; } relation CurricularCourseStudentReport { gesdis.StudentCourseReport playsRole studentCourseReport; CurricularCourse playsRole curricularCourse; } relation CurricularCourseUniversity { CurricularCourse playsRole associatedCurricularCourses { multiplicity *; } University playsRole university; } relation CurricularPeriodContext { degreeStructure.Context playsRole contexts { multiplicity *; } curricularPeriod.CurricularPeriod playsRole curricularPeriod; } relation CurricularPeriodDegreeCurricularPlan { DegreeCurricularPlan playsRole degreeCurricularPlan; curricularPeriod.CurricularPeriod playsRole degreeStructure; } relation CurricularPeriodParentChilds { curricularPeriod.CurricularPeriod playsRole childs { multiplicity *; } curricularPeriod.CurricularPeriod playsRole parent; } relation CurricularRuleBeginExecutionPeriod { curricularRules.CurricularRule playsRole participatingBeginCurricularRules { multiplicity *; } ExecutionSemester playsRole begin; } relation CurricularRuleCompositeRule { curricularRules.CurricularRule playsRole curricularRules { multiplicity *; } curricularRules.CompositeRule playsRole parentCompositeRule; } relation CurricularRuleDegreeModule { degreeStructure.DegreeModule playsRole degreeModuleToApplyRule; curricularRules.CurricularRule playsRole curricularRules { multiplicity *; } } relation CurricularRuleEndExecutionPeriod { curricularRules.CurricularRule playsRole participatingEndCurricularRules { multiplicity *; } ExecutionSemester playsRole end; } relation CurricularRuleNotRule { curricularRules.CurricularRule playsRole wrappedRule; curricularRules.NotRule playsRole notRule; } relation CurricularSemesterCurricularYear { CurricularSemester playsRole curricularSemesters { multiplicity *; } CurricularYear playsRole curricularYear; } relation CurriculumGroupStudentCurricularPlan { studentCurriculum.RootCurriculumGroup playsRole root; StudentCurricularPlan playsRole parentStudentCurricularPlan; } relation CurriculumModuleCurriculumGroup { studentCurriculum.CurriculumGroup playsRole curriculumGroup; studentCurriculum.CurriculumModule playsRole curriculumModules { multiplicity *; } } relation CurriculumPerson { Curriculum playsRole associatedAlteredCurriculums { multiplicity *; } Person playsRole personWhoAltered; } relation CycleCurriculumGroupCycleConclusionProcess { studentCurriculum.CycleCurriculumGroup playsRole cycle; student.curriculum.CycleConclusionProcess playsRole conclusionProcess; } relation DFACandidacyEventCandidacy { candidacy.DFACandidacy playsRole candidacy; accounting.events.dfa.DFACandidacyEvent playsRole dfaCandidacyEvent; } relation DegreeCurricularPlanBranch { DegreeCurricularPlan playsRole degreeCurricularPlan; Branch playsRole areas { multiplicity *; } } relation DegreeCurricularPlanCurricularCourse { CurricularCourse playsRole curricularCourses { multiplicity *; } DegreeCurricularPlan playsRole degreeCurricularPlan; } relation DegreeCurricularPlanCurricularCourseEquivalence { DegreeCurricularPlan playsRole degreeCurricularPlan; CurricularCourseEquivalence playsRole curricularCourseEquivalences { multiplicity *; } } relation DegreeCurricularPlanDegreeModule { degreeStructure.RootCourseGroup playsRole root; DegreeCurricularPlan playsRole parentDegreeCurricularPlan; } relation DegreeCurricularPlanEnrolmentPeriod { EnrolmentPeriod playsRole enrolmentPeriods { multiplicity *; } DegreeCurricularPlan playsRole degreeCurricularPlan; } relation DegreeCurricularPlanEquivalencePlanDegreeCurricularPlan { DegreeCurricularPlan playsRole degreeCurricularPlan; DegreeCurricularPlanEquivalencePlan playsRole equivalencePlan; } relation DegreeCurricularPlanEquivalencePlanSourceDegreeCurricularPlan { DegreeCurricularPlan playsRole sourceDegreeCurricularPlan; DegreeCurricularPlanEquivalencePlan playsRole targetEquivalencePlans { multiplicity *; } } relation DegreeCurricularPlanServiceAgreementTemplateDegreeCurricularPlan { DegreeCurricularPlan playsRole degreeCurricularPlan; accounting.serviceAgreementTemplates.DegreeCurricularPlanServiceAgreementTemplate playsRole serviceAgreementTemplate; } relation DegreeDegreeCurricularPlan { DegreeCurricularPlan playsRole degreeCurricularPlans { multiplicity *; } Degree playsRole degree; } relation DegreeDegreeInfo { Degree playsRole degree; DegreeInfo playsRole degreeInfos { multiplicity *; } } relation DegreeInfoDegreeInfoCandidacy { DegreeInfo playsRole degreeInfo; DegreeInfoCandidacy playsRole degreeInfoCandidacy; } relation DegreeInfoDegreeInfoFuture { DegreeInfo playsRole degreeInfo; DegreeInfoFuture playsRole degreeInfoFuture; } relation DegreeHasSite { Degree playsRole degree; DegreeSite playsRole site; } relation ThesisHasSite { thesis.Thesis playsRole thesis; thesis.ThesisSite playsRole site; } relation DegreeInfoExecutionYear { ExecutionYear playsRole executionYear; DegreeInfo playsRole degreeInfos { multiplicity *; } } relation DegreeModuleContext { degreeStructure.DegreeModule playsRole childDegreeModule; degreeStructure.Context playsRole parentContexts { multiplicity *; } } relation DegreeModuleCurriculumModule { degreeStructure.DegreeModule playsRole degreeModule; studentCurriculum.CurriculumModule playsRole curriculumModules { multiplicity *; } } relation DegreeModulePrecedenceRule { curricularRules.PrecedenceRule playsRole participatingPrecedenceCurricularRules { multiplicity *; } degreeStructure.DegreeModule playsRole precedenceDegreeModule; } relation DegreeTeachingServiceProfessorship { teacher.DegreeTeachingService playsRole degreeTeachingServices { multiplicity *; } Professorship playsRole professorship; } relation ProfessorshipDegreeProjectTutorialService { teacher.DegreeProjectTutorialService playsRole degreeProjectTutorialServices { multiplicity *; } Professorship playsRole professorship; } relation AttendsDegreeProjectTutorialServices { teacher.DegreeProjectTutorialService playsRole degreeProjectTutorialServices { multiplicity *; } Attends playsRole attend; } relation DegreeTeachingServiceShift { teacher.DegreeTeachingService playsRole degreeTeachingServices { multiplicity *; } Shift playsRole shift; } relation DegreeUnit { Degree playsRole degree; organizationalStructure.DegreeUnit playsRole unit; } relation DeleteFileLogRootDomainObject { RootDomainObject playsRole rootDomainObject; DeleteFileLog playsRole DeleteFileLogs { multiplicity *; } } relation DeleteFileRequestRootDomainObject { RootDomainObject playsRole rootDomainObject; DeleteFileRequest playsRole DeleteFileRequests { multiplicity *; } } relation DepartmentDegree { Department playsRole departments { multiplicity *; } Degree playsRole degrees { multiplicity *; } } relation DepartmentUnit { Department playsRole department; organizationalStructure.DepartmentUnit playsRole departmentUnit; } relation DfaRegistrationEventRegistration { student.Registration playsRole registration; accounting.events.dfa.DfaRegistrationEvent playsRole dfaRegistrationEvents { multiplicity *; } } relation DfaRegistrationEventExecutionYear { ExecutionYear playsRole executionYear; accounting.events.dfa.DfaRegistrationEvent playsRole dfaRegistrationEvents { multiplicity *; } } relation SpecializationDegreeRegistrationEventRegistration { student.Registration playsRole registration; accounting.events.specializationDegree.SpecializationDegreeRegistrationEvent playsRole specializationDegreeRegistrationEvent; } relation DistributedTestQuestions { onlineTests.DistributedTest playsRole distributedTest; onlineTests.StudentTestQuestion playsRole distributedTestQuestions { multiplicity *; } } relation DistributedTestScope { onlineTests.DistributedTest playsRole distributedTests { multiplicity *; } onlineTests.TestScope playsRole testScope; } relation DissertationEnrolmentConclusionProcess { Enrolment playsRole dissertationEnrolment; student.curriculum.ConclusionProcessVersion playsRole conclusionProcessVersions { multiplicity *; } } relation DomainObjectActionLogDomainObjectActionLogEntry { DomainObjectActionLog playsRole domainObjectActionLog; DomainObjectActionLogEntry playsRole domainObjectActionLogEntries { multiplicity *; } } relation DomainObjectActionLogPerson { Person playsRole person; DomainObjectActionLog playsRole domainObjectActionLogs { multiplicity *; } } relation EmployeeCreditNote { Person playsRole responsible; accounting.CreditNote playsRole creditNotes { multiplicity *; } } relation EmployeeHistoricEmployee { EmployeeHistoric playsRole historicList { multiplicity *; } Employee playsRole employee; } relation EmployeeHistoricMailingCostCenter { EmployeeHistoric playsRole mailingCostCenterAssociatedEmployeeHistorics { multiplicity *; } CostCenter playsRole mailingCostCenter; } relation EmployeeHistoricResponsibleEmployee { EmployeeHistoric playsRole responsibleEmployeeAssociatedEmployeeHistorics { multiplicity *; } Employee playsRole responsableEmployee; } relation EmployeeHistoricSalaryCostCenter { EmployeeHistoric playsRole salaryCostCenterAssociatedEmployeeHistorics { multiplicity *; } CostCenter playsRole salaryCostCenter; } relation EmployeeHistoricWorkingPlaceCostCenter { EmployeeHistoric playsRole workingPlaceCostCenterAssociatedEmployeeHistorics { multiplicity *; } CostCenter playsRole workingPlaceCostCenter; } relation EmployeePerson { Employee playsRole employee; Person playsRole person; } relation FakeEnrollmentPerson { Person playsRole person; FakeEnrollment playsRole fakeEnrollment { multiplicity *; } } relation FakeEnrollmentRootDomainObject { RootDomainObject playsRole rootDomainObject; FakeEnrollment playsRole fakeEnrollments { multiplicity *; } } relation FakeShiftRootDomainObject { RootDomainObject playsRole rootDomainObject; FakeShift playsRole fakeShifts { multiplicity *; } } relation FakeShiftEnrollmentRootDomainObject { RootDomainObject playsRole rootDomainObject; FakeShiftEnrollment playsRole fakeShiftEnrollments { multiplicity *; } } relation FakeShiftEnrollments { FakeShift playsRole fakeShift; FakeShiftEnrollment playsRole fakeShiftEnrollments { multiplicity *; } } relation FakeShiftEnrollmentPerson { Person playsRole person; FakeShiftEnrollment playsRole fakeShiftEnrollments { multiplicity *; } } relation EnrolmentCreditsInAnySecundaryArea { CreditsInAnySecundaryArea playsRole creditsInAnySecundaryAreas { multiplicity *; } Enrolment playsRole enrolment; } relation EnrolmentCreditsInScientificArea { CreditsInScientificArea playsRole creditsInScientificAreas { multiplicity *; } Enrolment playsRole enrolment; } relation EnrolmentEnrolmentEvaluation { Enrolment playsRole enrolment; EnrolmentEvaluation playsRole evaluations { multiplicity *; } } relation EnrolmentEvaluationPerson { EnrolmentEvaluation playsRole enrolmentEvaluationsConfirmations { multiplicity *; } Person playsRole person; } relation EnrolmentEvaluationExecutionPeriod { EnrolmentEvaluation playsRole enrolmentEvaluations { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation EnrolmentEvaluationImprovementOfApprovedEnrolmentEvent { EnrolmentEvaluation playsRole improvementEnrolmentEvaluations { multiplicity *; } accounting.events.ImprovementOfApprovedEnrolmentEvent playsRole improvementOfApprovedEnrolmentEvent; } relation EnrolmentEvaluationResponsiblePerson { EnrolmentEvaluation playsRole enrolmentEvaluations { multiplicity *; } Person playsRole personResponsibleForGrade; } relation EnrolmentExecutionPeriod { Enrolment playsRole enrolments { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation EnrolmentNotNeedToEnrollInCurricularCourse { Enrolment playsRole enrolments { multiplicity *; } degree.enrollment.NotNeedToEnrollInCurricularCourse playsRole notNeedToEnrollCurricularCourses { multiplicity *; } } relation EnrolmentPeriodExecutionPeriod { EnrolmentPeriod playsRole enrolmentPeriod { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation EnrolmentWrapperCredits { studentCurriculum.EnrolmentWrapper playsRole enrolments { multiplicity *; } studentCurriculum.Credits playsRole credits; } relation EnrolmentOutOfPeriodEventStudentCurricularPlan { accounting.events.EnrolmentOutOfPeriodEvent playsRole enrolmentOutOfPeriodEvents { multiplicity *; } StudentCurricularPlan playsRole studentCurricularPlan; } relation EnrolmentOutOfPeriodEventExecutionPeriod { accounting.events.EnrolmentOutOfPeriodEvent playsRole enrolmentOutOfPeriodEvents { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation InternalEnrolmentWrapperEnrolment { Enrolment playsRole enrolment; studentCurriculum.InternalEnrolmentWrapper playsRole enrolmentWrappers { multiplicity *; } } relation ExternalEnrolmentWrapperEnrolment { studentCurriculum.ExternalEnrolment playsRole enrolment; studentCurriculum.ExternalEnrolmentWrapper playsRole enrolmentWrappers { multiplicity *; } } relation EquivalencePlanEntryNewDegreeModule { degreeStructure.DegreeModule playsRole newDegreeModules { multiplicity *; } EquivalencePlanEntry playsRole newEquivalencePlanEntries { multiplicity *; } } relation EquivalencePlanEntryOldDegreeModule { degreeStructure.DegreeModule playsRole oldDegreeModules { multiplicity *; } EquivalencePlanEntry playsRole oldEquivalencePlanEntries { multiplicity *; } } relation EquivalencePlanEntryPreviousCourseGroup { degreeStructure.CourseGroup playsRole previousCourseGroupForNewDegreeModules; EquivalencePlanEntry playsRole previousEquivalencePlanEntries { multiplicity *; } } relation EquivalencePlanEquivalencePlanEntry { EquivalencePlan playsRole equivalencePlan; EquivalencePlanEntry playsRole entries { multiplicity *; } } relation EvaluationExecutionCourse { ExecutionCourse playsRole associatedExecutionCourses { multiplicity *; } Evaluation playsRole associatedEvaluations { multiplicity *; } } relation EventEditionEventConferenceArticlesAssociation { research.activity.EventEdition playsRole eventEdition; research.activity.EventConferenceArticlesAssociation playsRole eventConferenceArticlesAssociations { multiplicity *; } } relation EventEventEdition { research.activity.ResearchEvent playsRole event; research.activity.EventEdition playsRole eventEditions { multiplicity *; } } relation EventProjectEventAssociation { research.project.ProjectEventAssociation playsRole associatedProjects { multiplicity *; } research.activity.EventEdition playsRole eventEdition; } relation ExamCoordinatorBelongToUnit { vigilancy.ExamCoordinator playsRole examCoordinators { multiplicity *; } organizationalStructure.Unit playsRole unit; } relation ExamCoordinatorInExecutionYear { vigilancy.ExamCoordinator playsRole examCoordinators { multiplicity *; } ExecutionYear playsRole executionYear; } relation ExamCoordinatorManagesVigilantGroup { vigilancy.ExamCoordinator playsRole examCoordinators { multiplicity *; } vigilancy.VigilantGroup playsRole vigilantGroups { multiplicity *; } } relation ExamCoordinatorPerson { vigilancy.ExamCoordinator playsRole examCoordinators { multiplicity *; } Person playsRole person; } relation ExclusivenessDegreeModule { curricularRules.Exclusiveness playsRole participatingExclusivenessCurricularRules { multiplicity *; } degreeStructure.DegreeModule playsRole exclusiveDegreeModule; } relation ExecutionCourseAnnouncementBoardExecutionCourse { ExecutionCourse playsRole executionCourse; messaging.ExecutionCourseAnnouncementBoard playsRole board; } relation ExecutionCourseAttends { ExecutionCourse playsRole disciplinaExecucao; Attends playsRole attends { multiplicity *; } } relation ExecutionCourseBelongsToGroup { vigilancy.VigilantGroup playsRole vigilantGroup; ExecutionCourse playsRole executionCourses { multiplicity *; } } relation ExecutionCourseBibliographicReference { BibliographicReference playsRole associatedBibliographicReferences { multiplicity *; } ExecutionCourse playsRole executionCourse; } relation ExecutionCourseEvaluationMethod { EvaluationMethod playsRole evaluationMethod; ExecutionCourse playsRole executionCourse; } relation ExecutionCourseExecutionCourseProperty { ExecutionCourse playsRole executionCourse; classProperties.ExecutionCourseProperty playsRole executionCourseProperties { multiplicity *; } } relation ExecutionCourseProfessorship { ExecutionCourse playsRole executionCourse; Professorship playsRole professorships { multiplicity *; } } relation ExecutionCourseReport { gesdis.CourseReport playsRole courseReport; ExecutionCourse playsRole executionCourse; } relation ExecutionCourseSiteSite { ExecutionCourseSite playsRole site; ExecutionCourse playsRole siteExecutionCourse; } relation ExecutionCourseSummary { Summary playsRole associatedSummaries { multiplicity *; } ExecutionCourse playsRole executionCourse; } relation ExecutionCourseSender { ExecutionCourse playsRole course; util.email.ExecutionCourseSender playsRole sender; } relation CoordinatorSender { Degree playsRole degree; util.email.CoordinatorSender playsRole sender; } relation PersonFunctionSender { organizationalStructure.PersonFunction playsRole personFunction; util.email.PersonFunctionSender playsRole sender; } relation PersonSender { Person playsRole person; util.email.PersonSender playsRole sender; } relation ExecutionDegreeCampus { ExecutionDegree playsRole executionDegrees { multiplicity *; } space.Campus playsRole campus; } relation ExecutionDegreeCoordinator { ExecutionDegree playsRole executionDegree; Coordinator playsRole coordinatorsList { multiplicity *; } } relation ExecutionDegreeDegreeCurricularPlan { ExecutionDegree playsRole executionDegrees { multiplicity *; } DegreeCurricularPlan playsRole degreeCurricularPlan; } relation ExecutionDegreeExecutionYear { ExecutionDegree playsRole executionDegrees { multiplicity *; } ExecutionYear playsRole executionYear; } relation OccupationPeriodReferenceExecutionDegree { ExecutionDegree playsRole executionDegree; OccupationPeriodReference playsRole occupationPeriodReferences { multiplicity *; } } relation OccupationPeriodReferencePeriod { OccupationPeriod playsRole occupationPeriod; OccupationPeriodReference playsRole executionDegrees { multiplicity *; } } relation ExecutionDegreeScientificCommission { ExecutionDegree playsRole executionDegree; ScientificCommission playsRole scientificCommissionMembers { multiplicity *; } } relation ExecutionDegreeShiftDistributionEntry { ExecutionDegree playsRole executionDegree; candidacy.degree.ShiftDistributionEntry playsRole shiftDistributionEntries { multiplicity *; } } relation ExecutionPeriodContextBegin { ExecutionSemester playsRole beginExecutionPeriod; degreeStructure.Context playsRole beginExecutionPeriodContexts { multiplicity *; } } relation ExecutionPeriodContextEnd { ExecutionSemester playsRole endExecutionPeriod; degreeStructure.Context playsRole endExecutionPeriodContexts { multiplicity *; } } relation ExecutionPeriodCurriculumLineLog { log.CurriculumLineLog playsRole curriculumLineLogs { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation ExecutionPeriodExecutionCourse { ExecutionCourse playsRole associatedExecutionCourses { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation ExecutionPeriodExecutionYear { ExecutionSemester playsRole executionPeriods { multiplicity *; } ExecutionYear playsRole executionYear; } relation ExecutionPeriodSchoolClass { ExecutionSemester playsRole executionPeriod; SchoolClass playsRole schoolClasses { multiplicity *; } } relation ExecutionYearAcademicServiceRequest { ExecutionYear playsRole executionYear; serviceRequests.AcademicServiceRequest playsRole academicServiceRequests { multiplicity *; } } relation ExecutionYearMasterDegreeInsurancePaymentCode { ExecutionYear playsRole executionYear; accounting.paymentCodes.MasterDegreeInsurancePaymentCode playsRole masterDegreeInsurancePaymentCodes { multiplicity *; } } relation ExecutionYearPaymentPlan { ExecutionYear playsRole executionYear; accounting.PaymentPlan playsRole paymentPlans { multiplicity *; } } relation ExecutionYearShiftDistribution { ExecutionYear playsRole executionYear; candidacy.degree.ShiftDistribution playsRole shiftDistribution; } relation ExemptionEmployee { Person playsRole responsible; accounting.Exemption playsRole createdExemptions { multiplicity *; } } relation ExemptionEvent { accounting.Event playsRole event; accounting.Exemption playsRole exemptions { multiplicity *; } } relation ExemptionExemptionJustification { accounting.events.ExemptionJustification playsRole exemptionJustification; accounting.Exemption playsRole exemption; } relation ExpectationEvaluationGroupAppraiserTeacher { Teacher playsRole appraiser; ExpectationEvaluationGroup playsRole evaluatedExpectationEvaluationGroups { multiplicity *; } } relation ExpectationEvaluationGroupEvaluatedTeacher { Teacher playsRole evaluated; ExpectationEvaluationGroup playsRole appraiserExpectationEvaluationGroups { multiplicity *; } } relation ExpectationEvaluationGroupExecutionYear { ExecutionYear playsRole executionYear; ExpectationEvaluationGroup playsRole expectationEvaluationGroups { multiplicity *; } } relation ExternalActivityTeacher { teacher.ExternalActivity playsRole associatedExternalActivities { multiplicity *; } Teacher playsRole teacher; } relation ExternalCurricularCourseExternalEnrolment { studentCurriculum.ExternalEnrolment playsRole externalEnrolments { multiplicity *; } ExternalCurricularCourse playsRole externalCurricularCourse; } relation ExternalCurricularCourseUnit { organizationalStructure.Unit playsRole unit; ExternalCurricularCourse playsRole externalCurricularCourses { multiplicity *; } } relation ExternalEnrolmentExecutionPeriod { studentCurriculum.ExternalEnrolment playsRole externalEnrolments { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation ExternalEnrolmentNotNeedToEnrollInCurricularCourse { studentCurriculum.ExternalEnrolment playsRole externalEnrolments { multiplicity *; } degree.enrollment.NotNeedToEnrollInCurricularCourse playsRole notNeedToEnrollCurricularCourses { multiplicity *; } } relation ExternalRegistrationDataInstitution { student.ExternalRegistrationData playsRole externalRegistrationDatas { multiplicity *; } organizationalStructure.Unit playsRole institution; } relation ExternalRegistrationDataRegistration { student.ExternalRegistrationData playsRole externalRegistrationData; student.Registration playsRole registration; } relation FirstYearShiftsCapacityLogWithExecutionSemester { ExecutionSemester playsRole executionSemester; log.FirstYearShiftsCapacityToggleLog playsRole firstYearShiftsCapacityToggleLog { multiplicity *; } } relation FirstYearShiftsCapacityLogWithUser { User playsRole creator; log.FirstYearShiftsCapacityToggleLog playsRole firstYearShiftsCapacityToggleLog { multiplicity *; } } relation PersonPhoto { Photograph playsRole personalPhoto; Person playsRole person; } relation PhotoRejector { Photograph playsRole rejectedPhoto { multiplicity *; } Person playsRole rejector; } relation PhotoApprover { Photograph playsRole approvedPhoto { multiplicity *; } Person playsRole approver; } relation PreviousPhotograph { Photograph playsRole previous; Photograph playsRole next; } relation PhotographContent { Photograph playsRole photograph; PhotographContent playsRole content { multiplicity *; } } relation FileTagging { UnitFileTag playsRole unitFileTags { multiplicity *; } UnitFile playsRole taggedFiles { multiplicity *; } } relation ForumSubscriptionForum { messaging.ForumSubscription playsRole forumSubscriptions { multiplicity *; } messaging.Forum playsRole forum; } relation ForumSubscriptionPerson { messaging.ForumSubscription playsRole forumSubscriptions { multiplicity *; } Person playsRole person; } relation FunctionParentInherentFunction { organizationalStructure.Function playsRole inherentFunctions { multiplicity *; } organizationalStructure.Function playsRole parentInherentFunction; } relation GaugingTestResultStudent { gaugingTests.physics.GaugingTestResult playsRole associatedGaugingTestResult; student.Registration playsRole student; } relation GenericEventGenericEventSpaceOccupation { GenericEvent playsRole genericEvent; space.GenericEventSpaceOccupation playsRole genericEventSpaceOccupations { multiplicity *; } } relation GoalExecutionCourse { ExportGrouping playsRole exportGroupings { multiplicity *; } ExecutionCourse playsRole executionCourse; } relation GrantContractGrantCostCenter { grant.contract.GrantContract playsRole associatedGrantContracts { multiplicity *; } grant.contract.GrantCostCenter playsRole grantCostCenter; } relation GrantContractGrantType { grant.contract.GrantContract playsRole associatedGrantContracts { multiplicity *; } grant.contract.GrantType playsRole grantType; } relation GrantContractMovementGrantContract { grant.contract.GrantContractMovement playsRole associatedGrantContractMovements { multiplicity *; } grant.contract.GrantContract playsRole grantContract; } relation GrantContractRegimeGrantContract { grant.contract.GrantContractRegime playsRole contractRegimes { multiplicity *; } grant.contract.GrantContract playsRole grantContract; } relation GrantContractRegimeGrantCostCenter { grant.contract.GrantContractRegime playsRole associatedGrantContractRegimes { multiplicity *; } grant.contract.GrantCostCenter playsRole grantCostCenter; } relation GrantContractRegimeTeacher { grant.contract.GrantContractRegime playsRole associatedGrantContractRegimes { multiplicity *; } Teacher playsRole teacher; } relation GrantInsuranceGrantContract { grant.contract.GrantInsurance playsRole grantInsurance; grant.contract.GrantContract playsRole grantContract; } relation GrantInsuranceGrantPaymentEntity { grant.contract.GrantInsurance playsRole associatedGrantInsurances { multiplicity *; } grant.contract.GrantPaymentEntity playsRole grantPaymentEntity; } relation GrantOrientationTeacherGrantContract { grant.contract.GrantOrientationTeacher playsRole grantOrientationTeachers { multiplicity *; } grant.contract.GrantContract playsRole grantContract; } relation GrantOrientationTeacherTeacher { grant.contract.GrantOrientationTeacher playsRole associatedGrantOrientationTeachers { multiplicity *; } Teacher playsRole orientationTeacher; } relation GrantOwnerGrantContract { grant.owner.GrantOwner playsRole grantOwner; grant.contract.GrantContract playsRole grantContracts { multiplicity *; } } relation GrantOwnerPerson { grant.owner.GrantOwner playsRole grantOwner; Person playsRole person; } relation GrantPartGrantPaymentEntity { grant.contract.GrantPart playsRole associatedGrantParts { multiplicity *; } grant.contract.GrantPaymentEntity playsRole grantPaymentEntity; } relation GrantPartGrantSubsidy { grant.contract.GrantPart playsRole associatedGrantParts { multiplicity *; } grant.contract.GrantSubsidy playsRole grantSubsidy; } relation GrantPartTeacher { grant.contract.GrantPart playsRole associatedGrantParts { multiplicity *; } Teacher playsRole responsibleTeacher; } relation GrantPaymentEntityTeacher { grant.contract.GrantPaymentEntity playsRole associatedGrantPaymentEntities { multiplicity *; } Teacher playsRole responsibleTeacher; } relation GrantProjectGrantCostCenter { grant.contract.GrantProject playsRole associatedGrantProjects { multiplicity *; } grant.contract.GrantCostCenter playsRole grantCostCenter; } relation GrantSubsidyGrantContract { grant.contract.GrantSubsidy playsRole associatedGrantSubsidies { multiplicity *; } grant.contract.GrantContract playsRole grantContract; } relation GratuityEventStudentCurricularPlan { StudentCurricularPlan playsRole studentCurricularPlan; accounting.events.gratuity.GratuityEvent playsRole gratuityEvents { multiplicity *; } } relation GratuityPaymentPlanGratuityEventWithPaymentPlan { accounting.events.gratuity.GratuityEventWithPaymentPlan playsRole gratuityEventsWithPaymentPlan { multiplicity *; } accounting.PaymentPlan playsRole gratuityPaymentPlan; } relation GratuitySituationEmployee { GratuitySituation playsRole gratuitySituations { multiplicity *; } Employee playsRole employee; } relation GratuitySituationGratuityValues { GratuitySituation playsRole gratuitySituations { multiplicity *; } GratuityValues playsRole gratuityValues; } relation GratuitySituationPenaltyExemptionEmployee { GratuitySituation playsRole penaltyExemptionGratuitySituations { multiplicity *; } Employee playsRole penaltyExemptionEmployee; } relation GratuitySituationStudentCurricularPlan { GratuitySituation playsRole gratuitySituations { multiplicity *; } StudentCurricularPlan playsRole studentCurricularPlan; } relation GratuityTransactionGratuitySituation { transactions.GratuityTransaction playsRole transactionList { multiplicity *; } GratuitySituation playsRole gratuitySituation; } relation GratuityValuesEmployee { GratuityValues playsRole gratuityValues { multiplicity *; } Employee playsRole employee; } relation GratuityValuesExecutionDegree { GratuityValues playsRole gratuityValues; ExecutionDegree playsRole executionDegree; } relation GroupElementQuestion { tests.NewGroupElement playsRole parentElements { multiplicity *; } tests.NewQuestion playsRole child; } relation GroupElementQuestionGroup { tests.NewGroupElement playsRole childElements { multiplicity *; } tests.NewQuestionGroup playsRole parent; } relation GroupExecutionDegree { finalDegreeWork.FinalDegreeWorkGroup playsRole associatedFinalDegreeWorkGroups { multiplicity *; } ExecutionDegree playsRole executionDegree; } relation GroupGroupProposal { finalDegreeWork.FinalDegreeWorkGroup playsRole finalDegreeDegreeWorkGroup; finalDegreeWork.GroupProposal playsRole groupProposals { multiplicity *; } } relation GroupGroupStudent { finalDegreeWork.FinalDegreeWorkGroup playsRole finalDegreeDegreeWorkGroup; finalDegreeWork.GroupStudent playsRole groupStudents { multiplicity *; } } relation GroupProposal { finalDegreeWork.Proposal playsRole proposalAttributed; finalDegreeWork.FinalDegreeWorkGroup playsRole groupAttributed; } relation GroupProposalByTeacher { finalDegreeWork.Proposal playsRole proposalAttributedByTeacher; finalDegreeWork.FinalDegreeWorkGroup playsRole groupAttributedByTeacher; } relation GroupProposalProposal { finalDegreeWork.Proposal playsRole finalDegreeWorkProposal; finalDegreeWork.GroupProposal playsRole groupProposals { multiplicity *; } } relation GroupStudentProposal { finalDegreeWork.GroupStudent playsRole associatedGroupStudents { multiplicity *; } finalDegreeWork.Proposal playsRole finalDegreeWorkProposalConfirmation; } relation GroupStudentStudent { finalDegreeWork.GroupStudent playsRole associatedGroupStudents { multiplicity *; } student.Registration playsRole student; } relation GroupingAttends { Attends playsRole attends { multiplicity *; } Grouping playsRole groupings { multiplicity *; } } relation GuideContributor { Guide playsRole guides { multiplicity *; } Contributor playsRole contributor; } relation GuideContributorParty { Guide playsRole payedGuides { multiplicity *; } organizationalStructure.Party playsRole contributorParty; } relation GuideEntryGuide { GuideEntry playsRole guideEntries { multiplicity *; } Guide playsRole guide; } relation GuideExecutionDegree { Guide playsRole guides { multiplicity *; } ExecutionDegree playsRole executionDegree; } relation GuidePerson { Guide playsRole guides { multiplicity *; } Person playsRole person; } relation GuideSituationGuide { GuideSituation playsRole guideSituations { multiplicity *; } Guide playsRole guide; } relation HolidayLocality { Holiday playsRole holidays { multiplicity *; } Locality playsRole locality; } relation IdDocumentPerson { Person playsRole person; person.IdDocument playsRole idDocuments { multiplicity *; } } relation IdDocumentTypeObjectIdDocument { person.IdDocumentTypeObject playsRole idDocumentType; person.IdDocument playsRole idDocuments { multiplicity *; } } relation InquiriesCourseExecutionCourse { oldInquiries.InquiriesCourse playsRole associatedInquiriesCourses { multiplicity *; } ExecutionCourse playsRole executionCourse; } relation InquiriesCourseExecutionDegreeCourse { oldInquiries.InquiriesCourse playsRole associatedInquiriesCoursesByCourse { multiplicity *; } ExecutionDegree playsRole executionDegreeCourse; } relation InquiriesCourseExecutionDegreeStudent { oldInquiries.InquiriesCourse playsRole associatedInquiriesCoursesByStudent { multiplicity *; } ExecutionDegree playsRole executionDegreeStudent; } relation InquiriesCourseExecutionPeriod { oldInquiries.InquiriesCourse playsRole associatedInquiriesCourses { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation InquiriesCourseSchoolClass { oldInquiries.InquiriesCourse playsRole associatedInquiriesCourses { multiplicity *; } SchoolClass playsRole studentSchoolClass; } relation InquiriesRegistryExecutionCourse { oldInquiries.InquiriesRegistry playsRole associatedInquiriesRegistries { multiplicity *; } ExecutionCourse playsRole executionCourse; } relation InquiriesRegistryExecutionPeriod { oldInquiries.InquiriesRegistry playsRole associatedInquiriesRegistries { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation InquiriesRegistryStudent { oldInquiries.InquiriesRegistry playsRole associatedInquiriesRegistries { multiplicity *; } student.Registration playsRole student; } relation InquiriesRegistryCurricularCourse { oldInquiries.InquiriesRegistry playsRole associatedInquiriesRegistries { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation InquiriesRoomDomainRoom { oldInquiries.InquiriesRoom playsRole associatedInquiriesRooms { multiplicity *; } space.AllocatableSpace playsRole room; } relation InquiriesRoomInquiriesCourse { oldInquiries.InquiriesRoom playsRole associatedInquiriesRooms { multiplicity *; } oldInquiries.InquiriesCourse playsRole inquiriesCourse; } relation InquiriesStudentExecutionPeriodExecutionPeriod { oldInquiries.InquiriesStudentExecutionPeriod playsRole inquiriesStudentExecutionPeriods { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation InquiriesStudentExecutionPeriodStudent { oldInquiries.InquiriesStudentExecutionPeriod playsRole inquiriesStudentExecutionPeriods { multiplicity *; } student.Student playsRole student; } relation InquiriesTeacherDomainProfessorship { oldInquiries.InquiriesTeacher playsRole associatedInquiriesTeacher { multiplicity *; } Professorship playsRole professorship; } relation InquiriesTeacherInquiriesCourse { oldInquiries.InquiriesTeacher playsRole associatedInquiriesTeachers { multiplicity *; } oldInquiries.InquiriesCourse playsRole inquiriesCourse; } relation InquiriesTeacherNonAffiliatedTeacher { oldInquiries.InquiriesTeacher playsRole associatedInquiriesTeachers { multiplicity *; } NonAffiliatedTeacher playsRole nonAffiliatedTeacher; } relation InquiryResponsePeriodExecutionPeriod { oldInquiries.InquiryResponsePeriod playsRole inquiryResponsePeriods { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation InstallmentAccountingTransactionInstallment { accounting.Installment playsRole installment; accounting.accountingTransactions.InstallmentAccountingTransaction playsRole accountingTransactions { multiplicity *; } } relation InstallmentPaymentCode { accounting.Installment playsRole installment; accounting.paymentCodes.InstallmentPaymentCode playsRole paymentCodes { multiplicity *; } } relation InstallmentPaymentPlan { accounting.PaymentPlan playsRole paymentPlan; accounting.Installment playsRole installments { multiplicity *; } } relation InstallmentPenaltyExemptionInstallment { accounting.Installment playsRole installment; accounting.events.gratuity.exemption.penalty.InstallmentPenaltyExemption playsRole installmentPenaltyExemptions { multiplicity *; } } relation InsuranceTransactionExecutionYear { transactions.InsuranceTransaction playsRole insuranceTransactions { multiplicity *; } ExecutionYear playsRole executionYear; } relation InsuranceTransactionStudent { transactions.InsuranceTransaction playsRole insuranceTransactions { multiplicity *; } student.Registration playsRole student; } relation InsuranceValueExecutionYear { InsuranceValue playsRole insuranceValue; ExecutionYear playsRole executionYear; } relation InvitationParty { organizationalStructure.Party playsRole responsible; organizationalStructure.Invitation playsRole invitationAccountabilities { multiplicity *; } } relation AttachmentFileContent { contents.Attachment playsRole attachment; FileContent playsRole file; } relation JournalIssueArticleAssociation { research.activity.JournalIssue playsRole journalIssue; research.activity.ArticleAssociation playsRole articleAssociations { multiplicity *; } } relation JournalIssueScientificJournal { research.activity.ScientificJournal playsRole scientificJournal; research.activity.JournalIssue playsRole journalIssues { multiplicity *; } } relation LessonLessonSpaceOccupation { Lesson playsRole lesson; space.LessonSpaceOccupation playsRole lessonSpaceOccupation; } relation LessonPlanningExecutionCourse { ExecutionCourse playsRole executionCourse; LessonPlanning playsRole lessonPlannings { multiplicity *; } } relation LessonShift { Lesson playsRole associatedLessons { multiplicity *; } Shift playsRole shift; } relation LoginAliasLogin { Login playsRole login; LoginAlias playsRole alias { multiplicity *; } } relation LoginLoginPeriod { Login playsRole login; LoginPeriod playsRole loginPeriods { multiplicity *; } } relation MakeExportProposal { ExportGrouping playsRole exportGroupingSenders { multiplicity *; } Person playsRole senderPerson; } relation MarkAttends { Mark playsRole associatedMarks { multiplicity *; } Attends playsRole attend; } relation MarkEvaluation { Mark playsRole marks { multiplicity *; } Evaluation playsRole evaluation; } relation MarkSheetConfirmationPerson { MarkSheet playsRole confirmedMarkSheets { multiplicity *; } Person playsRole validator; } relation MarkSheetCreationPerson { MarkSheet playsRole createdMarkSheets { multiplicity *; } Person playsRole creator; } relation MarkSheetCurricularCourse { MarkSheet playsRole markSheets { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation MarkSheetEnrolmentEvaluation { MarkSheet playsRole markSheet; EnrolmentEvaluation playsRole enrolmentEvaluations { multiplicity *; } } relation MarkSheetExecutionPeriod { ExecutionSemester playsRole executionPeriod; MarkSheet playsRole markSheets { multiplicity *; } } relation MarkSheetTeacher { MarkSheet playsRole markSheets { multiplicity *; } Teacher playsRole responsibleTeacher; } relation MasterDegreeCandidateExecutionDegree { MasterDegreeCandidate playsRole masterDegreeCandidates { multiplicity *; } ExecutionDegree playsRole executionDegree; } relation MasterDegreeCandidateGuider { MasterDegreeCandidate playsRole masterDegreeCandidates { multiplicity *; } Teacher playsRole guider; } relation MasterDegreeCandidatePerson { MasterDegreeCandidate playsRole masterDegreeCandidates { multiplicity *; } Person playsRole person; } relation MasterDegreeProofVersionEmployee { MasterDegreeProofVersion playsRole masterDegreeProofVersions { multiplicity *; } Employee playsRole responsibleEmployee; } relation MasterDegreeProofVersionExternalJury { MasterDegreeProofVersion playsRole masterDegreeProofsExternalJury { multiplicity *; } organizationalStructure.ExternalContract playsRole externalJuries { multiplicity *; } } relation MasterDegreeProofVersionJury { MasterDegreeProofVersion playsRole masterDegreeProofsJury { multiplicity *; } Teacher playsRole juries { multiplicity *; } } relation MasterDegreeProofVersionMasterDegreeThesis { MasterDegreeProofVersion playsRole masterDegreeProofVersions { multiplicity *; } MasterDegreeThesis playsRole masterDegreeThesis; } relation MasterDegreeThesisConclusionProcess { MasterDegreeThesis playsRole masterDegreeThesis; student.curriculum.ConclusionProcessVersion playsRole conclusionProcessVersions { multiplicity *; } } relation MasterDegreeThesisDataVersionAssistentGuider { MasterDegreeThesisDataVersion playsRole masterDegreeThesisAssistentGuider { multiplicity *; } Teacher playsRole assistentGuiders { multiplicity *; } } relation MasterDegreeThesisDataVersionEmployee { MasterDegreeThesisDataVersion playsRole masterDegreeThesisDataVersions { multiplicity *; } Employee playsRole responsibleEmployee; } relation MasterDegreeThesisDataVersionExternalAssistentGuider { MasterDegreeThesisDataVersion playsRole masterDegreeThesisExternalAssistentGuider { multiplicity *; } organizationalStructure.ExternalContract playsRole externalAssistentGuiders { multiplicity *; } } relation MasterDegreeThesisDataVersionExternalGuider { MasterDegreeThesisDataVersion playsRole masterDegreeThesisExternalGuider { multiplicity *; } organizationalStructure.ExternalContract playsRole externalGuiders { multiplicity *; } } relation MasterDegreeThesisDataVersionGuider { MasterDegreeThesisDataVersion playsRole masterDegreeThesisGuider { multiplicity *; } Teacher playsRole guiders { multiplicity *; } } relation MasterDegreeThesisDataVersionMasterDegreeThesis { MasterDegreeThesisDataVersion playsRole masterDegreeThesisDataVersions { multiplicity *; } MasterDegreeThesis playsRole masterDegreeThesis; } relation MasterDegreeThesisStudentCurricularPlan { MasterDegreeThesis playsRole masterDegreeThesis; StudentCurricularPlan playsRole studentCurricularPlan; } relation MaterialSpaceOccupationMaterial { material.Material playsRole material; space.MaterialSpaceOccupation playsRole materialSpaceOccupations { multiplicity *; } } relation MetadataFromExecutionCourse { onlineTests.Metadata playsRole metadatas { multiplicity *; } ExecutionCourse playsRole executionCourse; } relation ModalityCourseEquivalency { Seminaries.CourseEquivalency playsRole courseEquivalencies { multiplicity *; } Seminaries.Modality playsRole modality; } relation ModelRestrictionModelGroup { tests.NewModelRestriction playsRole childRestrictions { multiplicity *; } tests.NewModelGroup playsRole parentGroup; } relation ModelRestrictionQuestion { tests.NewModelRestriction playsRole modelRestrictions { multiplicity *; } tests.NewQuestion playsRole question; } relation NonAffiliatedTeacherExecutionCourse { NonAffiliatedTeacher playsRole nonAffiliatedTeachers { multiplicity *; } ExecutionCourse playsRole executionCourses { multiplicity *; } } relation OldCurricularCourseCurricularCourseEquivalence { CurricularCourseEquivalence playsRole oldCurricularCourseEquivalences { multiplicity *; } CurricularCourse playsRole oldCurricularCourses { multiplicity *; } } relation OldInquiriesCoursesResDegree { oldInquiries.OldInquiriesCoursesRes playsRole associatedOldInquiriesCoursesRes { multiplicity *; } Degree playsRole degree; } relation OldInquiriesCoursesResExecutionPeriod { oldInquiries.OldInquiriesCoursesRes playsRole associatedOldInquiriesCoursesRes { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation OldInquiriesSummaryDegree { oldInquiries.OldInquiriesSummary playsRole associatedOldInquiriesSummaries { multiplicity *; } Degree playsRole degree; } relation OldInquiriesSummaryExecutionPeriod { oldInquiries.OldInquiriesSummary playsRole associatedOldInquiriesSummaries { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation OldInquiriesTeachersResDegree { oldInquiries.OldInquiriesTeachersRes playsRole associatedOldInquiriesTeachersRes { multiplicity *; } Degree playsRole degree; } relation OldInquiriesTeachersResExecutionPeriod { oldInquiries.OldInquiriesTeachersRes playsRole associatedOldInquiriesTeachersRes { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation OldInquiriesTeachersResTeacher { oldInquiries.OldInquiriesTeachersRes playsRole associatedOldInquiriesTeachersRes { multiplicity *; } Teacher playsRole teacher; } relation OnlineDistributedTest { onlineTests.OnlineTest playsRole onlineTest; onlineTests.DistributedTest playsRole distributedTest; } relation OptionalCurricularCourseOptionalEnrolment { degreeStructure.OptionalCurricularCourse playsRole optionalCurricularCourse; OptionalEnrolment playsRole optionalEnrolments { multiplicity *; } } relation OrientationTeacher { teacher.Orientation playsRole associatedOrientations { multiplicity *; } Teacher playsRole teacher; } relation OtherTypeCreditLineExecutionPeriod { credits.OtherTypeCreditLine playsRole associatedOtherTypeCreditLines { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation ParentFAQSectionChildFAQEntry { support.FAQEntry playsRole childEntries { multiplicity *; } support.FAQSection playsRole parentSection; } relation ParentFAQSectionChildFAQSection { support.FAQSection playsRole childSections { multiplicity *; } support.FAQSection playsRole parentSection; } relation ParkingFileNewParkingDocument { parking.ParkingFile playsRole parkingFile; parking.NewParkingDocument playsRole newParkingDocument; } relation ParkingPartyNewParkingDocument { parking.ParkingParty playsRole parkingParty; parking.NewParkingDocument playsRole driverLicenseDocument; } relation ParkingPartyParkingGroup { parking.ParkingGroup playsRole parkingGroup; parking.ParkingParty playsRole parkingParties { multiplicity *; } } relation ParkingRequestNewParkingDocument { parking.ParkingRequest playsRole parkingRequest; parking.NewParkingDocument playsRole driverLicenseDocument; } relation ParkingRequestParkingParty { parking.ParkingParty playsRole parkingParty; parking.ParkingRequest playsRole parkingRequests { multiplicity *; } } relation PartyParkingHistoryParty { organizationalStructure.Party playsRole party; parking.ParkingPartyHistory playsRole parkingPartyHistories { multiplicity *; } } relation ParkingPartyHistoryParkingGroup { parking.ParkingGroup playsRole parkingGroup; parking.ParkingPartyHistory playsRole parkingPartyHistories { multiplicity *; } } relation ParticipationParty { organizationalStructure.Party playsRole party; research.activity.Participation playsRole participations { multiplicity *; } } relation ParticipationRootDomainObject { RootDomainObject playsRole rootDomainObject; research.activity.Participation playsRole participations { multiplicity *; } } relation ParticipationsInCooperation { research.activity.Cooperation playsRole cooperation; research.activity.CooperationParticipation playsRole participations { multiplicity *; } } relation ParticipationsInEvent { research.activity.ResearchEvent playsRole event; research.activity.EventParticipation playsRole participations { multiplicity *; } } relation ParticipationsInEventEdition { research.activity.EventEdition playsRole eventEdition; research.activity.EventEditionParticipation playsRole participations { multiplicity *; } } relation ParticipationsInJournalIssue { research.activity.JournalIssue playsRole journalIssue; research.activity.JournalIssueParticipation playsRole participations { multiplicity *; } } relation ParticipationsInScientificJournal { research.activity.ScientificJournal playsRole scientificJournal; research.activity.ScientificJournalParticipation playsRole participations { multiplicity *; } } relation PartyPartySocialSecurityNumber { organizationalStructure.Party playsRole party; organizationalStructure.PartySocialSecurityNumber playsRole partySocialSecurityNumber; } relation RootDomainObjectConclusionProcess { RootDomainObject playsRole rootDomainObject; student.curriculum.ConclusionProcess playsRole conclusionProcesses { multiplicity *; } } relation RootDomainObjectConclusionProcessVersion { RootDomainObject playsRole rootDomainObject; student.curriculum.ConclusionProcessVersion playsRole conclusionProcessVersions { multiplicity *; } } relation RootDomainObjectPartySocialSecurityNumber { RootDomainObject playsRole rootDomainObject; organizationalStructure.PartySocialSecurityNumber playsRole partySocialSecurityNumbers { multiplicity *; } } relation PartyAccount { organizationalStructure.Party playsRole party; accounting.Account playsRole accounts { multiplicity *; } } relation PartyAnnouncementBoard { messaging.PartyAnnouncementBoard playsRole boards { multiplicity *; } organizationalStructure.Party playsRole party; } relation PartyCountry { organizationalStructure.Party playsRole associatedParties { multiplicity *; } Country playsRole nationality; } relation PartyInterest { organizationalStructure.Party playsRole party; research.ResearchInterest playsRole researchInterests { multiplicity *; } } relation PartyParkingParty { organizationalStructure.Party playsRole party; parking.ParkingParty playsRole parkingParty; } relation PartyPartyContact { organizationalStructure.Party playsRole party; contacts.PartyContact playsRole partyContacts { multiplicity *; } } relation PrevContactPartyContact { contacts.PartyContact playsRole prevPartyContact; contacts.PartyContact playsRole currentPartyContact; } relation PartyPartyContactValidation { contacts.PartyContact playsRole partyContact; contacts.PartyContactValidation playsRole partyContactValidation; } relation PhysicalAddressValidationPhysicalAddressValidationFile { contacts.PhysicalAddressValidation playsRole pyhsicalAddressValidation; contacts.PhysicalAddressValidationFile playsRole file; } relation PartyPartyType { organizationalStructure.PartyType playsRole partyType; organizationalStructure.Party playsRole parties { multiplicity *; } } relation PartyResourceResponsibility { resource.ResourceResponsibility playsRole resourceResponsibility { multiplicity *; } organizationalStructure.Party playsRole party; } relation PartyTypeChildConnectionRule { organizationalStructure.PartyType playsRole allowedChildPartyType; organizationalStructure.ConnectionRule playsRole allowedParentConnectionRules { multiplicity *; } } relation PartyTypeParentConnectionRule { organizationalStructure.PartyType playsRole allowedParentPartyType; organizationalStructure.ConnectionRule playsRole allowedChildConnectionRules { multiplicity *; } } relation PaymentCodeAccountingEvent { accounting.Event playsRole accountingEvent; accounting.paymentCodes.AccountingEventPaymentCode playsRole paymentCodes { multiplicity *; } } relation PaymentCodeGratuitySituation { GratuitySituation playsRole gratuitySituation; accounting.paymentCodes.GratuitySituationPaymentCode playsRole paymentCode; } relation RootDomainObjectPaymentCodeMapping { RootDomainObject playsRole rootDomainObject; accounting.PaymentCodeMapping playsRole paymentCodeMappings { multiplicity *; } } relation PaymentCodeMappingExecutionInterval { ExecutionInterval playsRole executionInterval; accounting.PaymentCodeMapping playsRole paymentCodeMappings { multiplicity *; } } relation PaymentCodeMappingOldPaymentCode { accounting.PaymentCode playsRole oldPaymentCode; accounting.PaymentCodeMapping playsRole oldPaymentCodeMappings { multiplicity *; } } relation PaymentCodeMappingNewPaymentCode { accounting.PaymentCode playsRole newPaymentCode; accounting.PaymentCodeMapping playsRole newPaymentCodeMappings { multiplicity *; } } relation PaymentPhaseGratuityValues { PaymentPhase playsRole paymentPhaseList { multiplicity *; } GratuityValues playsRole gratuityValues; } relation PaymentTransactionGuideEntry { transactions.PaymentTransaction playsRole paymentTransaction; GuideEntry playsRole guideEntry; } relation PeriodNextPeriod { OccupationPeriod playsRole previousPeriod; OccupationPeriod playsRole nextPeriod; } relation PermissionUnitParty { tests.NewPermissionUnit playsRole permissionUnits { multiplicity *; } organizationalStructure.Party playsRole party; } relation PermissionUnitQuestion { tests.NewPermissionUnit playsRole permissionUnits { multiplicity *; } tests.NewQuestion playsRole question; } relation PersistentAccessGroupRoot { RootDomainObject playsRole rootDomainObject { multiplicity 0..1; } accessControl.PersistentAccessGroup playsRole persistentAccessGroup { multiplicity *; } } relation PersistentAccessGroupDeletedRoot { RootDomainObject playsRole deletedRootDomainObject { multiplicity 0..1; } accessControl.PersistentAccessGroup playsRole deletedPersistentAccessGroup { multiplicity *; } } relation PersistentAccessGroupMembers { organizationalStructure.Party playsRole member { multiplicity *; } accessControl.PersistentAccessGroup playsRole persistentAccessGroup { multiplicity *; } } relation PersistentAccessGroupCreator { accessControl.PersistentAccessGroup playsRole createdGroup { multiplicity *; } Person playsRole creator { multiplicity 1..1; } } relation PersistentAccessGroupHistoric { accessControl.PersistentAccessGroup playsRole oldGroup { multiplicity 0..1; } accessControl.PersistentAccessGroup playsRole newGroup { multiplicity 0..1; } } relation AcademicAuthorizationPrograms { accessControl.academicAdministration.PersistentAcademicAuthorizationGroup playsRole academicGroup { multiplicity *; } AcademicProgram playsRole program { multiplicity *; } } relation AcademicAuthorizationOffices { accessControl.academicAdministration.PersistentAcademicAuthorizationGroup playsRole academicGroup { multiplicity *; } administrativeOffice.AdministrativeOffice playsRole office { multiplicity *; } } relation PersistentGroupMembersPerson { Person playsRole persons { multiplicity *; } accessControl.PersistentGroupMembers playsRole persistentGroups { multiplicity *; } } relation PersistentGroupMembersUnit { organizationalStructure.Unit playsRole unit; accessControl.PersistentGroupMembers playsRole persistentGroups { multiplicity *; } } relation PersonAccountPerson { PersonAccount playsRole associatedPersonAccount; Person playsRole person; } relation PersonAccountingEvent { organizationalStructure.Party playsRole party; accounting.Event playsRole events { multiplicity *; } } relation PersonArticleAssociation { Person playsRole creator; research.activity.ArticleAssociation playsRole articleAssociations { multiplicity *; } } relation PersonBlueprint { Person playsRole creationPerson; space.Blueprint playsRole blueprints { multiplicity *; } } relation PersonCandidacy { Person playsRole person; candidacy.Candidacy playsRole candidacies { multiplicity *; } } relation PersonCountryOfBirth { Person playsRole associatedBornedPersons { multiplicity *; } Country playsRole countryOfBirth; } relation PersonDepartment { Person playsRole associatedPersons { multiplicity *; } Department playsRole manageableDepartmentCredits { multiplicity *; } } relation PersonEventConferenceArticlesAssociation { Person playsRole person; research.activity.EventConferenceArticlesAssociation playsRole eventConferenceArticlesAssociations { multiplicity *; } } relation PersonExtensionExtension { material.Extension playsRole extension; material.PersonExtension playsRole persons { multiplicity *; } } relation PersonExtensionPerson { Person playsRole person; material.PersonExtension playsRole extensions { multiplicity *; } } relation PersonHasPersonalGroups { Person playsRole person; PersonalGroup playsRole personalGroups { multiplicity *; } } relation PersonHomepage { Person playsRole person; homepage.Homepage playsRole homepage; } relation PersonNamePersonNamePart { person.PersonName playsRole personName { multiplicity *; } person.PersonNamePart playsRole personNamePart { multiplicity *; } } relation PersonPersonName { Person playsRole person; person.PersonName playsRole personName; } relation PersonPersonSpaceOccupation { space.PersonSpaceOccupation playsRole personSpaceOccupations { multiplicity *; } Person playsRole person; } relation PersonProjectAccess { projectsManagement.ProjectAccess playsRole projectAccesses { multiplicity *; } Person playsRole person; } relation PersonRole { Person playsRole associatedPersons { multiplicity *; } Role playsRole personRoles { multiplicity *; } } relation RoleRoleOperationLog { Role playsRole role; RoleOperationLog playsRole roleOperationLog { multiplicity *; } } relation PersonRoleOperationLog { Person playsRole person; RoleOperationLog playsRole personRoleOperationLog { multiplicity *; } } relation PersonGivesRoleOperationLog { Person playsRole personWhoGranted; RoleOperationLog playsRole givenRoleOperationLog { multiplicity *; } } relation PersonTeacher { Teacher playsRole teacher; Person playsRole person; } relation PersonThesisEvaluationParticipant { Person playsRole person; thesis.ThesisEvaluationParticipant playsRole thesisEvaluationParticipants { multiplicity *; } } relation PhysicalAddressCountryOfResidence { contacts.PhysicalAddress playsRole associatedPhysicalAddresses { multiplicity *; } Country playsRole countryOfResidence; } relation PictureMaterialFilePictureMaterial { tests.NewPictureMaterial playsRole pictureMaterials { multiplicity *; } tests.PictureMaterialFile playsRole pictureMaterialFile; } relation PrecedenceRestriction { precedences.Precedence playsRole precedence; precedences.Restriction playsRole restrictions { multiplicity *; } } relation PrecedentDegreeInformationCountry { student.PrecedentDegreeInformation playsRole precedentDegreeInformations { multiplicity *; } Country playsRole country; } relation PrecedentDegreeInformationPrecedentCountry { student.PrecedentDegreeInformation playsRole originPrecedentDegreeInformations { multiplicity *; } Country playsRole precedentCountry; } relation PrecedentDegreeInformationInstitution { student.PrecedentDegreeInformation playsRole precedentDegreeInformations { multiplicity *; } organizationalStructure.Unit playsRole institution; } relation PrecedentDegreeInformationSourceInstitution { student.PrecedentDegreeInformation playsRole destinationPrecedentDegreeInformations { multiplicity *; } organizationalStructure.Unit playsRole sourceInstitution; } relation PrecedentDegreeInformationPrecedentInstitution { student.PrecedentDegreeInformation playsRole transitionPrecedentDegreeInformations { multiplicity *; } organizationalStructure.Unit playsRole precedentInstitution; } relation PrecedentDegreeInformationStudent { student.PrecedentDegreeInformation playsRole precedentDegreeInformation; student.Registration playsRole student; } relation PrecedentDegreeInformationStudentCandidacy { student.PrecedentDegreeInformation playsRole precedentDegreeInformation; candidacy.StudentCandidacy playsRole studentCandidacy; } relation PrecedentDegreeInformationStudentCurricularPlan { StudentCurricularPlan playsRole studentCurricularPlan; student.PrecedentDegreeInformation playsRole precedentDegreeInformations { multiplicity *; } } relation PrizeRootDomainObject { RootDomainObject playsRole rootDomainObject; research.Prize playsRole prizes { multiplicity *; } } relation PrizeWinners { organizationalStructure.Party playsRole parties { multiplicity *; } research.Prize playsRole prizes { multiplicity *; } } relation ProfessorshipShiftProfessorship { Professorship playsRole professorship; ShiftProfessorship playsRole associatedShiftProfessorship { multiplicity *; } } relation ProfessorshipSummary { Summary playsRole associatedSummaries { multiplicity *; } Professorship playsRole professorship; } relation ProfessorshipSupportLesson { SupportLesson playsRole supportLessons { multiplicity *; } Professorship playsRole professorship; } relation ProjectGrouping { Grouping playsRole grouping; Project playsRole projects { multiplicity *; } } relation ProjectsDeparments { Project playsRole projects { multiplicity *; } Department playsRole deparments { multiplicity *; } } relation ProjectParticipationParty { organizationalStructure.Party playsRole party; research.project.ProjectParticipation playsRole projectParticipations { multiplicity *; } } relation ProjectParticipationProject { research.project.Project playsRole project; research.project.ProjectParticipation playsRole projectParticipations { multiplicity *; } } relation ProjectProjectEventAssociation { research.project.ProjectEventAssociation playsRole associatedEvents { multiplicity *; } research.project.Project playsRole project; } relation ProjectSubmissionAttends { Attends playsRole attends; ProjectSubmission playsRole projectSubmissions { multiplicity *; } } relation ProjectSubmissionFileProjectSubmission { ProjectSubmission playsRole projectSubmission; ProjectSubmissionFile playsRole projectSubmissionFile; } relation ProjectSubmissionLogAttends { Attends playsRole attends; ProjectSubmissionLog playsRole projectSubmissionLogs { multiplicity *; } } relation ProjectSubmissionLogProject { Project playsRole project; ProjectSubmissionLog playsRole projectSubmissionLogs { multiplicity *; } } relation ProjectSubmissionLogStudentGroup { StudentGroup playsRole studentGroup; ProjectSubmissionLog playsRole projectSubmissionLogs { multiplicity *; } } relation ProjectSubmissionProject { Project playsRole project; ProjectSubmission playsRole projectSubmissions { multiplicity *; } } relation ProjectSubmissionStudentGroup { StudentGroup playsRole studentGroup; ProjectSubmission playsRole projectSubmissions { multiplicity *; } } relation ProposalBranch { finalDegreeWork.Proposal playsRole associatedFinalDegreeWorkProposals { multiplicity *; } Branch playsRole branches { multiplicity *; } } relation ProposalExecutionDegree { finalDegreeWork.Proposal playsRole proposals { multiplicity *; } finalDegreeWork.Scheduleing playsRole scheduleing; } relation ProposalTeacherByCoorientator { finalDegreeWork.Proposal playsRole associatedProposalsByCoorientator { multiplicity *; } Person playsRole coorientator; } relation ProposalTeacherByOrientator { finalDegreeWork.Proposal playsRole associatedProposalsByOrientator { multiplicity *; } Person playsRole orientator; } relation ProtocolFileProtocol { protocols.Protocol playsRole protocol; protocols.ProtocolFile playsRole protocolFiles { multiplicity *; } } relation ProtocolHistoryProtocol { protocols.Protocol playsRole protocol; protocols.ProtocolHistory playsRole protocolHistories { multiplicity *; } } relation ProtocolPartner { organizationalStructure.Unit playsRole partners { multiplicity *; } protocols.Protocol playsRole partnerProtocols { multiplicity *; } } relation ProtocolResponsible { Person playsRole responsibles { multiplicity *; } protocols.Protocol playsRole protocols { multiplicity *; } } relation ProtocolResponsibleFunction { organizationalStructure.Function playsRole responsibleFunctions { multiplicity *; } protocols.Protocol playsRole protocols { multiplicity *; } } relation ProtocolResponsiblePartner { Person playsRole partnerResponsibles { multiplicity *; } protocols.Protocol playsRole partnerProtocols { multiplicity *; } } relation ProtocolUnit { organizationalStructure.Unit playsRole units { multiplicity *; } protocols.Protocol playsRole protocols { multiplicity *; } } relation PublicationCollaborators { organizationalStructure.ResearchUnit playsRole collaboratorIn { multiplicity *; } Person playsRole publicationCollaborators { multiplicity *; } } relation PublicationThesisPointsProcessThesis { research.result.publication.Thesis playsRole publication; thesis.Thesis playsRole thesis; } relation PublicationsNumberTeacher { teacher.PublicationsNumber playsRole associatedPublicationsNumbers { multiplicity *; } Teacher playsRole teacher; } relation PunctualRoomsOccupationCommentPerson { Person playsRole owner; PunctualRoomsOccupationComment playsRole punctualRoomsOccupationComments { multiplicity *; } } relation PunctualRoomsOccupationRequestGenericEvent { PunctualRoomsOccupationRequest playsRole punctualRoomsOccupationRequest; GenericEvent playsRole genericEvents { multiplicity *; } } relation PunctualRoomsOccupationRequestPerson { Person playsRole requestor; PunctualRoomsOccupationRequest playsRole punctualRoomsOccupationRequests { multiplicity *; } } relation PunctualRoomsOccupationRequestPunctualRoomsOccupationComment { PunctualRoomsOccupationRequest playsRole request; PunctualRoomsOccupationComment playsRole comments { multiplicity *; } } relation PunctualRoomsOccupationRequestPunctualRoomsOccupationStateInstant { PunctualRoomsOccupationRequest playsRole request; PunctualRoomsOccupationStateInstant playsRole stateInstants { multiplicity *; } } relation PunctualRoomsOccupationRequestToProcessPerson { Person playsRole owner; PunctualRoomsOccupationRequest playsRole punctualRoomsOccupationRequestsToProcess { multiplicity *; } } relation QualificationCountry { Qualification playsRole associatedQualifications { multiplicity *; } Country playsRole country; } relation QualificationPerson { Qualification playsRole associatedQualifications { multiplicity *; } Person playsRole person; } relation QualificationCreatorPerson { Qualification playsRole createdQualifications { multiplicity *; } Person playsRole creator; } relation QualificationModifiedByPerson { Qualification playsRole updatedQualifications { multiplicity *; } Person playsRole modifiedBy; } relation QuestionBankParty { tests.NewQuestionBank playsRole questionBank; organizationalStructure.Party playsRole owner; } relation QuestionFromTestQuestion { onlineTests.Question playsRole question; onlineTests.TestQuestion playsRole testQuestions { multiplicity *; } } relation QuestionsFromMetadata { onlineTests.Question playsRole questions { multiplicity *; } onlineTests.Metadata playsRole metadata; } relation QuestionsFromTest { onlineTests.TestQuestion playsRole testQuestions { multiplicity *; } onlineTests.Test playsRole test; } relation ReceiptContributorParty { organizationalStructure.Party playsRole contributorParty; accounting.Receipt playsRole payedReceipts { multiplicity *; } } relation ReceiptCreditNote { accounting.Receipt playsRole receipt; accounting.CreditNote playsRole creditNotes { multiplicity *; } } relation ReceiptResponsible { Person playsRole responsible; accounting.Receipt playsRole receiptsCreated { multiplicity *; } } relation ReceiptEntry { accounting.Receipt playsRole receipts { multiplicity *; } accounting.Entry playsRole entries { multiplicity *; } } relation ReceiptOwnerUnit { organizationalStructure.Unit playsRole ownerUnit; accounting.Receipt playsRole ownedReceipts { multiplicity *; } } relation ReceiptPerson { Person playsRole person; accounting.Receipt playsRole receipts { multiplicity *; } } relation ReceiptPrintVersionPerson { Person playsRole person; accounting.ReceiptPrintVersion playsRole receiptsVersions { multiplicity *; } } relation ReceiptPrintVersionReceipt { accounting.Receipt playsRole receipt; accounting.ReceiptPrintVersion playsRole receiptsVersions { multiplicity *; } } relation RectificationEnrolmentEvaluationRectifiedEnrolmentEvaluation { EnrolmentEvaluation playsRole rectification; EnrolmentEvaluation playsRole rectified; } relation RegistrationDataByExecutionYearExecutionYear { student.RegistrationDataByExecutionYear playsRole registrationDataByExecutionYear { multiplicity *; } ExecutionYear playsRole executionYear; } relation RegistrationRegimeExecutionYear { student.RegistrationRegime playsRole registrationRegimes { multiplicity *; } ExecutionYear playsRole executionYear; } relation RegistrationDataByExecutionYearRegistration { student.RegistrationDataByExecutionYear playsRole registrationDataByExecutionYear { multiplicity *; } student.Registration playsRole registration; } relation RegistrationRegimeRegistration { student.RegistrationRegime playsRole registrationRegimes { multiplicity *; } student.Registration playsRole registration; } relation RegistrationDataByExecutionYearRootDomainObject { student.RegistrationDataByExecutionYear playsRole registrationDataByExecutionYear { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation RegistrationRegimeRootDomainObject { student.RegistrationRegime playsRole registrationRegimes { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation RegistrationSourceDestiny { student.Registration playsRole destinyRegistrations { multiplicity *; } student.Registration playsRole sourceRegistration; } relation RegistrationDegree { Degree playsRole degree; student.Registration playsRole registrations { multiplicity *; } } relation ResponsibleForConclusionProcessVersion { Person playsRole responsible; student.curriculum.ConclusionProcessVersion playsRole conclusionProcessVersions { multiplicity *; } } relation RegistrationRegistrationConclusionProcess { student.Registration playsRole registration; student.curriculum.RegistrationConclusionProcess playsRole conclusionProcess; } relation RegistrationRegistrationNumber { student.Registration playsRole registration; student.RegistrationNumber playsRole registrationNumber; } relation RegistrationStateRegistration { student.Registration playsRole registration; student.registrationStates.RegistrationState playsRole registrationStates { multiplicity *; } } relation RegistrationStateResponsiblePerson { student.registrationStates.RegistrationState playsRole registrationStates { multiplicity *; } Person playsRole responsiblePerson; } relation RegistrationStateLogRegistration { student.registrationStates.RegistrationStateLog playsRole registrationStateLogs { multiplicity *; } student.Registration playsRole registration; } relation RegistrationStudent { student.Registration playsRole registrations { multiplicity *; } student.Student playsRole student; } relation RegistrationStudentCandidacy { student.Registration playsRole registration; candidacy.StudentCandidacy playsRole studentCandidacy; } relation RegistrationRegistrationProtocol { student.Registration playsRole registrations { multiplicity *; } student.RegistrationProtocol playsRole registrationProtocol; } relation RegistrationProtocolPerson { student.RegistrationProtocol playsRole registrationProtocols { multiplicity *; } Person playsRole supervisors { multiplicity *; } } relation RegistrationProtocolRootDomainObject { student.RegistrationProtocol playsRole registrationProtocols { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation ReimbursementGuideEntryGuideEntry { reimbursementGuide.ReimbursementGuideEntry playsRole reimbursementGuideEntries { multiplicity *; } GuideEntry playsRole guideEntry; } relation ReimbursementGuideEntryReimbursementGuide { reimbursementGuide.ReimbursementGuideEntry playsRole reimbursementGuideEntries { multiplicity *; } reimbursementGuide.ReimbursementGuide playsRole reimbursementGuide; } relation ReimbursementGuideGuide { reimbursementGuide.ReimbursementGuide playsRole reimbursementGuides { multiplicity *; } Guide playsRole guide; } relation ReimbursementGuideSituationEmployee { reimbursementGuide.ReimbursementGuideSituation playsRole reimbursementGuideSituations { multiplicity *; } Employee playsRole employee; } relation ReimbursementGuideSituationReimbursementGuide { reimbursementGuide.ReimbursementGuideSituation playsRole reimbursementGuideSituations { multiplicity *; } reimbursementGuide.ReimbursementGuide playsRole reimbursementGuide; } relation ReimbursementTransactionReimbursementGuideEntry { transactions.ReimbursementTransaction playsRole reimbursementTransaction; reimbursementGuide.ReimbursementGuideEntry playsRole reimbursementGuideEntry; } relation ResearcherRootDomainObject { research.Researcher playsRole researchers { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation ResearcherPerson { Person playsRole person; research.Researcher playsRole researcher; } relation ResearchPartyContact { contacts.PartyContact playsRole availableContacts { multiplicity *; } research.Researcher playsRole researcher; } relation ResearchResultCountry { Country playsRole country; research.result.ResearchResult playsRole results { multiplicity *; } } relation ResearchResultCreator { research.result.ResearchResult playsRole createdResults { multiplicity *; } Person playsRole creator; } relation PreferredPublicationRootDomainObject { research.result.publication.PreferredPublication playsRole preferredPublication { multiplicity *; } RootDomainObject playsRole rootDomainObject { multiplicity 1..1; } } relation PreferredPublicationsOwner { research.result.publication.PreferredPublication playsRole preferredPublication { multiplicity *; } Person playsRole personThatPrefers { multiplicity 1..1; } } relation PreferredPublicationsPublication { research.result.publication.ResearchResultPublication playsRole preferredPublication { multiplicity 1..1; } research.result.publication.PreferredPublication playsRole personThatPrefers { multiplicity *; } } relation ResearchResultPrize { research.result.ResearchResult playsRole researchResult; research.Prize playsRole prizes { multiplicity *; } } relation ResearchResultUnitAssociationResult { research.result.ResultUnitAssociation playsRole resultUnitAssociations { multiplicity *; } research.result.ResearchResult playsRole result; } relation ResourceAllocationResource { resource.Resource playsRole resource; resource.ResourceAllocation playsRole resourceAllocations { multiplicity *; } } relation ResourceResourceResponsibility { resource.ResourceResponsibility playsRole resourceResponsibility { multiplicity *; } resource.Resource playsRole resource; } relation ResulUnitAssociationUnit { research.result.ResultUnitAssociation playsRole resultUnitAssociations { multiplicity *; } organizationalStructure.Unit playsRole unit; } relation ResultDocumentFileResearchResult { research.result.ResearchResultDocumentFile playsRole resultDocumentFiles { multiplicity *; } research.result.ResearchResult playsRole result; } relation ResultParticipationPerson { Person playsRole person; research.result.ResultParticipation playsRole resultParticipations { multiplicity *; } } relation ResultParticipationResearchResult { research.result.ResultParticipation playsRole resultParticipations { multiplicity *; } research.result.ResearchResult playsRole result; } relation ResultTeacherResearchResult { research.result.ResultTeacher playsRole resultTeachers { multiplicity *; } research.result.ResearchResult playsRole result; } relation ResultTeacherTeacher { research.result.ResultTeacher playsRole teacherResults { multiplicity *; } Teacher playsRole teacher; } relation RoomClassificationRoomClassification { space.RoomClassification playsRole childRoomClassifications { multiplicity *; } space.RoomClassification playsRole parentRoomClassification; } relation RoomRoomClassification { space.RoomInformation playsRole roomInformations { multiplicity *; } space.RoomClassification playsRole roomClassification; } relation RoomSummary { Summary playsRole associatedSummaries { multiplicity *; } space.AllocatableSpace playsRole room; } relation RootDomainExamCoordinator { RootDomainObject playsRole rootDomainObject; vigilancy.ExamCoordinator playsRole examCoordinators { multiplicity *; } } relation RootDomainMarkSheet { RootDomainObject playsRole rootDomainObject; MarkSheet playsRole markSheets { multiplicity *; } } relation RootDomainObjectAcademicCalendarRootEntry { RootDomainObject playsRole rootDomainObjectForRootEntries; time.calendarStructure.AcademicCalendarRootEntry playsRole academicCalendars { multiplicity *; } } relation RootDomainObjectDefaultAcademicCalendar { RootDomainObject playsRole rootDomainObjectForDefaultRootEntry; time.calendarStructure.AcademicCalendarRootEntry playsRole defaultAcademicCalendar; } relation RootDomainObjectAcademicCalendarEntry { RootDomainObject playsRole rootDomainObject; time.calendarStructure.AcademicCalendarEntry playsRole academicCalendarEntries { multiplicity *; } } relation RootDomainObjectAcademicServiceRequest { RootDomainObject playsRole rootDomainObject; serviceRequests.AcademicServiceRequest playsRole academicServiceRequests { multiplicity *; } } relation RootDomainObjectAcademicServiceRequestSituation { RootDomainObject playsRole rootDomainObject; serviceRequests.AcademicServiceRequestSituation playsRole academicServiceRequestSituations { multiplicity *; } } relation RootDomainObjectAccount { RootDomainObject playsRole rootDomainObject; accounting.Account playsRole accounts { multiplicity *; } } relation RootDomainObjectAccountTransaction { RootDomainObject playsRole rootDomainObject; accounting.AccountingTransaction playsRole accountingTransactions { multiplicity *; } } relation RootDomainObjectAccountability { RootDomainObject playsRole rootDomainObject; organizationalStructure.Accountability playsRole accountabilitys { multiplicity *; } } relation RootDomainObjectAccountabilityType { RootDomainObject playsRole rootDomainObject; organizationalStructure.AccountabilityType playsRole accountabilityTypes { multiplicity *; } } relation RootDomainObjectAccountingEvent { RootDomainObject playsRole rootDomainObject; accounting.Event playsRole accountingEvents { multiplicity *; } } relation RootDomainObjectAccountingDiscount { RootDomainObject playsRole rootDomainObject; accounting.Discount playsRole discounts { multiplicity *; } } relation RootDomainObjectAccountingTransactionDetail { RootDomainObject playsRole rootDomainObject; accounting.AccountingTransactionDetail playsRole accountingTransactionDetails { multiplicity *; } } relation RootDomainObjectAdministrativeOffice { RootDomainObject playsRole rootDomainObject; administrativeOffice.AdministrativeOffice playsRole administrativeOffices { multiplicity *; } } relation RootDomainObjectAdvise { RootDomainObject playsRole rootDomainObject; teacher.Advise playsRole advises { multiplicity *; } } relation RootDomainObjectArticleAssociation { RootDomainObject playsRole rootDomainObject; research.activity.ArticleAssociation playsRole articleAssociations { multiplicity *; } } relation RootDomainObjectAttends { RootDomainObject playsRole rootDomainObject; Attends playsRole attendss { multiplicity *; } } relation RootDomainObjectBibliographicReference { RootDomainObject playsRole rootDomainObject; BibliographicReference playsRole bibliographicReferences { multiplicity *; } } relation RootDomainObjectBlueprint { RootDomainObject playsRole rootDomainObject; space.Blueprint playsRole blueprints { multiplicity *; } } relation RootDomainObjectBranch { RootDomainObject playsRole rootDomainObject; Branch playsRole branchs { multiplicity *; } } relation RootDomainObjectCandidacy { RootDomainObject playsRole rootDomainObject; Seminaries.SeminaryCandidacy playsRole candidacys { multiplicity *; } } relation RootDomainObjectCandidacyDocument { RootDomainObject playsRole rootDomainObject; candidacy.CandidacyDocument playsRole candidacyDocument { multiplicity *; } } relation RootDomainObjectCandidacySituation { RootDomainObject playsRole rootDomainObject; candidacy.CandidacySituation playsRole candidacySituations { multiplicity *; } } relation RootDomainObjectCandidateEnrolment { RootDomainObject playsRole rootDomainObject; CandidateEnrolment playsRole candidateEnrolments { multiplicity *; } } relation RootDomainObjectCandidateSituation { RootDomainObject playsRole rootDomainObject; CandidateSituation playsRole candidateSituations { multiplicity *; } } relation RootDomainObjectCareer { RootDomainObject playsRole rootDomainObject; teacher.Career playsRole careers { multiplicity *; } } relation RootDomainObjectCaseStudy { RootDomainObject playsRole rootDomainObject; Seminaries.CaseStudy playsRole caseStudys { multiplicity *; } } relation RootDomainObjectCaseStudyChoice { RootDomainObject playsRole rootDomainObject; Seminaries.CaseStudyChoice playsRole caseStudyChoices { multiplicity *; } } relation RootDomainObjectCompetenceCourse { RootDomainObject playsRole rootDomainObject; CompetenceCourse playsRole competenceCourses { multiplicity *; } } relation RootDomainObjectCompetenceCourseInformation { RootDomainObject playsRole rootDomainObject; degreeStructure.CompetenceCourseInformation playsRole competenceCourseInformations { multiplicity *; } } relation RootDomainObjectCompetenceCourseLoad { RootDomainObject playsRole rootDomainObject; degreeStructure.CompetenceCourseLoad playsRole competenceCourseLoads { multiplicity *; } } relation RootDomainObjectConnectionRule { RootDomainObject playsRole rootDomainObject; organizationalStructure.ConnectionRule playsRole connectionRules { multiplicity *; } } relation RootDomainObjectContext { RootDomainObject playsRole rootDomainObject; degreeStructure.Context playsRole contexts { multiplicity *; } } relation RootDomainObjectContributor { RootDomainObject playsRole rootDomainObject; Contributor playsRole contributors { multiplicity *; } } relation RootDomainObjectCooperation { RootDomainObject playsRole rootDomainObject; research.activity.Cooperation playsRole cooperations { multiplicity *; } } relation RootDomainObjectCoordinator { RootDomainObject playsRole rootDomainObject; Coordinator playsRole coordinators { multiplicity *; } } relation RootDomainObjectCostCenter { RootDomainObject playsRole rootDomainObject; CostCenter playsRole costCenters { multiplicity *; } } relation RootDomainObjectCountry { RootDomainObject playsRole rootDomainObject; Country playsRole countrys { multiplicity *; } } relation RootDomainObjectCourseEquivalency { RootDomainObject playsRole rootDomainObject; Seminaries.CourseEquivalency playsRole courseEquivalencys { multiplicity *; } } relation RootDomainObjectCourseHistoric { RootDomainObject playsRole rootDomainObject; gesdis.CourseHistoric playsRole courseHistorics { multiplicity *; } } relation RootDomainObjectCourseReport { RootDomainObject playsRole rootDomainObject; gesdis.CourseReport playsRole courseReports { multiplicity *; } } relation RootDomainObjectCreditLine { RootDomainObject playsRole rootDomainObject; credits.CreditLine playsRole creditLines { multiplicity *; } } relation RootDomainObjectCreditNote { RootDomainObject playsRole rootDomainObject; accounting.CreditNote playsRole creditNotes { multiplicity *; } } relation RootDomainObjectCreditNoteEntry { RootDomainObject playsRole rootDomainObject; accounting.CreditNoteEntry playsRole creditNoteEntries { multiplicity *; } } relation RootDomainObjectCredits { RootDomainObject playsRole rootDomainObject; studentCurriculum.Credits playsRole credits { multiplicity *; } } relation RootDomainObjectCreditsInAnySecundaryArea { RootDomainObject playsRole rootDomainObject; CreditsInAnySecundaryArea playsRole creditsInAnySecundaryAreas { multiplicity *; } } relation RootDomainObjectCreditsInScientificArea { RootDomainObject playsRole rootDomainObject; CreditsInScientificArea playsRole creditsInScientificAreas { multiplicity *; } } relation RootDomainObjectCronRegistry { RootDomainObject playsRole rootDomainObject; system.CronRegistry playsRole cronRegistry { multiplicity *; } } relation RootDomainObjectCronScriptInvocation { RootDomainObject playsRole rootDomainObject; system.CronScriptInvocation playsRole cronScriptInvocations { multiplicity *; } } relation RootDomainObjectCronScriptState { RootDomainObject playsRole rootDomainObject; system.CronScriptState playsRole cronScriptStates { multiplicity *; } } relation RootDomainObjectCurricularCourseEquivalence { RootDomainObject playsRole rootDomainObject; CurricularCourseEquivalence playsRole curricularCourseEquivalences { multiplicity *; } } relation RootDomainObjectCurricularCourseScope { RootDomainObject playsRole rootDomainObject; CurricularCourseScope playsRole curricularCourseScopes { multiplicity *; } } relation RootDomainObjectCurricularPeriod { RootDomainObject playsRole rootDomainObject; curricularPeriod.CurricularPeriod playsRole curricularPeriods { multiplicity *; } } relation RootDomainObjectCurricularRule { RootDomainObject playsRole rootDomainObject; curricularRules.CurricularRule playsRole curricularRules { multiplicity *; } } relation RootDomainObjectCurricularSemester { RootDomainObject playsRole rootDomainObject; CurricularSemester playsRole curricularSemesters { multiplicity *; } } relation RootDomainObjectCurricularYear { RootDomainObject playsRole rootDomainObject; CurricularYear playsRole curricularYears { multiplicity *; } } relation RootDomainObjectCurriculum { RootDomainObject playsRole rootDomainObject; Curriculum playsRole curriculums { multiplicity *; } } relation RootDomainObjectCurriculumModule { RootDomainObject playsRole rootDomainObject; studentCurriculum.CurriculumModule playsRole curriculumModules { multiplicity *; } } relation RootDomainObjectDegree { RootDomainObject playsRole rootDomainObject; Degree playsRole degrees { multiplicity *; } } relation RootDomainObjectDegreeCurricularPlan { RootDomainObject playsRole rootDomainObject; DegreeCurricularPlan playsRole degreeCurricularPlans { multiplicity *; } } relation RootDomainObjectDegreeInfo { RootDomainObject playsRole rootDomainObject; DegreeInfo playsRole degreeInfos { multiplicity *; } } relation RootDomainObjectDegreeInfoCandidacy { RootDomainObject playsRole rootDomainObject; DegreeInfoCandidacy playsRole degreeInfoCandidacys { multiplicity *; } } relation RootDomainObjectDegreeInfoFuture { RootDomainObject playsRole rootDomainObject; DegreeInfoFuture playsRole degreeInfoFutures { multiplicity *; } } relation RootDomainObjectDegreeModule { RootDomainObject playsRole rootDomainObject; degreeStructure.DegreeModule playsRole degreeModules { multiplicity *; } } relation RootDomainObjectDepartment { RootDomainObject playsRole rootDomainObject; Department playsRole departments { multiplicity *; } } relation RootDomainObjectDistributedTest { RootDomainObject playsRole rootDomainObject; onlineTests.DistributedTest playsRole distributedTests { multiplicity *; } } relation RootDomainObjectDistrict { RootDomainObject playsRole rootDomainObject; District playsRole districts { multiplicity *; } } relation RootDomainObjectDistrictSubdivision { RootDomainObject playsRole rootDomainObject; DistrictSubdivision playsRole districtSubdivisions { multiplicity *; } } relation DistrictDistrictSubdivision { District playsRole district; DistrictSubdivision playsRole districtSubdivisions { multiplicity *; } } relation RootDomainObjectDomainObjectActionLog { RootDomainObject playsRole rootDomainObject; DomainObjectActionLog playsRole domainObjectActionLogs { multiplicity *; } } relation RootDomainObjectDomainObjectActionLogEntry { RootDomainObject playsRole rootDomainObject; DomainObjectActionLogEntry playsRole domainObjectActionLogEntries { multiplicity *; } } relation RootDomainObjectEarthUnit { RootDomainObject playsRole rootDomainObjectForEarthUnit; organizationalStructure.Unit playsRole earthUnit; } relation RootDomainObjectEmail { RootDomainObject playsRole rootDomainObject; util.Email playsRole emails { multiplicity *; } } relation RootDomainObjectEmployee { RootDomainObject playsRole rootDomainObject; Employee playsRole employees { multiplicity *; } } relation RootDomainObjectEmployeeHistoric { RootDomainObject playsRole rootDomainObject; EmployeeHistoric playsRole employeeHistorics { multiplicity *; } } relation RootDomainObjectEnrolmentEvaluation { RootDomainObject playsRole rootDomainObject; EnrolmentEvaluation playsRole enrolmentEvaluations { multiplicity *; } } relation RootDomainObjectCurriculumLineLog { RootDomainObject playsRole rootDomainObject; log.CurriculumLineLog playsRole curriculumLineLogs { multiplicity *; } } relation RootDomainObjectEnrolmentPeriod { RootDomainObject playsRole rootDomainObject; EnrolmentPeriod playsRole enrolmentPeriods { multiplicity *; } } relation RootDomainObjectEnrolmentWrapper { RootDomainObject playsRole rootDomainObject; studentCurriculum.EnrolmentWrapper playsRole enrolmentWrappers { multiplicity *; } } relation RootDomainObjectEntry { RootDomainObject playsRole rootDomainObject; accounting.Entry playsRole entries { multiplicity *; } } relation RootDomainObjectEquivalencePlan { RootDomainObject playsRole rootDomainObject; EquivalencePlan playsRole equivalencePlans { multiplicity *; } } relation RootDomainObjectEquivalencePlanEntry { RootDomainObject playsRole rootDomainObject; EquivalencePlanEntry playsRole equivalencePlanEntries { multiplicity *; } } relation RootDomainObjectEvaluation { RootDomainObject playsRole rootDomainObject; Evaluation playsRole evaluations { multiplicity *; } } relation RootDomainObjectEvaluationMethod { RootDomainObject playsRole rootDomainObject; EvaluationMethod playsRole evaluationMethods { multiplicity *; } } relation RootDomainObjectEvent { RootDomainObject playsRole rootDomainObject; research.activity.ResearchEvent playsRole events { multiplicity *; } } relation RootDomainObjectEventConferenceArticlesAssociation { RootDomainObject playsRole rootDomainObject; research.activity.EventConferenceArticlesAssociation playsRole eventConferenceArticlesAssociations { multiplicity *; } } relation RootDomainObjectEventEdition { RootDomainObject playsRole rootDomainObject; research.activity.EventEdition playsRole eventEditions { multiplicity *; } } relation RootDomainObjectExecutionCourse { RootDomainObject playsRole rootDomainObject; ExecutionCourse playsRole executionCourses { multiplicity *; } } relation RootDomainObjectExecutionDegree { RootDomainObject playsRole rootDomainObject; ExecutionDegree playsRole executionDegrees { multiplicity *; } } relation RootDomainObjectExecutionPeriod { RootDomainObject playsRole rootDomainObjectForExecutionPeriod; ExecutionSemester playsRole executionPeriods { multiplicity *; } } relation RootDomainObjectExecutionYear { RootDomainObject playsRole rootDomainObjectForExecutionYear; ExecutionYear playsRole executionYears { multiplicity *; } } relation RootDomainObjectExecutionInterval { RootDomainObject playsRole rootDomainObject; ExecutionInterval playsRole executionIntervals { multiplicity *; } } relation RootDomainObjectExemption { RootDomainObject playsRole rootDomainObject; accounting.Exemption playsRole exemptions { multiplicity *; } } relation RootDomainObjectExemptionJustification { RootDomainObject playsRole rootDomainObject; accounting.events.ExemptionJustification playsRole exemptionJustifications { multiplicity *; } } relation RootDomainObjectExpectationEvaluationGroup { RootDomainObject playsRole rootDomainObject; ExpectationEvaluationGroup playsRole expectationEvaluationGroups { multiplicity *; } } relation RootDomainObjectExportGrouping { RootDomainObject playsRole rootDomainObject; ExportGrouping playsRole exportGroupings { multiplicity *; } } relation RootDomainObjectExternalActivity { RootDomainObject playsRole rootDomainObject; teacher.ExternalActivity playsRole externalActivitys { multiplicity *; } } relation RootDomainObjectExternalCurricularCourse { RootDomainObject playsRole rootDomainObject; ExternalCurricularCourse playsRole externalCurricularCourses { multiplicity *; } } relation RootDomainObjectExternalEnrolment { RootDomainObject playsRole rootDomainObject; studentCurriculum.ExternalEnrolment playsRole externalEnrolments { multiplicity *; } } relation RootDomainObjectExternalInstitutionUnit { RootDomainObject playsRole rootDomainObjectForExternalInstitutionUnit; organizationalStructure.Unit playsRole externalInstitutionUnit; } relation RootDomainObjectExternalRegistrationData { RootDomainObject playsRole rootDomainObject; student.ExternalRegistrationData playsRole externalRegistrationDatas { multiplicity *; } } relation RootDomainObjectFAQEntry { RootDomainObject playsRole rootDomainObject; support.FAQEntry playsRole fAQEntrys { multiplicity *; } } relation RootDomainObjectFAQSection { RootDomainObject playsRole rootDomainObject; support.FAQSection playsRole fAQSections { multiplicity *; } } relation RootDomainObjectFile { RootDomainObject playsRole rootDomainObject; File playsRole files { multiplicity *; } } relation RootDomainObjectFileLocalContents { RootDomainObject playsRole rootDomainObject; FileLocalContent playsRole fileLocalContents { multiplicity *; } } relation RootDomainObjectFirstYearShiftsCapacityToggleLog { RootDomainObject playsRole rootDomainObject; log.FirstYearShiftsCapacityToggleLog playsRole firstYearShiftsCapacityToggleLogs { multiplicity *; } } relation FileLocalContents { File playsRole file; FileLocalContent playsRole localContent; } relation FileLocalContentMetadatas { FileLocalContent playsRole content; FileLocalContentMetadata playsRole metadata { multiplicity *; } } relation RootDomainObjectPhotographs { RootDomainObject playsRole rootDomainObject; Photograph playsRole photographs { multiplicity *; } } relation RootDomainObjectPendingPhotographs { RootDomainObject playsRole pendingHolder; Photograph playsRole pendingPhotographs { multiplicity *; } } relation RootDomainObjectForumSubscription { RootDomainObject playsRole rootDomainObject; messaging.ForumSubscription playsRole forumSubscriptions { multiplicity *; } } relation RootDomainObjectFunctionalityPrinters { RootDomainObject playsRole rootDomainObject; util.FunctionalityPrinters playsRole functionalityPrinters { multiplicity *; } } relation RootDomainObjectGaugingTestResult { RootDomainObject playsRole rootDomainObject; gaugingTests.physics.GaugingTestResult playsRole gaugingTestResults { multiplicity *; } } relation RootDomainObjectGeneralClassProperty { RootDomainObject playsRole rootDomainObject; classProperties.GeneralClassProperty playsRole generalClassPropertys { multiplicity *; } } relation RootDomainObjectGenericEvent { RootDomainObject playsRole rootDomainObject; GenericEvent playsRole genericEvents { multiplicity *; } } relation RootDomainObjectGlossaryEntry { RootDomainObject playsRole rootDomainObject; support.GlossaryEntry playsRole glossaryEntrys { multiplicity *; } } relation RootDomainObjectGrantContract { RootDomainObject playsRole rootDomainObject; grant.contract.GrantContract playsRole grantContracts { multiplicity *; } } relation RootDomainObjectGrantContractMovement { RootDomainObject playsRole rootDomainObject; grant.contract.GrantContractMovement playsRole grantContractMovements { multiplicity *; } } relation RootDomainObjectGrantContractRegime { RootDomainObject playsRole rootDomainObject; grant.contract.GrantContractRegime playsRole grantContractRegimes { multiplicity *; } } relation RootDomainObjectGrantInsurance { RootDomainObject playsRole rootDomainObject; grant.contract.GrantInsurance playsRole grantInsurances { multiplicity *; } } relation RootDomainObjectGrantOrientationTeacher { RootDomainObject playsRole rootDomainObject; grant.contract.GrantOrientationTeacher playsRole grantOrientationTeachers { multiplicity *; } } relation RootDomainObjectGrantOwner { RootDomainObject playsRole rootDomainObject; grant.owner.GrantOwner playsRole grantOwners { multiplicity *; } } relation RootDomainObjectGrantPart { RootDomainObject playsRole rootDomainObject; grant.contract.GrantPart playsRole grantParts { multiplicity *; } } relation RootDomainObjectGrantPaymentEntity { RootDomainObject playsRole rootDomainObject; grant.contract.GrantPaymentEntity playsRole grantPaymentEntitys { multiplicity *; } } relation RootDomainObjectGrantSubsidy { RootDomainObject playsRole rootDomainObject; grant.contract.GrantSubsidy playsRole grantSubsidys { multiplicity *; } } relation RootDomainObjectGrantType { RootDomainObject playsRole rootDomainObject; grant.contract.GrantType playsRole grantTypes { multiplicity *; } } relation RootDomainObjectGratuitySituation { RootDomainObject playsRole rootDomainObject; GratuitySituation playsRole gratuitySituations { multiplicity *; } } relation RootDomainObjectGratuityValues { RootDomainObject playsRole rootDomainObject; GratuityValues playsRole gratuityValuess { multiplicity *; } } relation RootDomainObjectGroup { RootDomainObject playsRole rootDomainObject; finalDegreeWork.FinalDegreeWorkGroup playsRole groups { multiplicity *; } } relation RootDomainObjectGroupProposal { RootDomainObject playsRole rootDomainObject; finalDegreeWork.GroupProposal playsRole groupProposals { multiplicity *; } } relation RootDomainObjectGroupStudent { RootDomainObject playsRole rootDomainObject; finalDegreeWork.GroupStudent playsRole groupStudents { multiplicity *; } } relation RootDomainObjectGrouping { RootDomainObject playsRole rootDomainObject; Grouping playsRole groupings { multiplicity *; } } relation RootDomainObjectGuide { RootDomainObject playsRole rootDomainObject; Guide playsRole guides { multiplicity *; } } relation RootDomainObjectGuideEntry { RootDomainObject playsRole rootDomainObject; GuideEntry playsRole guideEntrys { multiplicity *; } } relation RootDomainObjectGuideSituation { RootDomainObject playsRole rootDomainObject; GuideSituation playsRole guideSituations { multiplicity *; } } relation RootDomainObjectHasAvailabilityPolicy { RootDomainObject playsRole rootDomainObject; functionalities.AvailabilityPolicy playsRole availabilityPolicy { multiplicity *; } } relation RootDomainObjectHoliday { RootDomainObject playsRole rootDomainObject; Holiday playsRole holidays { multiplicity *; } } relation RootDomainObjectIdDocument { RootDomainObject playsRole rootDomainObject; person.IdDocument playsRole idDocuments { multiplicity *; } } relation RootDomainObjectIdDocumentTypeObject { RootDomainObject playsRole rootDomainObject; person.IdDocumentTypeObject playsRole idDocumentTypes { multiplicity *; } } relation RootDomainObjectIdentification { RootDomainObject playsRole rootDomainObject; Identification playsRole identifications { multiplicity *; } } relation RootDomainObjectInquiriesCourse { RootDomainObject playsRole rootDomainObject; oldInquiries.InquiriesCourse playsRole inquiriesCourses { multiplicity *; } } relation RootDomainObjectInquiriesRegistry { RootDomainObject playsRole rootDomainObject; oldInquiries.InquiriesRegistry playsRole inquiriesRegistrys { multiplicity *; } } relation RootDomainObjectInquiriesRoom { RootDomainObject playsRole rootDomainObject; oldInquiries.InquiriesRoom playsRole inquiriesRooms { multiplicity *; } } relation RootDomainObjectInquiriesStudentExecutionPeriod { RootDomainObject playsRole rootDomainObject; oldInquiries.InquiriesStudentExecutionPeriod playsRole inquiriesStudentExecutionPeriods { multiplicity *; } } relation RootDomainObjectInquiriesTeacher { RootDomainObject playsRole rootDomainObject; oldInquiries.InquiriesTeacher playsRole inquiriesTeachers { multiplicity *; } } relation RootDomainObjectInquiryResponsePeriod { RootDomainObject playsRole rootDomainObject; oldInquiries.InquiryResponsePeriod playsRole inquiryResponsePeriods { multiplicity *; } } relation RootDomainObjectInstallment { RootDomainObject playsRole rootDomainObject; accounting.Installment playsRole installments { multiplicity *; } } relation RootDomainObjectInstitutionUnit { RootDomainObject playsRole rootDomainObjectForInstitutionUnit; organizationalStructure.Unit playsRole institutionUnit; } relation RootDomainObjectInsuranceValue { RootDomainObject playsRole rootDomainObject; InsuranceValue playsRole insuranceValues { multiplicity *; } } relation RootDomainObjectJournalIssues { RootDomainObject playsRole rootDomainObject; research.activity.JournalIssue playsRole journalIssues { multiplicity *; } } relation RootDomainObjectLesson { RootDomainObject playsRole rootDomainObject; Lesson playsRole lessons { multiplicity *; } } relation RootDomainObjectLessonPlanning { RootDomainObject playsRole rootDomainObject; LessonPlanning playsRole lessonPlannings { multiplicity *; } } relation RootDomainObjectLocality { RootDomainObject playsRole rootDomainObject; Locality playsRole localities { multiplicity *; } } relation RootDomainObjectLoginAlias { RootDomainObject playsRole rootDomainObject; LoginAlias playsRole loginAlias { multiplicity *; } } relation RootDomainObjectLoginPeriod { RootDomainObject playsRole rootDomainObject; LoginPeriod playsRole loginPeriods { multiplicity *; } } relation RootDomainObjectLoginRequest { RootDomainObject playsRole rootDomainObject; LoginRequest playsRole loginRequests { multiplicity *; } } relation RootDomainObjectManagementGroups { RootDomainObject playsRole rootDomainObject; ManagementGroups playsRole managementGroups { multiplicity *; } } relation RootDomainObjectMark { RootDomainObject playsRole rootDomainObject; Mark playsRole marks { multiplicity *; } } relation RootDomainObjectMasterDegreeCandidate { RootDomainObject playsRole rootDomainObject; MasterDegreeCandidate playsRole masterDegreeCandidates { multiplicity *; } } relation RootDomainObjectMasterDegreeProofVersion { RootDomainObject playsRole rootDomainObject; MasterDegreeProofVersion playsRole masterDegreeProofVersions { multiplicity *; } } relation RootDomainObjectMasterDegreeThesis { RootDomainObject playsRole rootDomainObject; MasterDegreeThesis playsRole masterDegreeThesiss { multiplicity *; } } relation RootDomainObjectMasterDegreeThesisDataVersion { RootDomainObject playsRole rootDomainObject; MasterDegreeThesisDataVersion playsRole masterDegreeThesisDataVersions { multiplicity *; } } relation RootDomainObjectMetadata { RootDomainObject playsRole rootDomainObject; onlineTests.Metadata playsRole metadatas { multiplicity *; } } relation RootDomainObjectModality { RootDomainObject playsRole rootDomainObject; Seminaries.Modality playsRole modalitys { multiplicity *; } } relation RootDomainObjectNewAnswer { RootDomainObject playsRole rootDomainObject; tests.NewAnswer playsRole answers { multiplicity *; } } relation RootDomainObjectNewCorrector { RootDomainObject playsRole rootDomainObject; tests.NewCorrector playsRole correctors { multiplicity *; } } relation RootDomainObjectNewGroupElement { RootDomainObject playsRole rootDomainObject; tests.NewGroupElement playsRole groupElements { multiplicity *; } } relation RootDomainObjectNewParkingDocument { RootDomainObject playsRole rootDomainObject; parking.NewParkingDocument playsRole newParkingDocuments { multiplicity *; } } relation RootDomainObjectNewPermissionUnit { RootDomainObject playsRole rootDomainObject; tests.NewPermissionUnit playsRole permissionUnits { multiplicity *; } } relation RootDomainObjectNewPresentationMaterial { RootDomainObject playsRole rootDomainObject; tests.NewPresentationMaterial playsRole presentationMaterials { multiplicity *; } } relation RootDomainObjectNewTestElement { RootDomainObject playsRole rootDomainObject; tests.NewTestElement playsRole newTestElements { multiplicity *; } } relation RootDomainObjectNewTestGroup { RootDomainObject playsRole rootDomainObject; tests.NewTestGroup playsRole testGroups { multiplicity *; } } relation RootDomainObjectNonAffiliatedTeacher { RootDomainObject playsRole rootDomainObject; NonAffiliatedTeacher playsRole nonAffiliatedTeachers { multiplicity *; } } relation RootDomainObjectNotNeedToEnrollInCurricularCourse { RootDomainObject playsRole rootDomainObject; degree.enrollment.NotNeedToEnrollInCurricularCourse playsRole notNeedToEnrollInCurricularCourses { multiplicity *; } } relation RootDomainObjectOccupationPeriod { RootDomainObject playsRole rootDomainObject; OccupationPeriod playsRole occupationPeriods { multiplicity *; } } relation RootDomainObjectOccupationPeriodReference { RootDomainObject playsRole rootDomainObject; OccupationPeriodReference playsRole occupationPeriodReferences { multiplicity *; } } relation RootDomainObjectOldInquiriesCoursesRes { RootDomainObject playsRole rootDomainObject; oldInquiries.OldInquiriesCoursesRes playsRole oldInquiriesCoursesRess { multiplicity *; } } relation RootDomainObjectOldInquiriesSummary { RootDomainObject playsRole rootDomainObject; oldInquiries.OldInquiriesSummary playsRole oldInquiriesSummarys { multiplicity *; } } relation RootDomainObjectOldInquiriesTeachersRes { RootDomainObject playsRole rootDomainObject; oldInquiries.OldInquiriesTeachersRes playsRole oldInquiriesTeachersRess { multiplicity *; } } relation RootDomainObjectOldPublication { RootDomainObject playsRole rootDomainObject; teacher.OldPublication playsRole oldPublications { multiplicity *; } } relation RootDomainObjectOrientation { RootDomainObject playsRole rootDomainObject; teacher.Orientation playsRole orientations { multiplicity *; } } relation RootDomainObjectParkingGroup { RootDomainObject playsRole rootDomainObject; parking.ParkingGroup playsRole parkingGroups { multiplicity *; } } relation RootDomainObjectParkingParty { RootDomainObject playsRole rootDomainObject; parking.ParkingParty playsRole parkingParties { multiplicity *; } } relation RootDomainObjectParkingPartyHistory { RootDomainObject playsRole rootDomainObject; parking.ParkingPartyHistory playsRole parkingPartyHistories { multiplicity *; } } relation RootDomainObjectParkingRequest { RootDomainObject playsRole rootDomainObject; parking.ParkingRequest playsRole parkingRequests { multiplicity *; } } relation RootDomainObjectParkingRequestPeriod { RootDomainObject playsRole rootDomainObject; parking.ParkingRequestPeriod playsRole parkingRequestPeriods { multiplicity *; } } relation RootDomainObjectParty { RootDomainObject playsRole rootDomainObject; organizationalStructure.Party playsRole partys { multiplicity *; } } relation RootDomainObjectPartyContact { RootDomainObject playsRole rootDomainObject; contacts.PartyContact playsRole partyContacts { multiplicity *; } } relation RootDomainObjectInvalidPartyContact { RootDomainObject playsRole rootDomainObject; contacts.PartyContactValidation playsRole invalidPartyContactValidations { multiplicity *; } } relation RootDomainObjectPartyType { RootDomainObject playsRole rootDomainObject; organizationalStructure.PartyType playsRole partyTypes { multiplicity *; } } relation RootDomainObjectPaymentCode { RootDomainObject playsRole rootDomainObject; accounting.PaymentCode playsRole paymentCodes { multiplicity *; } } relation RootDomainObjectPaymentPhase { RootDomainObject playsRole rootDomainObject; PaymentPhase playsRole paymentPhases { multiplicity *; } } relation RootDomainObjectPaymentPlan { RootDomainObject playsRole rootDomainObject; accounting.PaymentPlan playsRole paymentPlans { multiplicity *; } } relation RootDomainObjectPersistentGroupMembers { RootDomainObject playsRole rootDomainObject; accessControl.PersistentGroupMembers playsRole persistentGroupMembers { multiplicity *; } } relation RootDomainObjectPersonAccount { RootDomainObject playsRole rootDomainObject; PersonAccount playsRole personAccounts { multiplicity *; } } relation RootDomainObjectPersonName { RootDomainObject playsRole rootDomainObject; person.PersonName playsRole personName { multiplicity *; } } relation RootDomainObjectPersonNamePart { RootDomainObject playsRole rootDomainObject; person.PersonNamePart playsRole personNamePart { multiplicity *; } } relation RootDomainObjectPersonalGroup { RootDomainObject playsRole rootDomainObject; PersonalGroup playsRole personalGroups { multiplicity *; } } relation RootDomainObjectPostingRule { RootDomainObject playsRole rootDomainObject; accounting.PostingRule playsRole postingRules { multiplicity *; } } relation RootDomainObjectPrecedence { RootDomainObject playsRole rootDomainObject; precedences.Precedence playsRole precedences { multiplicity *; } } relation RootDomainObjectPrecedentDegreeInformation { RootDomainObject playsRole rootDomainObject; student.PrecedentDegreeInformation playsRole precedentDegreeInformation { multiplicity *; } } relation RootDomainObjectPrice { RootDomainObject playsRole rootDomainObject; Price playsRole prices { multiplicity *; } } relation RootDomainObjectProfessorship { RootDomainObject playsRole rootDomainObject; Professorship playsRole professorships { multiplicity *; } } relation RootDomainObjectProject { RootDomainObject playsRole rootDomainObject; research.project.Project playsRole projects { multiplicity *; } } relation RootDomainObjectProjectAccess { RootDomainObject playsRole rootDomainObject; projectsManagement.ProjectAccess playsRole projectAccesss { multiplicity *; } } relation RootDomainObjectProjectEventAssociation { RootDomainObject playsRole rootDomainObject; research.project.ProjectEventAssociation playsRole projectEventAssociations { multiplicity *; } } relation RootDomainObjectProjectParticipation { RootDomainObject playsRole rootDomainObject; research.project.ProjectParticipation playsRole projectParticipations { multiplicity *; } } relation RootDomainObjectProjectSubmission { RootDomainObject playsRole rootDomainObject; ProjectSubmission playsRole projectSubmissions { multiplicity *; } } relation RootDomainObjectProjectSubmissionLog { RootDomainObject playsRole rootDomainObject; ProjectSubmissionLog playsRole projectSubmissionLogs { multiplicity *; } } relation RootDomainObjectProposal { RootDomainObject playsRole rootDomainObject; finalDegreeWork.Proposal playsRole proposals { multiplicity *; } } relation RootDomainObjectProtocol { RootDomainObject playsRole rootDomainObject; protocols.Protocol playsRole protocols { multiplicity *; } } relation RootDomainObjectProtocolHistory { RootDomainObject playsRole rootDomainObject; protocols.ProtocolHistory playsRole protocolHistories { multiplicity *; } } relation RootDomainObjectPublicationsNumber { RootDomainObject playsRole rootDomainObject; teacher.PublicationsNumber playsRole publicationsNumbers { multiplicity *; } } relation RootDomainObjectPunctualRoomsOccupationComment { RootDomainObject playsRole rootDomainObject; PunctualRoomsOccupationComment playsRole punctualRoomsOccupationComments { multiplicity *; } } relation RootDomainObjectPunctualRoomsOccupationRequest { RootDomainObject playsRole rootDomainObject; PunctualRoomsOccupationRequest playsRole punctualRoomsOccupationRequests { multiplicity *; } } relation RootDomainObjectPunctualRoomsOccupationStateInstant { RootDomainObject playsRole rootDomainObject; PunctualRoomsOccupationStateInstant playsRole punctualRoomsOccupationStateInstants { multiplicity *; } } relation RootDomainObjectQualification { RootDomainObject playsRole rootDomainObject; Qualification playsRole qualifications { multiplicity *; } } relation RootDomainObjectQuestion { RootDomainObject playsRole rootDomainObject; onlineTests.Question playsRole questions { multiplicity *; } } relation RootDomainObjectReceipt { RootDomainObject playsRole rootDomainObject; accounting.Receipt playsRole receipts { multiplicity *; } } relation RootDomainObjectReceiptPrintVersion { RootDomainObject playsRole rootDomainObject; accounting.ReceiptPrintVersion playsRole receiptVersions { multiplicity *; } } relation RootDomainObjectRegistration { RootDomainObject playsRole rootDomainObject; student.Registration playsRole registrations { multiplicity *; } } relation RootDomainObjectRegistrationNumber { RootDomainObject playsRole rootDomainObject; student.RegistrationNumber playsRole registrationNumbers { multiplicity *; } } relation RootDomainObjectRegistrationState { RootDomainObject playsRole rootDomainObject; student.registrationStates.RegistrationState playsRole registrationStates { multiplicity *; } } relation RootDomainObjectRegistrationStateLog { RootDomainObject playsRole rootDomainObject; student.registrationStates.RegistrationStateLog playsRole registrationStateLogs { multiplicity *; } } relation RootDomainObjectReimbursementGuide { RootDomainObject playsRole rootDomainObject; reimbursementGuide.ReimbursementGuide playsRole reimbursementGuides { multiplicity *; } } relation RootDomainObjectReimbursementGuideEntry { RootDomainObject playsRole rootDomainObject; reimbursementGuide.ReimbursementGuideEntry playsRole reimbursementGuideEntrys { multiplicity *; } } relation RootDomainObjectReimbursementGuideSituation { RootDomainObject playsRole rootDomainObject; reimbursementGuide.ReimbursementGuideSituation playsRole reimbursementGuideSituations { multiplicity *; } } relation RootDomainObjectResearchInterest { RootDomainObject playsRole rootDomainObject; research.ResearchInterest playsRole researchInterests { multiplicity *; } } relation RootDomainObjectResearchResult { RootDomainObject playsRole rootDomainObject; research.result.ResearchResult playsRole results { multiplicity *; } } relation RootDomainObjectResidenceCandidacies { RootDomainObject playsRole rootDomainObject; student.ResidenceCandidacies playsRole residenceCandidaciess { multiplicity *; } } relation RootDomainObjectResource { RootDomainObject playsRole rootDomainObject; resource.Resource playsRole resources { multiplicity *; } } relation RootDomainObjectResourceAllocation { RootDomainObject playsRole rootDomainObject; resource.ResourceAllocation playsRole resourceAllocations { multiplicity *; } } relation RootDomainObjectResourceResponsibility { RootDomainObject playsRole rootDomainObject; resource.ResourceResponsibility playsRole resourceResponsibility { multiplicity *; } } relation RootDomainObjectRestriction { RootDomainObject playsRole rootDomainObject; precedences.Restriction playsRole restrictions { multiplicity *; } } relation RootDomainObjectResultParticipation { RootDomainObject playsRole rootDomainObject; research.result.ResultParticipation playsRole resultParticipations { multiplicity *; } } relation RootDomainObjectResultTeacher { RootDomainObject playsRole rootDomainObject; research.result.ResultTeacher playsRole resultTeachers { multiplicity *; } } relation RootDomainObjectResultUnitAssociation { RootDomainObject playsRole rootDomainObject; research.result.ResultUnitAssociation playsRole resultUnitAssociations { multiplicity *; } } relation RootDomainObjectRole { RootDomainObject playsRole rootDomainObject; Role playsRole roles { multiplicity *; } } relation RootDomainObjectRoomClassification { RootDomainObject playsRole rootDomainObject; space.RoomClassification playsRole roomClassification { multiplicity *; } } relation RootDomainObjectScheduleing { RootDomainObject playsRole rootDomainObject; finalDegreeWork.Scheduleing playsRole scheduleings { multiplicity *; } } relation RootDomainObjectSchoolClass { RootDomainObject playsRole rootDomainObject; SchoolClass playsRole schoolClasss { multiplicity *; } } relation RootDomainObjectScientificArea { RootDomainObject playsRole rootDomainObject; ScientificArea playsRole scientificAreas { multiplicity *; } } relation RootDomainObjectScientificJournal { RootDomainObject playsRole rootDomainObject; research.activity.ScientificJournal playsRole scientificJournals { multiplicity *; } } relation RootDomainObjectSecretaryEnrolmentStudent { RootDomainObject playsRole rootDomainObject; SecretaryEnrolmentStudent playsRole secretaryEnrolmentStudents { multiplicity *; } } relation RootDomainObjectSeminary { RootDomainObject playsRole rootDomainObject; Seminaries.Seminary playsRole seminarys { multiplicity *; } } relation RootDomainObjectSenior { RootDomainObject playsRole rootDomainObject; student.Senior playsRole seniors { multiplicity *; } } relation RootDomainObjectServiceAgreement { RootDomainObject playsRole rootDomainObject; accounting.ServiceAgreement playsRole serviceAgreements { multiplicity *; } } relation RootDomainObjectServiceAgreementTemplate { RootDomainObject playsRole rootDomainObject; accounting.ServiceAgreementTemplate playsRole serviceAgreementTemplates { multiplicity *; } } relation RootDomainObjectServiceProviderRegime { RootDomainObject playsRole rootDomainObject; teacher.ServiceProviderRegime playsRole serviceProviderRegimes { multiplicity *; } } relation RootDomainObjectShift { RootDomainObject playsRole rootDomainObject; Shift playsRole shifts { multiplicity *; } } relation RootDomainObjectShiftGroupingProperties { RootDomainObject playsRole rootDomainObject; ShiftGroupingProperties playsRole shiftGroupingProperties { multiplicity *; } } relation RootDomainObjectShiftDistribution { RootDomainObject playsRole rootDomainObject; candidacy.degree.ShiftDistribution playsRole shiftDistributions { multiplicity *; } } relation RootDomainObjectShiftDistributionEntry { RootDomainObject playsRole rootDomainObject; candidacy.degree.ShiftDistributionEntry playsRole shiftDistributionEntries { multiplicity *; } } relation RootDomainObjectShiftEnrolment { RootDomainObject playsRole rootDomainObject; ShiftEnrolment playsRole shiftEnrolments { multiplicity *; } } relation RootDomainObjectShiftProfessorship { RootDomainObject playsRole rootDomainObject; ShiftProfessorship playsRole shiftProfessorships { multiplicity *; } } relation RootDomainObjectSibsPaymentFile { RootDomainObject playsRole rootDomainObject; gratuity.masterDegree.SibsPaymentFile playsRole sibsPaymentFiles { multiplicity *; } } relation RootDomainObjectSibsPaymentFileEntry { RootDomainObject playsRole rootDomainObject; gratuity.masterDegree.SibsPaymentFileEntry playsRole sibsPaymentFileEntrys { multiplicity *; } } relation RootDomainObjectSibsPaymentFileProcessReport { RootDomainObject playsRole rootDomainObject; accounting.SibsPaymentFileProcessReport playsRole sibsPaymentFileProcessReports { multiplicity *; } } relation RootDomainObjectSpaceInformation { RootDomainObject playsRole rootDomainObject; space.SpaceInformation playsRole spaceInformations { multiplicity *; } } relation RootDomainObjectStudent { RootDomainObject playsRole rootDomainObject; student.Student playsRole students { multiplicity *; } } relation RootDomainObjectStudentNumber { RootDomainObject playsRole rootDomainObject; student.StudentNumber playsRole studentNumbers { multiplicity *; } } relation RootDomainObjectStudentCourseReport { RootDomainObject playsRole rootDomainObject; gesdis.StudentCourseReport playsRole studentCourseReports { multiplicity *; } } relation RootDomainObjectStudentCurricularPlan { RootDomainObject playsRole rootDomainObject; StudentCurricularPlan playsRole studentCurricularPlans { multiplicity *; } } relation RootDomainObjectStudentGroup { RootDomainObject playsRole rootDomainObject; StudentGroup playsRole studentGroups { multiplicity *; } } relation RootDomainObjectStudentStatute { RootDomainObject playsRole rootDomainObject; student.StudentStatute playsRole studentStatutes { multiplicity *; } } relation RootDomainObjectStudentTestLog { RootDomainObject playsRole rootDomainObject; onlineTests.StudentTestLog playsRole studentTestLogs { multiplicity *; } } relation RootDomainObjectStudentTestQuestion { RootDomainObject playsRole rootDomainObject; onlineTests.StudentTestQuestion playsRole studentTestQuestions { multiplicity *; } } relation RootDomainObjectSummary { RootDomainObject playsRole rootDomainObject; Summary playsRole summarys { multiplicity *; } } relation RootDomainObjectSupportLesson { RootDomainObject playsRole rootDomainObject; SupportLesson playsRole supportLessons { multiplicity *; } } relation RootDomainObjectTeacher { RootDomainObject playsRole rootDomainObject; Teacher playsRole teachers { multiplicity *; } } relation RootDomainObjectTeacherDegreeFinalProjectStudent { RootDomainObject playsRole rootDomainObject; degree.finalProject.TeacherDegreeFinalProjectStudent playsRole teacherDegreeFinalProjectStudents { multiplicity *; } } relation RootDomainObjectTeacherInstitutionWorkTime { RootDomainObject playsRole rootDomainObject; teacher.workTime.TeacherInstitutionWorkTime playsRole teacherInstitutionWorkTimes { multiplicity *; } } relation RootDomainObjectTeacherPersonalExpectation { RootDomainObject playsRole rootDomainObject; teacher.TeacherPersonalExpectation playsRole teacherPersonalExpectations { multiplicity *; } } relation RootDomainObjectTeacherPersonalExpectationPeriod { RootDomainObject playsRole rootDomainObject; TeacherPersonalExpectationPeriod playsRole teacherPersonalExpectationPeriods { multiplicity *; } } relation RootDomainObjectTeacherService { RootDomainObject playsRole rootDomainObject; teacher.TeacherService playsRole teacherServices { multiplicity *; } } relation RootDomainObjectTeacherServiceLog { RootDomainObject playsRole rootDomainObject; teacher.TeacherServiceLog playsRole teacherServiceLog { multiplicity *; } } relation TeacherServiceTeacherServiceLog { teacher.TeacherService playsRole teacherService; teacher.TeacherServiceLog playsRole teacherServiceLog { multiplicity *; } } relation TeacherServiceLogUser { teacher.TeacherServiceLog playsRole teacherServiceLog { multiplicity *; } User playsRole user; } relation RootDomainObjectTeacherServiceItem { RootDomainObject playsRole rootDomainObject; teacher.TeacherServiceItem playsRole teacherServiceItems { multiplicity *; } } relation RootDomainObjectTest { RootDomainObject playsRole rootDomainObject; onlineTests.Test playsRole tests { multiplicity *; } } relation RootDomainObjectTestChecksum { RootDomainObject playsRole rootDomainObject; onlineTests.TestChecksum playsRole testChecksums { multiplicity *; } } relation RootDomainObjectTestQuestion { RootDomainObject playsRole rootDomainObject; onlineTests.TestQuestion playsRole testQuestions { multiplicity *; } } relation RootDomainObjectTestScope { RootDomainObject playsRole rootDomainObject; onlineTests.TestScope playsRole testScopes { multiplicity *; } } relation RootDomainObjectTheme { RootDomainObject playsRole rootDomainObject; Seminaries.Theme playsRole themes { multiplicity *; } } relation RootDomainObjectThesis { RootDomainObject playsRole rootDomainObject; thesis.Thesis playsRole theses { multiplicity *; } } relation RootDomainObjectThesisPendingPublication { RootDomainObject playsRole rootDomainObjectFromPendingPublication; thesis.Thesis playsRole thesesPendingPublication { multiplicity *; } } relation RootDomainObjectTransaction { RootDomainObject playsRole rootDomainObject; transactions.Transaction playsRole transactions { multiplicity *; } } relation DegreeCurricularPlanTutorshipIntentions { DegreeCurricularPlan playsRole degreeCurricularPlan { multiplicity 1..1; } TutorshipIntention playsRole tutorshipIntention { multiplicity *; } } relation TeachersTutorshipIntentions { Teacher playsRole teacher { multiplicity 1..1; } TutorshipIntention playsRole tutorshipIntention { multiplicity *; } } relation RootDomainObjectTutorship { RootDomainObject playsRole rootDomainObject; Tutorship playsRole tutorships { multiplicity *; } } relation RootDomainObjectTutorshipSummary { RootDomainObject playsRole rootDomainObject; TutorshipSummary playsRole tutorshipSummaries { multiplicity *; } } relation RootDomainObjectTutorshipSummaryPeriod { RootDomainObject playsRole rootDomainObject; TutorshipSummaryPeriod playsRole tutorshipSummaryPeriods { multiplicity *; } } relation RootDomainObjectTutorshipSummaryRelation { RootDomainObject playsRole rootDomainObject; TutorshipSummaryRelation playsRole tutorshipSummaryRelations { multiplicity *; } } relation RootDomainObjectTutorshipLog { RootDomainObject playsRole rootDomainObject; TutorshipLog playsRole tutorshipLogs { multiplicity *; } } relation TutorshipSummaryTutorships { Tutorship playsRole tutorship; TutorshipSummaryRelation playsRole tutorshipSummaryRelations { multiplicity *; } } relation TutorshipTutorshipSummaries { TutorshipSummary playsRole tutorshipSummary; TutorshipSummaryRelation playsRole tutorshipSummaryRelations { multiplicity *; } } relation TutorshipSummaryPeriodExecutionSemester { TutorshipSummaryPeriod playsRole tutorshipSummaryPeriod; ExecutionSemester playsRole executionSemester; } relation TutorshipSummarySemester { TutorshipSummary playsRole tutorshipSummaries { multiplicity *; } ExecutionSemester playsRole semester; } relation TutorshipSummaryDegree { TutorshipSummary playsRole tutorshipSummaries { multiplicity *; } Degree playsRole degree; } relation TutorshipSummaryTeacher { TutorshipSummary playsRole tutorshipSummaries { multiplicity *; } Teacher playsRole teacher; } relation TutorshipTutorshipLogs { Tutorship playsRole tutorship; TutorshipLog playsRole tutorshipLog; } relation RootDomainObjectTeacherServiceDistribution { RootDomainObject playsRole rootDomainObject; teacherServiceDistribution.TeacherServiceDistribution playsRole teacherServiceDistributions { multiplicity *; } } relation TSDCurricularLoadRootDomainObject { RootDomainObject playsRole rootDomainObject; teacherServiceDistribution.TSDCurricularLoad playsRole TSDCurricularLoads { multiplicity *; } } relation RootDomainObjectTSDCourse { RootDomainObject playsRole rootDomainObject; teacherServiceDistribution.TSDCourse playsRole TSDCourses { multiplicity *; } } relation RootDomainObjectTSDProfessorship { RootDomainObject playsRole rootDomainObject; teacherServiceDistribution.TSDProfessorship playsRole TSDProfessorships { multiplicity *; } } relation RootDomainObjectTSDProcess { RootDomainObject playsRole rootDomainObject; teacherServiceDistribution.TSDProcess playsRole TSDProcesses { multiplicity *; } } relation RootDomainObjectTSDProcessPhase { RootDomainObject playsRole rootDomainObject; teacherServiceDistribution.TSDProcessPhase playsRole TSDProcessPhases { multiplicity *; } } relation RootDomainObjectTSDTeacher { RootDomainObject playsRole rootDomainObject; teacherServiceDistribution.TSDTeacher playsRole TSDTeachers { multiplicity *; } } relation RootDomainObjectUnitName { RootDomainObject playsRole rootDomainObject; organizationalStructure.UnitName playsRole unitName { multiplicity *; } } relation RootDomainObjectUnitNamePart { RootDomainObject playsRole rootDomainObject; organizationalStructure.UnitNamePart playsRole unitNamePart { multiplicity *; } } relation RootDomainObjectUnitAcronym { RootDomainObject playsRole rootDomainObject; organizationalStructure.UnitAcronym playsRole unitAcronyms { multiplicity *; } } relation RootDomainObjectUnitSiteBanner { RootDomainObject playsRole rootDomainObject; UnitSiteBanner playsRole unitSiteBanners { multiplicity *; } } relation RootDomainObjectUnitSiteLink { RootDomainObject playsRole rootDomainObject; UnitSiteLink playsRole unitSiteLinks { multiplicity *; } } relation RootDomainObjectUniversity { RootDomainObject playsRole rootDomainObject; University playsRole universitys { multiplicity *; } } relation RootDomainObjectUser { RootDomainObject playsRole rootDomainObject; User playsRole users { multiplicity *; } } relation RootDomainObjectUsernameCounter { RootDomainObject playsRole rootDomainObject; util.UsernameCounter playsRole usernameCounter; } relation RootDomainObjectVehicle { RootDomainObject playsRole rootDomainObject; parking.Vehicle playsRole vehicles { multiplicity *; } } relation RootDomainObjectWeeklyOcupation { RootDomainObject playsRole rootDomainObject; teacher.WeeklyOcupation playsRole weeklyOcupations { multiplicity *; } } relation RootDomainObjectWeeklyWorkLoad { RootDomainObject playsRole rootDomainObject; student.WeeklyWorkLoad playsRole weeklyWorkLoads { multiplicity *; } } relation RootDomainObjectWrittenEvaluationEnrolment { RootDomainObject playsRole rootDomainObject; WrittenEvaluationEnrolment playsRole writtenEvaluationEnrolments { multiplicity *; } } relation RootDomainUnavailablePeriod { RootDomainObject playsRole rootDomainObject; vigilancy.UnavailablePeriod playsRole unavailablePeriods { multiplicity *; } } relation RootDomainVigilancy { RootDomainObject playsRole rootDomainObject; vigilancy.Vigilancy playsRole vigilancies { multiplicity *; } } relation RootDomainVigilantGroup { RootDomainObject playsRole rootDomainObject; vigilancy.VigilantGroup playsRole vigilantGroups { multiplicity *; } } relation SchedulingExecutionDegree { finalDegreeWork.Scheduleing playsRole scheduling; ExecutionDegree playsRole executionDegrees { multiplicity *; } } relation SchoolClassExecutionDegree { SchoolClass playsRole schoolClasses { multiplicity *; } ExecutionDegree playsRole executionDegree; } relation ScientificAreaCreditsInScientificArea { CreditsInScientificArea playsRole creditsInScientificAreas { multiplicity *; } ScientificArea playsRole scientificArea; } relation ScientificCommissionPerson { Person playsRole person; ScientificCommission playsRole scientificCommissions { multiplicity *; } } relation ScientificCommissionRootDomainObject { ScientificCommission playsRole scientificCommissions { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation SectionTestElement { tests.NewTestElement playsRole testElements { multiplicity *; } tests.NewSection playsRole section; } relation SeminaryCandidacy { Seminaries.Seminary playsRole seminary; Seminaries.SeminaryCandidacy playsRole candidacies { multiplicity *; } } relation SeminaryCourseEquivalency { Seminaries.Seminary playsRole seminary; Seminaries.CourseEquivalency playsRole equivalencies { multiplicity *; } } relation SendProposal { ExportGrouping playsRole groupingSenderExecutionCourse { multiplicity *; } ExecutionCourse playsRole senderExecutionCourse; } relation SeniorStudent { student.Senior playsRole senior; student.Registration playsRole student; } relation ServiceAgreementPerson { Person playsRole person; accounting.ServiceAgreement playsRole serviceAgreements { multiplicity *; } } relation ServiceAgreementServiceAgreementTemplate { accounting.ServiceAgreementTemplate playsRole serviceAgreementTemplate; accounting.ServiceAgreement playsRole serviceAgreements { multiplicity *; } } relation ServiceAgreementTemplateServiceAgreementTemplatePaymentPlan { accounting.ServiceAgreementTemplate playsRole serviceAgreementTemplate; accounting.ServiceAgreementTemplatePaymentPlan playsRole paymentPlans { multiplicity *; } } relation ServiceAgreementServiceAgreementPaymentPlan { accounting.ServiceAgreement playsRole serviceAgreement; accounting.ServiceAgreementPaymentPlan playsRole paymentPlans { multiplicity *; } } relation ServiceAgreementTemplatePostingRule { accounting.ServiceAgreementTemplate playsRole serviceAgreementTemplate; accounting.PostingRule playsRole postingRules { multiplicity *; } } relation ServiceProviderRegimeTeacher { teacher.ServiceProviderRegime playsRole serviceProviderRegime; Teacher playsRole teacher; } relation ShiftDistributionEntryShift { Shift playsRole shift; candidacy.degree.ShiftDistributionEntry playsRole shiftDistributionEntries { multiplicity *; } } relation ShiftDistributionShiftDistributionEntry { candidacy.degree.ShiftDistribution playsRole shiftDistribution; candidacy.degree.ShiftDistributionEntry playsRole shiftDistributionEntries { multiplicity *; } } relation ShiftEnrolmentRegistration { student.Registration playsRole registration; ShiftEnrolment playsRole shiftEnrolments { multiplicity *; } } relation ShiftEnrolmentShift { Shift playsRole shift; ShiftEnrolment playsRole shiftEnrolments { multiplicity *; } } relation ShiftGroupingPropertiesShift { Shift playsRole shift; ShiftGroupingProperties playsRole shiftGroupingProperties; } relation ShiftGroupingPropertiesGrouping { Grouping playsRole grouping; ShiftGroupingProperties playsRole shiftGroupingProperties { multiplicity *; } } relation ShiftSchoolClass { SchoolClass playsRole associatedClasses { multiplicity *; } Shift playsRole associatedShifts { multiplicity *; } } relation ShiftShiftProfessorship { Shift playsRole shift; ShiftProfessorship playsRole associatedShiftProfessorship { multiplicity *; } } relation ShiftStudent { Shift playsRole shifts { multiplicity *; } student.Registration playsRole students { multiplicity *; } } relation ShiftSummary { Summary playsRole associatedSummaries { multiplicity *; } Shift playsRole shift; } relation SibsPaymentFileEntrySibsPaymentFile { gratuity.masterDegree.SibsPaymentFileEntry playsRole sibsPaymentFileEntries { multiplicity *; } gratuity.masterDegree.SibsPaymentFile playsRole sibsPaymentFile; } relation ContentJumpSite { contents.ContentJump playsRole jumpPoint; Site playsRole jumpTo; } /* relation SitePointsTemplate { Site playsRole template; Site playsRole templatedSites { multiplicity *; } } relation SiteTemplatePointsModule { SiteTemplate playsRole siteTemplates { multiplicity *; } functionalities.Module playsRole module; } relation SiteTemplatePointsContainer { SiteTemplate playsRole siteTemplates { multiplicity *; } contents.Container playsRole container; } */ relation SpaceBlueprint { space.Space playsRole space; space.Blueprint playsRole blueprints { multiplicity *; } } relation SpaceSpace { space.Space playsRole containedSpaces { multiplicity *; } space.Space playsRole suroundingSpace; } relation SpaceSpaceInformation { space.SpaceInformation playsRole spaceInformations { multiplicity *; } space.Space playsRole space; } relation StudentCandidacyExecutionDegree { ExecutionDegree playsRole executionDegree; candidacy.StudentCandidacy playsRole studentCandidacies { multiplicity *; } } relation StudentCurricularPlanBranch { StudentCurricularPlan playsRole studentCurricularPlans { multiplicity *; } Branch playsRole branch; } relation StudentCurricularPlanCredits { StudentCurricularPlan playsRole studentCurricularPlan; studentCurriculum.Credits playsRole credits { multiplicity *; } } relation StudentCurricularPlanCreditsInAnySecundaryArea { CreditsInAnySecundaryArea playsRole creditsInAnySecundaryAreas { multiplicity *; } StudentCurricularPlan playsRole studentCurricularPlan; } relation StudentCurricularPlanCreditsInScientificArea { CreditsInScientificArea playsRole creditsInScientificAreas { multiplicity *; } StudentCurricularPlan playsRole studentCurricularPlan; } relation StudentCurricularPlanDegreeCurricularPlan { StudentCurricularPlan playsRole studentCurricularPlans { multiplicity *; } DegreeCurricularPlan playsRole degreeCurricularPlan; } relation StudentCurricularPlanEmployee { StudentCurricularPlan playsRole studentCurricularPlans { multiplicity *; } Employee playsRole employee; } relation StudentCurricularPlanEnrolment { StudentCurricularPlan playsRole studentCurricularPlan; Enrolment playsRole enrolments { multiplicity *; } } relation StudentCurricularPlanEquivalencePlanEntryToRemove { EquivalencePlanEntry playsRole entriesToRemove { multiplicity *; } StudentCurricularPlanEquivalencePlan playsRole equivalencePlans { multiplicity *; } } relation StudentCurricularPlanEquivalencePlanOldStudentCurricularPlan { StudentCurricularPlan playsRole oldStudentCurricularPlan; StudentCurricularPlanEquivalencePlan playsRole equivalencePlan; } relation StudentCurricularPlanNotNeedToEnrollInCurricularCourse { StudentCurricularPlan playsRole studentCurricularPlan; degree.enrollment.NotNeedToEnrollInCurricularCourse playsRole notNeedToEnrollCurricularCourses { multiplicity *; } } relation StudentCurricularPlanStudent { StudentCurricularPlan playsRole studentCurricularPlans { multiplicity *; } student.Registration playsRole student; } relation StudentDataByExecutionYearExecutionYear { student.StudentDataByExecutionYear playsRole studentDataByExecutionYear { multiplicity *; } ExecutionYear playsRole executionYear; } relation StudentDataByExecutionYearResidenceCandidacy { student.StudentDataByExecutionYear playsRole studentDataByExecutionYear; student.ResidenceCandidacies playsRole residenceCandidacy; } relation StudentDataByExecutionYearRootDomainObject { student.StudentDataByExecutionYear playsRole studentDataByExecutionYear { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation StudentDataByExecutionYearStudent { student.StudentDataByExecutionYear playsRole studentDataByExecutionYear { multiplicity *; } student.Student playsRole student; } relation StudentDataShareAuthorizations { student.StudentDataShareAuthorization playsRole studentDataShareAuthorization { multiplicity *; } student.Student playsRole student { multiplicity 1..1; } } relation StudentDistributedTestLogs { onlineTests.StudentTestLog playsRole studentsLogs { multiplicity *; } onlineTests.DistributedTest playsRole distributedTest; } relation StudentEnrolmentLog { log.CurriculumLineLog playsRole curriculumLineLogs { multiplicity *; } student.Registration playsRole student; } relation StudentExecutionYear { student.Registration playsRole students { multiplicity *; } ExecutionYear playsRole registrationYear; } relation RegistrationExternalEnrolment { student.Registration playsRole registration; studentCurriculum.ExternalEnrolment playsRole externalEnrolments { multiplicity *; } } relation StudentGroup { StudentGroup playsRole associatedStudentGroups { multiplicity *; } Shift playsRole shift; } relation StudentGroupAttend { Attends playsRole attends { multiplicity *; } StudentGroup playsRole studentGroups { multiplicity *; } } relation StudentGroupBelongsToGrouping { StudentGroup playsRole studentGroups { multiplicity *; } Grouping playsRole grouping; } relation StudentPaymentCode { Person playsRole person; accounting.PaymentCode playsRole paymentCodes { multiplicity *; } } relation StudentPerson { student.Student playsRole student; Person playsRole person; } relation StudentStudentNumber { student.Student playsRole student; student.StudentNumber playsRole studentNumber; } relation StudentSecretaryEnrolmentStudent { SecretaryEnrolmentStudent playsRole secretaryEnrolmentStudents { multiplicity *; } student.Registration playsRole student; } relation StudentStatuteBeginPeriod { ExecutionSemester playsRole beginExecutionPeriod; student.StudentStatute playsRole beginningStudentStatutes { multiplicity *; } } relation StudentStatuteEndPeriod { ExecutionSemester playsRole endExecutionPeriod; student.StudentStatute playsRole endingStudentStatutes { multiplicity *; } } relation StudentStatuteStudent { student.Student playsRole student; student.StudentStatute playsRole studentStatutes { multiplicity *; } } relation SeniorStatuteRegistration { student.SeniorStatute playsRole seniorStatute { multiplicity *; } student.Registration playsRole registration { multiplicity 0..1; } } relation StudentTestQuestions { onlineTests.Question playsRole question; onlineTests.StudentTestQuestion playsRole studentTestsQuestions { multiplicity *; } } relation StudentTestsLogs { onlineTests.StudentTestLog playsRole studentTestsLogs { multiplicity *; } student.Registration playsRole student; } relation StudentTestsQuestions { onlineTests.StudentTestQuestion playsRole studentTestsQuestions { multiplicity *; } student.Registration playsRole student; } relation TeacherDegreeFinalProjectStudentExecutionPeriod { degree.finalProject.TeacherDegreeFinalProjectStudent playsRole associatedTeacherDegreeFinalProjectStudents { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation TeacherDegreeFinalProjectStudentStudent { degree.finalProject.TeacherDegreeFinalProjectStudent playsRole teacherDegreeFinalProjectStudent { multiplicity *; } student.Registration playsRole student; } relation TeacherDegreeFinalProjectStudentTeacher { degree.finalProject.TeacherDegreeFinalProjectStudent playsRole degreeFinalProjectStudents { multiplicity *; } Teacher playsRole teacher; } relation TeacherInstitutionWorkTimeExecutionPeriod { teacher.workTime.TeacherInstitutionWorkTime playsRole associatedTeacherInstitutionWorkTime { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation TeacherInstitutionWorkTimeTeacher { teacher.workTime.TeacherInstitutionWorkTime playsRole institutionWorkTimePeriods { multiplicity *; } Teacher playsRole teacher; } relation TeacherManagementPositionCreditLine { Teacher playsRole teacher; credits.ManagementPositionCreditLine playsRole managementPositions { multiplicity *; } } relation TeacherMasterDegreeServiceProfessorship { teacher.TeacherMasterDegreeService playsRole teacherMasterDegreeServices { multiplicity *; } Professorship playsRole professorship; } relation TeacherOldPublication { teacher.OldPublication playsRole associatedOldPublications { multiplicity *; } Teacher playsRole teacher; } relation TeacherOtherTypeCreditLine { Teacher playsRole teacher; credits.OtherTypeCreditLine playsRole otherTypeCreditLines { multiplicity *; } } relation TeacherPersonalExpectationExecutionYear { teacher.TeacherPersonalExpectation playsRole teacherPersonalExpectations { multiplicity *; } ExecutionYear playsRole executionYear; } relation TeacherPersonalExpectationPeriodDepartment { TeacherPersonalExpectationPeriod playsRole teacherPersonalExpectationPeriods { multiplicity *; } Department playsRole department; } relation TeacherPersonalExpectationPeriodExecutionYear { TeacherPersonalExpectationPeriod playsRole teacherPersonalExpectationPeriods { multiplicity *; } ExecutionYear playsRole executionYear; } relation TeacherPersonalExpectationTeacher { teacher.TeacherPersonalExpectation playsRole teacherPersonalExpectations { multiplicity *; } Teacher playsRole teacher; } relation PersonProfessorship { Professorship playsRole professorships { multiplicity *; } Person playsRole person; } relation TeacherServiceExecutionPeriod { teacher.TeacherService playsRole teacherServices { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation TeacherServiceTeacher { teacher.TeacherService playsRole teacherServices { multiplicity *; } Teacher playsRole teacher; } relation TeacherServiceTeacherServiceItem { teacher.TeacherServiceItem playsRole serviceItems { multiplicity *; } teacher.TeacherService playsRole teacherService; } relation TeacherSummary { Summary playsRole associatedSummaries { multiplicity *; } Teacher playsRole teacher; } relation TestElementPresentationMaterial { tests.NewTestElement playsRole testElement; tests.NewPresentationMaterial playsRole presentationMaterials { multiplicity *; } } relation TestGroupExecutionCourse { tests.NewTestGroup playsRole testGroups { multiplicity *; } ExecutionCourse playsRole executionCourse; } relation TestGroupTeacher { tests.NewTestGroup playsRole testGroups { multiplicity *; } Teacher playsRole creator; } relation TestGroupTest { tests.NewTest playsRole tests { multiplicity *; } tests.NewTestGroup playsRole testGroup; } relation TestModelModelGroup { tests.NewTestModel playsRole bagModel; tests.NewModelGroup playsRole bag; } relation TestModelTeacher { tests.NewTestModel playsRole testModels { multiplicity *; } Teacher playsRole creator; } relation TestPerson { tests.NewTest playsRole tests { multiplicity *; } Person playsRole persons { multiplicity *; } } relation TestScope { onlineTests.Test playsRole tests { multiplicity *; } onlineTests.TestScope playsRole testScope; } relation ThemeCandidacy { Seminaries.Theme playsRole theme; Seminaries.SeminaryCandidacy playsRole associatedCandidacies { multiplicity *; } } relation ThemeCaseStudy { Seminaries.Theme playsRole seminaryTheme; Seminaries.CaseStudy playsRole caseStudies { multiplicity *; } } relation ThesisDegree { Degree playsRole degree; thesis.Thesis playsRole thesis { multiplicity *; } } relation ThesisEnrolment { Enrolment playsRole enrolment; thesis.Thesis playsRole theses { multiplicity 0..2; } } relation ThesisEvaluationParticipantRootDomainObject { RootDomainObject playsRole rootDomainObject; thesis.ThesisEvaluationParticipant playsRole thesisParticipations { multiplicity *; } } relation ThesisHasDissertationFile { thesis.ThesisFile playsRole dissertation; thesis.Thesis playsRole dissertationThesis; } relation ThesisHasExtendedAbstractFile { thesis.ThesisFile playsRole extendedAbstract; thesis.Thesis playsRole abstractThesis; } relation ThesisHasParticipations { thesis.Thesis playsRole thesis; thesis.ThesisEvaluationParticipant playsRole participations { multiplicity *; } } relation TransactionPerson { transactions.Transaction playsRole responsabilityTransactions { multiplicity *; } Person playsRole responsiblePerson; } relation TransactionPersonAccount { transactions.Transaction playsRole transactions { multiplicity *; } PersonAccount playsRole personAccount; } relation TutorshipStudentCurricularPlan { Tutorship playsRole tutorships { multiplicity *; } StudentCurricularPlan playsRole studentCurricularPlan; } relation TutorshipTeacher { Tutorship playsRole tutorships { multiplicity *; } Teacher playsRole teacher; } relation TSDCompetenceCourseCompetenceCourse { teacherServiceDistribution.TSDCompetenceCourse playsRole TSDCompetenceCourses { multiplicity *; } CompetenceCourse playsRole competenceCourse; } relation TSDCourseExecutionPeriod { teacherServiceDistribution.TSDCourse playsRole TSDCourses { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation TSDCourseTSDCurricularLoad { teacherServiceDistribution.TSDCourse playsRole TSDCourse; teacherServiceDistribution.TSDCurricularLoad playsRole TSDCurricularLoads { multiplicity *; } } relation TSDCurricularCourseTSDCurricularCourseGroup { teacherServiceDistribution.TSDCurricularCourse playsRole TSDCurricularCourses { multiplicity *; } teacherServiceDistribution.TSDCurricularCourseGroup playsRole TSDCurricularCourseGroup; } relation TSDProfessorshipTSDCourse { teacherServiceDistribution.TSDProfessorship playsRole TSDProfessorships { multiplicity *; } teacherServiceDistribution.TSDCourse playsRole TSDCourse; } relation TSDProfessorshipTSDTeacher { teacherServiceDistribution.TSDProfessorship playsRole TSDProfessorships { multiplicity *; } teacherServiceDistribution.TSDTeacher playsRole TSDTeacher; } relation TSDProcessCreator { teacherServiceDistribution.TSDProcess playsRole TSDProcesses { multiplicity *; } Person playsRole creator; } relation TSDProcessDepartment { teacherServiceDistribution.TSDProcess playsRole TSDProcesses { multiplicity *; } Department playsRole department; } relation TSDProcessExecutionPeriod { teacherServiceDistribution.TSDProcess playsRole TSDProcesses { multiplicity *; } ExecutionSemester playsRole executionPeriods { multiplicity *; } } relation TSDCourseTeacherServiceDistribution { teacherServiceDistribution.TSDCourse playsRole TSDCourses { multiplicity *; } teacherServiceDistribution.TeacherServiceDistribution playsRole teacherServiceDistributions { multiplicity *; } } relation TSDCurricularCourseCurricularCourse { teacherServiceDistribution.TSDCurricularCourse playsRole TSDCurricularCourses { multiplicity *; } CurricularCourse playsRole curricularCourse; } relation TSDVirtualCourseGroupDegreeCurricularPlan { teacherServiceDistribution.TSDVirtualCourseGroup playsRole TSDVirtualCourseGroups { multiplicity *; } DegreeCurricularPlan playsRole degreeCurricularPlans { multiplicity *; } } relation TeacherServiceDistributionTeacherServiceDistribution { teacherServiceDistribution.TeacherServiceDistribution playsRole childs { multiplicity *; } teacherServiceDistribution.TeacherServiceDistribution playsRole parent; } relation TeacherServiceDistributionTSDProcessPhase { teacherServiceDistribution.TeacherServiceDistribution playsRole groupings { multiplicity *; } teacherServiceDistribution.TSDProcessPhase playsRole TSDProcessPhase; } relation TSDProcessPhaseTSDProcess { teacherServiceDistribution.TSDProcessPhase playsRole TSDProcessPhases { multiplicity *; } teacherServiceDistribution.TSDProcess playsRole TSDProcess; } relation TSDProcessPhaseTSDProcessPhase { teacherServiceDistribution.TSDProcessPhase playsRole previousTSDProcessPhase; teacherServiceDistribution.TSDProcessPhase playsRole nextTSDProcessPhase; } relation TSDTeacherProfessionalCategory { teacherServiceDistribution.TSDTeacher playsRole TSDTeachers { multiplicity *; } personnelSection.contracts.ProfessionalCategory playsRole professionalCategory; } relation TSDRealTeacherTeacher { teacherServiceDistribution.TSDRealTeacher playsRole TSDRealTeachers { multiplicity *; } Teacher playsRole teacher; } relation TSDTeacherTeacherServiceDistribution { teacherServiceDistribution.TSDTeacher playsRole TSDTeachers { multiplicity *; } teacherServiceDistribution.TeacherServiceDistribution playsRole teacherServiceDistributions { multiplicity *; } } relation InstitutionUnitDegreeDesignation { organizationalStructure.Unit playsRole institutionUnit { multiplicity *; } raides.DegreeDesignation playsRole degreeDesignation { multiplicity *; } } relation UnitCampus { space.Campus playsRole campus; organizationalStructure.Unit playsRole units { multiplicity *; } } relation UnitFilePerson { Person playsRole uploader; UnitFile playsRole uploadedFiles { multiplicity *; } } relation UnitFileTagRootDomainObject { UnitFileTag playsRole unitFileTags { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation UnitFileUnit { organizationalStructure.Unit playsRole unit; UnitFile playsRole files { multiplicity *; } } relation UnitFunction { organizationalStructure.Function playsRole functions { multiplicity *; } organizationalStructure.Unit playsRole unit; } relation UnitFunctionalityPrinters { util.FunctionalityPrinters playsRole functionalityPrinters { multiplicity *; } organizationalStructure.Unit playsRole units { multiplicity *; } } relation UnitHasSite { UnitSite playsRole site; organizationalStructure.Unit playsRole unit; } relation UnitNameUnitNamePart { organizationalStructure.UnitName playsRole unitName { multiplicity *; } organizationalStructure.UnitNamePart playsRole unitNamePart { multiplicity *; } } relation UnitUnitAcronym { organizationalStructure.Unit playsRole units { multiplicity *; } organizationalStructure.UnitAcronym playsRole unitAcronym; } relation UnitNonAffiliatedTeacher { organizationalStructure.Unit playsRole institutionUnit; NonAffiliatedTeacher playsRole associatedNonAffiliatedTeachers { multiplicity *; } } relation UnitServiceAgreementTemplate { organizationalStructure.Unit playsRole unit; accounting.serviceAgreementTemplates.UnitServiceAgreementTemplate playsRole unitServiceAgreementTemplate; } relation UnitSiteBannerHasBackgroundFile { UnitSiteBanner playsRole backgroundBanner; UnitSiteBannerFile playsRole backgroundImage; } relation UnitSiteBannerHasMainFile { UnitSiteBanner playsRole mainBanner; UnitSiteBannerFile playsRole mainImage; } relation UnitSiteFooterLinks { UnitSite playsRole footerUnitSite; UnitSiteLink playsRole footerLinks { multiplicity *; } } relation UnitSiteHasBanners { UnitSite playsRole site; UnitSiteBanner playsRole banners { multiplicity *; } } relation UnitSiteHasLogo { UnitSite playsRole unitSite; UnitSiteFile playsRole logo; } relation UnitSiteManagers { Person playsRole managers { multiplicity *; } UnitSite playsRole unitSites { multiplicity *; } } relation UnitSiteTopLinks { UnitSite playsRole topUnitSite; UnitSiteLink playsRole topLinks { multiplicity *; } } relation UnitUnitFileTag { UnitFileTag playsRole unitFileTags { multiplicity *; } organizationalStructure.Unit playsRole unit; } relation UnitUnitName { organizationalStructure.Unit playsRole unit; organizationalStructure.UnitName playsRole unitName; } relation UnitUnitSpaceOccupation { organizationalStructure.Unit playsRole unit; space.UnitSpaceOccupation playsRole unitSpaceOccupations { multiplicity *; } } relation UserIdentification { User playsRole user; Identification playsRole identifications { multiplicity *; } } relation UserLoginRequest { LoginRequest playsRole loginRequest; User playsRole user; } relation UserPerson { Person playsRole person; User playsRole user; } relation VehicleAllocationRequestor { organizationalStructure.Party playsRole requestor; resource.VehicleAllocation playsRole vehicleAllocations { multiplicity *; } } relation VehicleNewParkingDocument { parking.Vehicle playsRole vehicle; parking.NewParkingDocument playsRole newParkingDocuments { multiplicity *; } } relation VehicleParkingParty { parking.ParkingParty playsRole parkingParty; parking.Vehicle playsRole vehicles { multiplicity *; } } relation VehicleParkingRequest { parking.ParkingRequest playsRole parkingRequest; parking.Vehicle playsRole vehicles { multiplicity *; } } relation VigilantGroupBelongsToUnit { vigilancy.VigilantGroup playsRole vigilantGroups { multiplicity *; } organizationalStructure.Unit playsRole unit; } relation VigilantGroupInExecutionYear { vigilancy.VigilantGroup playsRole vigilantGroups { multiplicity *; } ExecutionYear playsRole executionYear; } relation WeeklyOcupationTeacher { teacher.WeeklyOcupation playsRole weeklyOcupation; Teacher playsRole teacher; } relation WrittenEvaluationContext { WrittenEvaluation playsRole associatedWrittenEvaluations { multiplicity *; } degreeStructure.Context playsRole associatedContexts { multiplicity *; } } relation WrittenEvaluationCurricularCourseScope { WrittenEvaluation playsRole associatedWrittenEvaluations { multiplicity *; } CurricularCourseScope playsRole associatedCurricularCourseScope { multiplicity *; } } relation WrittenEvaluationEnrolmentExam { WrittenEvaluationEnrolment playsRole writtenEvaluationEnrolments { multiplicity *; } WrittenEvaluation playsRole writtenEvaluation; } relation WrittenEvaluationEnrolmentRoom { WrittenEvaluationEnrolment playsRole writtenEvaluationEnrolments { multiplicity *; } space.AllocatableSpace playsRole room; } relation WrittenEvaluationEnrolmentStudent { WrittenEvaluationEnrolment playsRole writtenEvaluationEnrolments { multiplicity *; } student.Registration playsRole student; } relation WrittenEvaluationWrittenEvaluationSpaceOccupation { WrittenEvaluation playsRole writtenEvaluations { multiplicity *; } space.WrittenEvaluationSpaceOccupation playsRole writtenEvaluationSpaceOccupations { multiplicity *; } } relation OccupationPeriodLesson { OccupationPeriod playsRole period; Lesson playsRole lessons { multiplicity *; } } relation LessonInstanceRootDomainObject { RootDomainObject playsRole rootDomainObject; LessonInstance playsRole lessonInstances { multiplicity *; } } relation LessonInstanceLesson { Lesson playsRole lesson; LessonInstance playsRole lessonInstances { multiplicity *; } } relation LessonInstanceLessonInstanceSpaceOccupations { LessonInstance playsRole lessonInstances { multiplicity *; } space.LessonInstanceSpaceOccupation playsRole lessonInstanceSpaceOccupation; } relation SummaryLessonInstance { Summary playsRole summary; LessonInstance playsRole lessonInstance; } relation CompetenceCourseInformationChangeRequester { degreeStructure.CompetenceCourseInformationChangeRequest playsRole competenceCourseInformationChangeRequests { multiplicity *; } Person playsRole requester; } relation CompetenceCourseInformationChangeApprover { degreeStructure.CompetenceCourseInformationChangeRequest playsRole approvedCompetenceCourseInformationChangeRequests { multiplicity *; } Person playsRole analizedBy; } relation CompetenceCourseInformationChangeRequestExecutionPeriod { degreeStructure.CompetenceCourseInformationChangeRequest playsRole competenceCourseInformationChangeRequests { multiplicity *; } ExecutionSemester playsRole executionPeriod; } relation CompetenceCourseInformationChangeRequestCompetenceCourse { degreeStructure.CompetenceCourseInformationChangeRequest playsRole competenceCourseInformationChangeRequests { multiplicity *; } CompetenceCourse playsRole competenceCourse; } relation CompetenceCourseInformationChangeRequestCompetenceCourseGroupUnit { degreeStructure.CompetenceCourseInformationChangeRequest playsRole competenceCourseInformationChangeRequests { multiplicity *; } organizationalStructure.CompetenceCourseGroupUnit playsRole competenceCourseGroupUnit; } relation CompetenceCourseInformationChangeRequestRootDomainObject { RootDomainObject playsRole rootDomainObject; degreeStructure.CompetenceCourseInformationChangeRequest playsRole competenceCourseInformationChangeRequests { multiplicity *; } } relation CompetenceCourseInformationExecutionPeriod { ExecutionSemester playsRole executionPeriod; degreeStructure.CompetenceCourseInformation playsRole competenceCourseInformations { multiplicity *; } } relation CourseLoadRootDomainObject { RootDomainObject playsRole rootDomainObject; CourseLoad playsRole courseLoads { multiplicity *; } } relation CourseLoadExecutionCourse { ExecutionCourse playsRole executionCourse; CourseLoad playsRole courseLoads { multiplicity *; } } relation CourseLoadShift { Shift playsRole shifts { multiplicity *; } CourseLoad playsRole courseLoads { multiplicity *; } } relation CourseLoadLessonInstance { CourseLoad playsRole courseLoad; LessonInstance playsRole lessonInstances { multiplicity *; } } relation PersonProfessionalDataPerson { Person playsRole person; personnelSection.contracts.PersonProfessionalData playsRole personProfessionalData; } relation GiafProfessionalDataPersonCampus { space.Campus playsRole campus; personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalDatas { multiplicity *; } } relation GiafProfessionalDataPersonProfessionalData { personnelSection.contracts.PersonProfessionalData playsRole personProfessionalData; personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalDatas { multiplicity *; } } relation PersonProfessionalContractGiafProfessionalData { personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData; personnelSection.contracts.PersonProfessionalContract playsRole personProfessionalContracts { multiplicity *; } } relation PersonProfessionalContractSituationPersonProfessionalContract { personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData; personnelSection.contracts.PersonContractSituation playsRole personContractSituations { multiplicity *; } } relation PersonProfessionalCategoryGiafProfessionalData { personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData; personnelSection.contracts.PersonProfessionalCategory playsRole personProfessionalCategories { multiplicity *; } } relation PersonProfessionalRegimeGiafProfessionalData { personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData; personnelSection.contracts.PersonProfessionalRegime playsRole personProfessionalRegimes { multiplicity *; } } relation PersonProfessionalRelationGiafProfessionalData { personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData; personnelSection.contracts.PersonProfessionalRelation playsRole personProfessionalRelations { multiplicity *; } } relation PersonProfessionalExemptionGiafProfessionalData { personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData; personnelSection.contracts.PersonProfessionalExemption playsRole personProfessionalExemptions { multiplicity *; } } relation PersonFunctionsAccumulationGiafProfessionalData { personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData; personnelSection.contracts.PersonFunctionsAccumulation playsRole personFunctionsAccumulations { multiplicity *; } } relation GiafProfessionalDataContractSituation { personnelSection.contracts.ContractSituation playsRole contractSituation; personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData { multiplicity *; } } relation GiafProfessionalDataProfessionalRelation { personnelSection.contracts.ProfessionalRelation playsRole professionalRelation; personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData { multiplicity *; } } relation GiafProfessionalDataProfessionalContractType { personnelSection.contracts.ProfessionalContractType playsRole professionalContractType; personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData { multiplicity *; } } relation GiafProfessionalDataProfessionalCategory { personnelSection.contracts.ProfessionalCategory playsRole professionalCategory; personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData { multiplicity *; } } relation GiafProfessionalDataProfessionalRegime { personnelSection.contracts.ProfessionalRegime playsRole professionalRegime; personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData { multiplicity *; } } relation ContractSituationPersonProfessionalContract { personnelSection.contracts.ContractSituation playsRole contractSituation; personnelSection.contracts.PersonProfessionalContract playsRole personProfessionalContracts { multiplicity *; } } relation ContractSituationPersonContractSituation { personnelSection.contracts.ContractSituation playsRole contractSituation; personnelSection.contracts.PersonContractSituation playsRole personContractSituations { multiplicity *; } } relation ProfessionalCategoryPersonContractSituation { personnelSection.contracts.ProfessionalCategory playsRole professionalCategory; personnelSection.contracts.PersonContractSituation playsRole personContractSituations { multiplicity *; } } relation ProfessionalCategoryPersonProfessionalCategory { personnelSection.contracts.ProfessionalCategory playsRole professionalCategory; personnelSection.contracts.PersonProfessionalCategory playsRole personProfessionalCategories { multiplicity *; } } relation ProfessionalRegimePersonProfessionalCategory { personnelSection.contracts.ProfessionalRegime playsRole professionalRegime; personnelSection.contracts.PersonProfessionalCategory playsRole personProfessionalCategories { multiplicity *; } } relation ProfessionalRelationPersonProfessionalCategory { personnelSection.contracts.ProfessionalRelation playsRole professionalRelation; personnelSection.contracts.PersonProfessionalCategory playsRole personProfessionalCategories { multiplicity *; } } relation ProfessionalRegimePersonProfessionalRegime { personnelSection.contracts.ProfessionalRegime playsRole professionalRegime; personnelSection.contracts.PersonProfessionalRegime playsRole personProfessionalRegimes { multiplicity *; } } relation ProfessionalRelationPersonProfessionalRelation { personnelSection.contracts.ProfessionalRelation playsRole professionalRelation; personnelSection.contracts.PersonProfessionalRelation playsRole personProfessionalRelations { multiplicity *; } } relation ProfessionalCategoryPersonProfessionalRelation { personnelSection.contracts.ProfessionalCategory playsRole professionalCategory; personnelSection.contracts.PersonProfessionalRelation playsRole personProfessionalRelations { multiplicity *; } } relation FunctionsAccumulationPersonFunctionsAccumulation { personnelSection.contracts.FunctionsAccumulation playsRole functionsAccumulation; personnelSection.contracts.PersonFunctionsAccumulation playsRole personFunctionsAccumulations { multiplicity *; } } relation PersonFunctionsAccumulationProfessionalRegime { personnelSection.contracts.ProfessionalRegime playsRole professionalRegime; personnelSection.contracts.PersonFunctionsAccumulation playsRole personFunctionsAccumulations { multiplicity *; } } relation ServiceExemptionPersonServiceExemption { personnelSection.contracts.ServiceExemption playsRole serviceExemption; personnelSection.contracts.PersonServiceExemption playsRole personServiceExemptions { multiplicity *; } } relation GrantOwnerEquivalentPersonGrantOwnerEquivalent { personnelSection.contracts.GrantOwnerEquivalent playsRole grantOwnerEquivalent; personnelSection.contracts.PersonGrantOwnerEquivalent playsRole personGrantOwnerEquivalences { multiplicity *; } } relation AbsencePersonAbsence { personnelSection.contracts.Absence playsRole absence; personnelSection.contracts.PersonAbsence playsRole personAbsences { multiplicity *; } } relation PersonGrantOwnerEquivalentCountry { personnelSection.contracts.PersonGrantOwnerEquivalent playsRole personGrantOwnerEquivalences { multiplicity *; } Country playsRole country; } relation LibraryCardRootDomainObject { RootDomainObject playsRole rootDomainObject; library.LibraryCard playsRole libraryCards{ multiplicity *; } } relation LibraryCardPerson { Person playsRole person { multiplicity 1..1; } library.LibraryCard playsRole libraryCard; } relation DelegateElectionDegree { elections.DelegateElection playsRole delegateElections { multiplicity *; } Degree playsRole degree; } relation DelegateElectionCandidatesStudent { elections.DelegateElection playsRole electionsWithStudentCandidacies { multiplicity *; } student.Student playsRole candidates { multiplicity *; } } relation DelegateElectionStudent { elections.DelegateElection playsRole delegateElections { multiplicity *; } student.Student playsRole students { multiplicity *; } } relation DelegateElectionVotingPeriodVotingStudent { elections.DelegateElectionVotingPeriod playsRole electionsWithVotingStudents { multiplicity *; } student.Student playsRole votingStudents { multiplicity *; } } relation DelegateElectionVotingPeriodStudentForNewRoundElections { elections.DelegateElectionVotingPeriod playsRole votingPeriodForNewRoundElections { multiplicity *; } student.Student playsRole candidatesForNewRoundElections { multiplicity *; } } relation DelegateElectionExecutionYear { elections.DelegateElection playsRole delegateElections { multiplicity *; } ExecutionYear playsRole executionYear; } relation YearDelegateElectionCurricularYear { elections.YearDelegateElection playsRole yearDelegateElections { multiplicity *; } CurricularYear playsRole curricularYear; } relation StudentDelegateElectionVote { student.Student playsRole student; elections.DelegateElectionVote playsRole votes { multiplicity *; } } relation DelegateElectionDelegateElectionCandidacyPeriod { elections.DelegateElection playsRole delegateElection; elections.DelegateElectionCandidacyPeriod playsRole candidacyPeriod; } relation DelegateElectionDelegateElectionVotingPeriod { elections.DelegateElection playsRole delegateElection; elections.DelegateElectionVotingPeriod playsRole votingPeriod { multiplicity *; } } relation DelegateElectionVotingPeriodDelegateElectionVote { elections.DelegateElectionVotingPeriod playsRole delegateElection; elections.DelegateElectionVote playsRole votes { multiplicity *; } } relation StudentDelegateElection { student.Student playsRole electedStudent; elections.DelegateElection playsRole electedElections { multiplicity *; } } relation PersonFunctionCurricularYear { CurricularYear playsRole curricularYear; organizationalStructure.PersonFunction playsRole personFunctions { multiplicity *; } } relation PersonFunctionSharedExecutionInterval { ExecutionInterval playsRole executionInterval; organizationalStructure.PersonFunction playsRole personFunction { multiplicity *; } } relation RootDomainObjectDelegateElection { RootDomainObject playsRole rootDomainObject; elections.DelegateElection playsRole delegateElections { multiplicity *; } } relation RootDomainObjectDelegateElectionVote { RootDomainObject playsRole rootDomainObject; elections.DelegateElectionVote playsRole votes { multiplicity *; } } relation RootDomainObjectDelegateElectionPeriod { RootDomainObject playsRole rootDomainObject; elections.DelegateElectionPeriod playsRole delegateElectionsPeriods { multiplicity *; } } relation RootDomainObjectCardGenerationBatch { RootDomainObject playsRole rootDomainObject; cardGeneration.CardGenerationBatch playsRole cardGenerationBatches { multiplicity *; } } relation RootDomainObjectCardGenerationEntry { RootDomainObject playsRole rootDomainObject; cardGeneration.CardGenerationEntry playsRole cardGenerationEntries { multiplicity *; } } relation RootDomainObjectCardGenerationRegister { RootDomainObject playsRole rootDomainObject; cardGeneration.CardGenerationRegister playsRole cardGenerationRegister { multiplicity *; } } relation RootDomainObjectCardGenerationProblem { RootDomainObject playsRole rootDomainObject; cardGeneration.CardGenerationProblem playsRole cardGenerationProblem { multiplicity *; } } relation ExecutionYearCardGenerationBatch { ExecutionYear playsRole executionYear; cardGeneration.CardGenerationBatch playsRole cardGenerationBatches { multiplicity *; } } relation CardGenerationBatchCardGenerationEntry { cardGeneration.CardGenerationBatch playsRole cardGenerationBatch; cardGeneration.CardGenerationEntry playsRole cardGenerationEntries { multiplicity *; } } relation CardGenerationBatchCardGenerationProblem { cardGeneration.CardGenerationBatch playsRole cardGenerationBatch; cardGeneration.CardGenerationProblem playsRole cardGenerationProblems { multiplicity *; } } relation PersonCardGenerationEntry { Person playsRole person; cardGeneration.CardGenerationEntry playsRole cardGenerationEntries { multiplicity *; } } relation PersonCardGenerationRegister { Person playsRole person; cardGeneration.CardGenerationRegister playsRole cardGenerationRegister { multiplicity *; } } relation RootDomainObjectSantanderBatch { RootDomainObject playsRole rootDomainObject; cardGeneration.SantanderBatch playsRole santanderBatches { multiplicity *; } } relation RootDomainObjectSantanderBatchRequester { RootDomainObject playsRole rootDomainObject; cardGeneration.SantanderBatchRequester playsRole santanderBatchRequesters { multiplicity *; } } relation RootDomainObjectSantanderBatchSender { RootDomainObject playsRole rootDomainObject; cardGeneration.SantanderBatchSender playsRole santanderBatchSenders { multiplicity *; } } relation RootDomainObjectSantanderSequenceNumberGenerator { RootDomainObject playsRole rootDomainObject; cardGeneration.SantanderSequenceNumberGenerator playsRole santanderSequenceNumberGenerators { multiplicity *; } } relation RootDomainObjectSantanderEntry { RootDomainObject playsRole rootDomainObject; cardGeneration.SantanderEntry playsRole santanderEntries { multiplicity *; } } relation RootDomainObjectSantanderProblem { RootDomainObject playsRole rootDomainObject; cardGeneration.SantanderProblem playsRole santanderProblem { multiplicity *; } } relation ExecutionYearSantanderBatch { ExecutionYear playsRole executionYear; cardGeneration.SantanderBatch playsRole santanderBatches { multiplicity *; } } relation SantanderBatchSantanderEntry { cardGeneration.SantanderBatch playsRole santanderBatch; cardGeneration.SantanderEntry playsRole santanderEntries { multiplicity *; } } relation SantanderBatchSantanderSequenceNumberGenerator { cardGeneration.SantanderBatch playsRole santanderBatches { multiplicity *; } cardGeneration.SantanderSequenceNumberGenerator playsRole santanderSequenceNumberGenerator; } relation SantanderBatchSantanderBatchRequester { cardGeneration.SantanderBatch playsRole santanderBatch; cardGeneration.SantanderBatchRequester playsRole santanderBatchRequester; } relation SantanderBatchSantanderBatchSender { cardGeneration.SantanderBatch playsRole santanderBatch; cardGeneration.SantanderBatchSender playsRole santanderBatchSender; } relation SantanderBatchSantanderProblem { cardGeneration.SantanderBatch playsRole santanderBatch; cardGeneration.SantanderProblem playsRole santanderProblems { multiplicity *; } } relation PersonSantanderBatchRequester { Person playsRole person; cardGeneration.SantanderBatchRequester playsRole santanderBatchRequesters { multiplicity *; } } relation PersonSantanderBatchSender { Person playsRole person; cardGeneration.SantanderBatchSender playsRole santanderBatchSenders { multiplicity *; } } relation PersonSantanderEntry { Person playsRole person; cardGeneration.SantanderEntry playsRole santanderEntries { multiplicity *; } } relation MetaDomainObjectRootDomainObject { RootDomainObject playsRole rootDomainObject; MetaDomainObject playsRole metaDomainObjects { multiplicity *; } } relation ContentHasCreator { Person playsRole creator; contents.Content playsRole createdContents { multiplicity *; } } relation ContentHasAvailabilityPolicy { contents.Content playsRole content; functionalities.AvailabilityPolicy playsRole availabilityPolicy; } relation ContentRootDomainObject { RootDomainObject playsRole rootDomainObject; contents.Content playsRole contents { multiplicity *; } } relation FunctionalityFunctionalityCall { functionalities.Functionality playsRole functionality; contents.FunctionalityCall playsRole functionalityCalls { multiplicity *; } } relation ContainerNode { contents.Container playsRole parent; contents.Node playsRole children { multiplicity *; } } relation ContentNode { contents.Content playsRole child; contents.Node playsRole parents { multiplicity *; } } relation NodeRootDomainObject { RootDomainObject playsRole rootDomainObject; contents.Node playsRole nodes { multiplicity *; } } relation FunctionalityExecutionPath { functionalities.Functionality playsRole functionality; functionalities.ExecutionPath playsRole executionPathValue; } relation FunctionalityHasParameters { functionalities.Functionality playsRole functionality; functionalities.FunctionalityParameter playsRole parameters { multiplicity *; } } relation FunctionalityParameterType { MetaDomainObject playsRole type; functionalities.FunctionalityParameter playsRole functionalityParameters { multiplicity *; } } relation RootModule { RootDomainObject playsRole moduleRootDomainObject; functionalities.Module playsRole rootModule; } relation RootPortal { RootDomainObject playsRole portalRootDomainObject; contents.Portal playsRole rootPortal; } relation ContainerPointsContent { contents.Container playsRole initialContainer { multiplicity *; } contents.Content playsRole initialContent; } relation RootDomainObjectFunctionalityParameter { RootDomainObject playsRole rootDomainObject; functionalities.FunctionalityParameter playsRole functionalityParameters { multiplicity *; } } relation MetaDomainObjectPortalMetaDomainObject { contents.MetaDomainObjectPortal playsRole portals { multiplicity *; } MetaDomainObject playsRole metaDomainObject; } relation ExecutionPathRootDomainObject { RootDomainObject playsRole rootDomainObject; functionalities.ExecutionPath playsRole executionPaths { multiplicity *; } } relation PortalPool { contents.MetaDomainObjectPortal playsRole portal; contents.Content playsRole pool { multiplicity *; } } relation PersonCardGenerationProblem { Person playsRole person; cardGeneration.CardGenerationProblem playsRole cardGenerationProblems { multiplicity *; } } relation DeployNotifierRootDomainObject { RootDomainObject playsRole rootDomainObject; DeployNotifier playsRole deployNotifier; } relation RequestLogDayRequestLog { log.requests.RequestLogDay playsRole day; log.requests.RequestLog playsRole logs { multiplicity *; } } relation RequestLogMonthRequestLogDay { log.requests.RequestLogMonth playsRole month; log.requests.RequestLogDay playsRole days { multiplicity *; } } relation RequestLogYearRequestLogDay { log.requests.RequestLogYear playsRole year; log.requests.RequestLogMonth playsRole months { multiplicity *; } } relation RequestLogDayRootDomainObject { RootDomainObject playsRole rootDomainObject; log.requests.RequestLogDay playsRole requestLogDays { multiplicity *; } } relation MostRecentRequestLogDay { RootDomainObject playsRole rootDomainObjectRequestLogDay; log.requests.RequestLogDay playsRole mostRecentRequestLogDay; } relation RequestLogDayRequestLogDay { log.requests.RequestLogDay playsRole next; log.requests.RequestLogDay playsRole previous; } relation RequestLogMonthRootDomainObject { RootDomainObject playsRole rootDomainObject; log.requests.RequestLogMonth playsRole requestLogMonths { multiplicity *; } } relation RequestLogYearRootDomainObject { RootDomainObject playsRole rootDomainObject; log.requests.RequestLogYear playsRole requestLogYears { multiplicity *; } } relation RequestMappingRequestLog { log.requests.RequestMapping playsRole mapping; log.requests.RequestLog playsRole logs { multiplicity *; } } relation RequestLogErrorLog { log.requests.RequestLog playsRole requestLogs { multiplicity *; } log.requests.ErrorLog playsRole errorLog; } relation ErrorLogExceptionType { log.requests.ErrorLog playsRole errorLogs { multiplicity *; } log.requests.ExceptionType playsRole exception; } relation RequestMappingRootDomainObject { RootDomainObject playsRole rootDomainObject; log.requests.RequestMapping playsRole requestMappings { multiplicity *; } } relation ErrorLogRootDomainObject { RootDomainObject playsRole rootDomainObject; log.requests.ErrorLog playsRole errorLogs { multiplicity *; } } relation RequestLogRootDomainObject { RootDomainObject playsRole rootDomainObject; log.requests.RequestLog playsRole requestLogs { multiplicity *; } } relation ExceptionTypeRootDomainObject { RootDomainObject playsRole rootDomainObject; log.requests.ExceptionType playsRole exceptionTypes { multiplicity *; } } relation ProcessRootDomainObject { RootDomainObject playsRole rootDomainObject; caseHandling.Process playsRole processes { multiplicity *; } } relation ProcessLogRootDomainObject { RootDomainObject playsRole rootDomainObject; caseHandling.ProcessLog playsRole processesLogs { multiplicity *; } } relation ProcessProcessLog { caseHandling.Process playsRole process; caseHandling.ProcessLog playsRole processLogs { multiplicity *; } } relation CandidacyPeriodRootDomainObject { RootDomainObject playsRole rootDomainObject; period.CandidacyPeriod playsRole candidacyPeriods { multiplicity *; } } relation CandidacyPeriodExecutionInterval { ExecutionInterval playsRole executionInterval; period.CandidacyPeriod playsRole candidacyPeriods { multiplicity *; } } relation CandidacyPeriodCandidacyProcess { period.CandidacyProcessCandidacyPeriod playsRole candidacyPeriod; candidacyProcess.CandidacyProcess playsRole candidacyProcesses { multiplicity *; } } relation IndividualCandidacyRootDomainObject { RootDomainObject playsRole rootDomainObject; candidacyProcess.IndividualCandidacy playsRole individualCandidacies { multiplicity *; } } relation IndividualCandidacyCandidacyPersonalDetails { candidacyProcess.IndividualCandidacy playsRole candidacy; candidacyProcess.IndividualCandidacyPersonalDetails playsRole personalDetails; } relation IndividualCandidacyPerson { Person playsRole person; candidacyProcess.IndividualCandidacyPersonalDetails playsRole individualCandidacies { multiplicity *; } } relation IndividualCandidacyRegistration { student.Registration playsRole registration; candidacyProcess.IndividualCandidacy playsRole individualCandidacy; } relation IndividualCandidacyGrantOwnerProvider { candidacyProcess.IndividualCandidacy playsRole candidacies { multiplicity *; } organizationalStructure.Unit playsRole grantOwnerProvider; } relation IndividualCandidacyCountryOfResidence { Country playsRole countryOfResidence; candidacyProcess.IndividualCandidacy playsRole associatedResidentIndividualCandidacies { multiplicity *; } } relation IndividualCandidacyDistrictSubdivisionOfResidence { DistrictSubdivision playsRole districtSubdivisionOfResidence; candidacyProcess.IndividualCandidacy playsRole individualCandidacies { multiplicity *; } } relation IndividualCandidacySchoolTimeDistrictSubdivisionOfResidence { DistrictSubdivision playsRole schoolTimeDistrictSubDivisionOfResidence; candidacyProcess.IndividualCandidacy playsRole schoolTimeIndividualCandidacies { multiplicity *; } } relation CandidacyEventIndividualCandidacy { accounting.events.candidacy.IndividualCandidacyEvent playsRole event; candidacyProcess.IndividualCandidacy playsRole individualCandidacy; } relation CandidacyProcessIndividualCandidacyProcess { candidacyProcess.CandidacyProcess playsRole candidacyProcess; candidacyProcess.IndividualCandidacyProcess playsRole childProcesses { multiplicity *; } } relation IndividualCandidacyProcessIndividualCandidacy { candidacyProcess.IndividualCandidacyProcess playsRole candidacyProcess; candidacyProcess.IndividualCandidacy playsRole candidacy; } relation Over23IndividualCandidacyDegreeEntryRootDomainObject { RootDomainObject playsRole rootDomainObject; candidacyProcess.over23.Over23IndividualCandidacyDegreeEntry playsRole over23IndividualCandidacyDegreeEntries { multiplicity *; } } relation DegreeOver23IndividualCandidacyDegreeEntry { Degree playsRole degree; candidacyProcess.over23.Over23IndividualCandidacyDegreeEntry playsRole over23IndividualCandidacyDegreeEntries { multiplicity *; } } relation Over23IndividualCandidacyOver23IndividualCandidacyDegreeEntry { candidacyProcess.over23.Over23IndividualCandidacy playsRole over23IndividualCandidacy; candidacyProcess.over23.Over23IndividualCandidacyDegreeEntry playsRole over23IndividualCandidacyDegreeEntries { multiplicity *; } } relation Over23IndividualCandidacyAcceptedDegree { Degree playsRole acceptedDegree; candidacyProcess.over23.Over23IndividualCandidacy playsRole acceptedOver23IndividualCandidacies { multiplicity *; } } /* This relation is temporary */ relation SecondCycleIndividualCandidacySelectedDegree { Degree playsRole selectedDegree; candidacyProcess.secondCycle.SecondCycleIndividualCandidacy playsRole selectedSecondCycleIndividualCandidacies { multiplicity *; } } relation SecondCycleIndividualCandidacySelectedDegrees { candidacyProcess.secondCycle.SecondCycleIndividualCandidacy playsRole selectionSecondCycleIndividualCandidacies { multiplicity *; } Degree playsRole selectedDegrees { multiplicity *; } } relation DegreeCandidacyForGraduatedPersonSelectedDegree { Degree playsRole selectedDegree; candidacyProcess.graduatedPerson.DegreeCandidacyForGraduatedPerson playsRole selectedDegreeCandidacyForGraduatedPersonCandidacies { multiplicity *; } } relation DegreeChangeIndividualCandidacySelectedDegree { Degree playsRole selectedDegree; candidacyProcess.degreeChange.DegreeChangeIndividualCandidacy playsRole selectedDegreeChangeIndividualCandidacies { multiplicity *; } } relation DegreeTransferIndividualCandidacySelectedDegree { Degree playsRole selectedDegree; candidacyProcess.degreeTransfer.DegreeTransferIndividualCandidacy playsRole selectedDegreeTransferIndividualCandidacies { multiplicity *; } } relation StandaloneIndividualCandidacyCurricularCourses { CurricularCourse playsRole curricularCourses { multiplicity *; } candidacyProcess.standalone.StandaloneIndividualCandidacy playsRole standaloneIndividualCandidacies { multiplicity *; } } relation MobilityIndividualApplicationMobilityStudentData { candidacyProcess.mobility.MobilityIndividualApplication playsRole mobilityIndividualApplication; candidacyProcess.mobility.MobilityStudentData playsRole mobilityStudentData; } relation MobilityIndividualApplicationCurricularCourses { CurricularCourse playsRole curricularCourses { multiplicity *; } candidacyProcess.mobility.MobilityIndividualApplication playsRole selectedMobilityIndividualApplication { multiplicity *; } } relation CandidacyPrecedentDegreeInformationRootDomainObject { RootDomainObject playsRole rootDomainObject; candidacyProcess.CandidacyPrecedentDegreeInformation playsRole candidacyPrecedentDegreeInformations { multiplicity *; } } relation CandidacyPrecedentDegreeInformationCountry { Country playsRole country; candidacyProcess.CandidacyPrecedentDegreeInformation playsRole candidacyPrecedentDegreeInformations { multiplicity *; } } relation InstitutionPrecedentDegreeInformationStudentCurricularPlan { StudentCurricularPlan playsRole studentCurricularPlan; candidacyProcess.InstitutionPrecedentDegreeInformation playsRole candidacyPrecedentDegreeInformations { multiplicity *; } } relation ExternalSourceDegreeInformationStudentCurricularPlan { organizationalStructure.Unit playsRole sourceInstitution; candidacyProcess.ExternalPrecedentDegreeInformation playsRole destinationExternalPrecedentDegreeInformations { multiplicity *; } } relation ExternalPrecedentDegreeInformationStudentCurricularPlan { organizationalStructure.Unit playsRole institution; candidacyProcess.ExternalPrecedentDegreeInformation playsRole candidacyPrecedentDegreeInformations { multiplicity *; } } relation IndividualCandidacyCandidacyPrecedentDegreeInformation { candidacyProcess.IndividualCandidacy playsRole candidacy; candidacyProcess.CandidacyPrecedentDegreeInformation playsRole precedentDegreeInformation; } relation IndividualCandidacyPrecedentDegreeInformation { candidacyProcess.IndividualCandidacy playsRole individualCandidacy; student.PrecedentDegreeInformation playsRole refactoredPrecedentDegreeInformation; } relation DegreeContextRootDomainObject { RootDomainObject playsRole rootDomainObject; DegreeContext playsRole degreeContexts { multiplicity *; } } relation DegreeContextDegreeCurricularPlan { DegreeCurricularPlan playsRole degreeCurricularPlan; DegreeContext playsRole degreeContexts { multiplicity *; } } relation ResidenceYearResidenceMonth { residence.ResidenceYear playsRole year; residence.ResidenceMonth playsRole months { multiplicity *; } } relation ResidenceMonthResidenceEvent { residence.ResidenceMonth playsRole residenceMonth; accounting.ResidenceEvent playsRole events { multiplicity *; } } relation ResidenceYearRootDomainObject { RootDomainObject playsRole rootDomainObject; residence.ResidenceYear playsRole residenceYears { multiplicity *; } } relation ResidenceMonthRootDomainObject { RootDomainObject playsRole rootDomainObject; residence.ResidenceMonth playsRole residenceMonths0 { multiplicity *; } } relation ResidenceManagementUnitResidenceEvent { organizationalStructure.ResidenceManagementUnit playsRole unit; residence.ResidenceYear playsRole residenceYears { multiplicity *; } } relation RootDomainObjectSupportRequest { RootDomainObject playsRole rootDomainObject; support.SupportRequest playsRole supportRequests { multiplicity *; } } relation SupportRequestPerson { Person playsRole requester; support.SupportRequest playsRole supportRequests { multiplicity *; } } relation SupportRequestContent { contents.Content playsRole requestContext; support.SupportRequest playsRole supportRequests { multiplicity *; } } relation SupportExceptionErrorLog { support.SupportException playsRole supportExceptions { multiplicity *; } log.requests.ErrorLog playsRole errorLog; } relation AlumniStudent { Alumni playsRole alumni; student.Student playsRole student { multiplicity 1..1; } } relation AlumniIdentityCheckRequestAlumni { Alumni playsRole alumni; AlumniIdentityCheckRequest playsRole identityRequests { multiplicity *; } } relation AlumniIdentityCheckRequestPerson { Person playsRole operator; AlumniIdentityCheckRequest playsRole identityRequests { multiplicity *; } } relation RootDomainObjectAlumni { RootDomainObject playsRole rootDomainObject; Alumni playsRole alumnis { multiplicity *; } } relation RootDomainObjectAlumniIdentityCheckRequest { RootDomainObject playsRole rootDomainObject; AlumniIdentityCheckRequest playsRole alumniIdentityRequest { multiplicity *; } } relation RootDomainObjectJob { RootDomainObject playsRole rootDomainObject; Job playsRole jobs { multiplicity *; } } relation JobPerson { Person playsRole person; Job playsRole jobs { multiplicity *; } } relation JobCreatorPerson { Person playsRole creator; Job playsRole createJobs { multiplicity *; } } relation JobCountry { Country playsRole country; Job playsRole jobs { multiplicity *; } } relation JobBusinessArea { BusinessArea playsRole businessArea; Job playsRole jobs { multiplicity *; } } relation JobParentBusinessArea { BusinessArea playsRole parentBusinessArea; Job playsRole parentJobs { multiplicity *; } } relation BusinessAreaBusinessArea { BusinessArea playsRole parentArea; BusinessArea playsRole childAreas { multiplicity *; } } relation RootDomainObjectBusinessArea { RootDomainObject playsRole rootDomainObject; BusinessArea playsRole businessAreas { multiplicity *; } } relation EducationAreaEducationArea { EducationArea playsRole parentArea; EducationArea playsRole childAreas { multiplicity *; } } relation RootDomainObjectEducationArea { RootDomainObject playsRole rootDomainObject; EducationArea playsRole educationAreas { multiplicity *; } } relation FormationEducationArea { Formation playsRole associatedFormations { multiplicity *; } EducationArea playsRole educationArea; } relation FormationUnit { Formation playsRole associatedFormations { multiplicity *; } organizationalStructure.Unit playsRole institution; } relation BaseFormationUnit { Formation playsRole associatedBaseFormations { multiplicity *; } organizationalStructure.Unit playsRole baseInstitution; } relation FormationCountryUnit { Formation playsRole associatedCountryUnitFormations { multiplicity *; } organizationalStructure.CountryUnit playsRole countryUnit; } relation ResidencePriceTableRootDomainObject { RootDomainObject playsRole rootDomainObject; residence.ResidencePriceTable playsRole residencePriceTables { multiplicity *; } } relation ResidencePriceTableResidenceManagementUnit { organizationalStructure.ResidenceManagementUnit playsRole units { multiplicity *; } residence.ResidencePriceTable playsRole residencePriceTable; } relation StudentCandidacyCountryOfResidence { candidacy.StudentCandidacy playsRole associatedResidentPersonsCandidacies { multiplicity *; } Country playsRole countryOfResidence; } relation StudentCandidacyGrantOwnerProvider { candidacy.StudentCandidacy playsRole studentCandidacies { multiplicity *; } organizationalStructure.Unit playsRole grantOwnerProvider; } relation StudentCandidacyDistrictSubdivisionOfResidence { candidacy.StudentCandidacy playsRole studentCandidacies { multiplicity *; } DistrictSubdivision playsRole districtSubdivisionOfResidence; } relation StudentCandidacySchoolTimeDistrictSubdivisionOfResidence { candidacy.StudentCandidacy playsRole schoolTimeStudentCandidacies { multiplicity *; } DistrictSubdivision playsRole schoolTimeDistrictSubDivisionOfResidence; } relation RootDomainObjectResidenceManagementUnitHack { organizationalStructure.ResidenceManagementUnit playsRole residenceManagementUnit; RootDomainObject playsRole rootDomainObjectForResidenceUnit; } relation RootDomainObjectUtilEmailMessage { RootDomainObject playsRole rootDomainObject; util.email.Message playsRole utilEmailMessages { multiplicity *; } } relation RootDomainObjectUtilEmailMessageId { RootDomainObject playsRole rootDomainObject; util.email.MessageId playsRole utilEmailMessageIds { multiplicity *; } } relation RootDomainObjectUtilEmailRecipient { RootDomainObject playsRole rootDomainObject; util.email.Recipient playsRole utilEmailRecipients { multiplicity *; } } relation RootDomainObjectUtilEmailSender { RootDomainObject playsRole rootDomainObject; util.email.Sender playsRole utilEmailSenders { multiplicity *; } } relation RootDomainObjectSystemSender { RootDomainObject playsRole systemRootDomainObject; util.email.SystemSender playsRole systemSender; } relation UtilEmailSenderUtilEmailMessage { util.email.Sender playsRole sender; util.email.Message playsRole messages { multiplicity *; } } relation UtilEmailMessageIdUtilEmailMessage { util.email.Message playsRole message; util.email.MessageId playsRole messageIds { multiplicity *; } } relation UtilEmailUtilEmailMessage { util.Email playsRole emails { multiplicity *; } util.email.Message playsRole message; } relation UtilEmailMessageUtilEmailRecipientTos { util.email.Message playsRole messagesTos { multiplicity *; } util.email.Recipient playsRole tos { multiplicity *; } } relation UtilEmailMessageUtilEmailRecipientCcs { util.email.Message playsRole messagesCcs { multiplicity *; } util.email.Recipient playsRole ccs { multiplicity *; } } relation UtilEmailMessageUtilEmailRecipient { util.email.Message playsRole messages { multiplicity *; } util.email.Recipient playsRole recipients { multiplicity *; } } relation RootDomainObjectUtilEmailReplyTo { RootDomainObject playsRole rootDomainObject; util.email.ReplyTo playsRole replyTos { multiplicity *; } } relation UtilEmailSenderUtilEmailReplyTo { util.email.Sender playsRole sender; util.email.ReplyTo playsRole replyTos { multiplicity *; } } relation UtilEmailReplyToUtilEmailMessage { util.email.ReplyTo playsRole replyTos { multiplicity *; } util.email.Message playsRole messages { multiplicity *; } } relation PersonUtilEmailMessage { Person playsRole person; util.email.Message playsRole messages { multiplicity *; } } relation UtilEmailSenderUtilEmailRecipient { util.email.Sender playsRole senders { multiplicity *; } util.email.Recipient playsRole recipients { multiplicity *; } } relation PersonUtilEmailReplyTo { Person playsRole person; util.email.PersonReplyTo playsRole replyTo; } relation RootDomainObjectPendingUtilEmailMessage { RootDomainObject playsRole rootDomainObjectFromPendingRelation; util.email.Message playsRole pendingUtilEmailMessages { multiplicity *; } } relation RootDomainObjectTeachingInquiry { RootDomainObject playsRole rootDomainObject; oldInquiries.teacher.TeachingInquiry playsRole teachingInquiries { multiplicity *; } } relation TeachingInquiryProfessorship { oldInquiries.teacher.TeachingInquiry playsRole teachingInquiry; Professorship playsRole professorship; } relation RootDomainObjectStudentInquiriesTeachingResult { RootDomainObject playsRole rootDomainObject; oldInquiries.StudentInquiriesTeachingResult playsRole studentInquiriesTeachingResults { multiplicity *; } } relation ProfessorshipStudentInquiriesTeachingResult { Professorship playsRole professorship; oldInquiries.StudentInquiriesTeachingResult playsRole studentInquiriesTeachingResults { multiplicity *; } } relation ExecutionDegreeStudentInquiriesTeachingResult { ExecutionDegree playsRole executionDegree; oldInquiries.StudentInquiriesTeachingResult playsRole studentInquiriesTeachingResults { multiplicity *; } } relation RootDomainObjectStudentInquiriesCourseResult { RootDomainObject playsRole rootDomainObject; oldInquiries.StudentInquiriesCourseResult playsRole studentInquiriesCourseResults { multiplicity *; } } relation ExecutionCourseStudentInquiriesCourseResult { ExecutionCourse playsRole executionCourse; oldInquiries.StudentInquiriesCourseResult playsRole studentInquiriesCourseResults { multiplicity *; } } relation ExecutionDegreeStudentInquiriesCourseResult { ExecutionDegree playsRole executionDegree; oldInquiries.StudentInquiriesCourseResult playsRole studentInquiriesCourseResults { multiplicity *; } } relation PartialRegimeInstallmentExecutionSemester { accounting.installments.PartialRegimeInstallment playsRole partialRegimeInstallments { multiplicity *; } ExecutionSemester playsRole executionSemesters { multiplicity *; } } relation RootDomainObjectUnitCostCenterCode { RootDomainObject playsRole rootDomainObject; organizationalStructure.UnitCostCenterCode playsRole unitCostCenterCodes { multiplicity *; } } relation UnitUnitCostCenterCode { organizationalStructure.Unit playsRole unit; organizationalStructure.UnitCostCenterCode playsRole unitCostCenterCode; } relation UnitUnitBasedSender { organizationalStructure.Unit playsRole unit; util.email.UnitBasedSender playsRole unitBasedSender { multiplicity *; } } relation RootDomainObjectInternshipCandidacySession { RootDomainObject playsRole rootDomainObject; internship.InternshipCandidacySession playsRole internshipCandidacySession { multiplicity *; } } relation RootDomainObjectInternshipCandidacy { RootDomainObject playsRole rootDomainObject; internship.InternshipCandidacy playsRole internshipCandidacy { multiplicity *; } } relation InternshipCandidacySessionUniversities { internship.InternshipCandidacySession playsRole internshipCandidacySession { multiplicity *; } organizationalStructure.AcademicalInstitutionUnit playsRole university { multiplicity *; } } relation InternshipCandidacySessionDestinations { internship.InternshipCandidacySession playsRole internshipCandidacySession { multiplicity *; } Country playsRole destination { multiplicity *; } } relation InternshipCandidacyInternshipSession { internship.InternshipCandidacy playsRole internshipCandidacy { multiplicity *; } internship.InternshipCandidacySession playsRole internshipCandidacySession { multiplicity 1..1; } } relation InternshipCandidateCountryOfBirth { internship.InternshipCandidacy playsRole internshipCandidacy { multiplicity *; } Country playsRole countryOfBirth; } relation InternshipCandidateFirstDestination { internship.InternshipCandidacy playsRole firstInternshipDestination { multiplicity *; } Country playsRole firstDestination; } relation InternshipCandidateSecondDestination { internship.InternshipCandidacy playsRole secondInternshipDestination { multiplicity *; } Country playsRole secondDestination; } relation InternshipCandidateThirdDestination { internship.InternshipCandidacy playsRole thirdInternshipDestination { multiplicity *; } Country playsRole thirdDestination; } relation InternshipCandidateAcademicInstitution { internship.InternshipCandidacy playsRole internshipCandidacy { multiplicity *; } organizationalStructure.AcademicalInstitutionUnit playsRole university { multiplicity 1..1; } } relation QueueJobPerson { Person playsRole person; QueueJob playsRole job { multiplicity *; } } relation QueueJobUndoneRootDomainObject { QueueJob playsRole queueJobUndone { multiplicity *; } RootDomainObject playsRole rootDomainObjectQueueUndone; } relation QueueJobRootDomainObject { QueueJob playsRole queueJob { multiplicity *; } RootDomainObject playsRole rootDomainObject; } relation ExecutionYearGepReportFile { ExecutionYear playsRole executionYear; reports.GepReportFile playsRole gepReportFile{ multiplicity *; } } relation ExecutionYearPublicRelationsStudentListQueueJob{ ExecutionYear playsRole executionYear; PublicRelationsStudentListQueueJob playsRole publicRelationsStudentListQueueJob{ multiplicity *; } } relation DelegatePersonFunction { student.Delegate playsRole delegate; organizationalStructure.PersonFunction playsRole delegateFunction; } relation DelegateRegistration { student.Registration playsRole registration; student.Delegate playsRole delegates { multiplicity *; } } relation DelegateRootDomainObject { RootDomainObject playsRole rootDomainObject; student.Delegate playsRole delegates { multiplicity *; } } relation YearDelegateCourseInquiryYearDelegate { student.YearDelegate playsRole delegate; student.YearDelegateCourseInquiry playsRole yearDelegateCourseInquiries { multiplicity *; } } relation YearDelegateCourseInquiryExecutionCourse { ExecutionCourse playsRole executionCourse; student.YearDelegateCourseInquiry playsRole yearDelegateCourseInquiries { multiplicity *; } } relation YearDelegateCourseInquiryRootDomainObject { RootDomainObject playsRole rootDomainObject; student.YearDelegateCourseInquiry playsRole yearDelegateCourseInquiries { multiplicity *; } } relation QueueJobWithFileResult{ QueueJobWithFile playsRole job; QueueJobResultFile playsRole file; } relation AnnouncementCategoryRootDomainObject { RootDomainObject playsRole rootDomainObject; messaging.AnnouncementCategory playsRole categories { multiplicity *; } } relation AnnouncementCategoryAnnouncement { messaging.AnnouncementCategory playsRole categories { multiplicity *; } messaging.Announcement playsRole announcements { multiplicity *; } } relation AnnouncementCampus { space.Campus playsRole campus; messaging.Announcement playsRole announcements { multiplicity *; } } relation IndividualCandidacyExternalPersonDetailsCountryOfResidence { candidacyProcess.IndividualCandidacyExternalPersonDetails playsRole externalCandidacyPersonDetailsCountryOfResidence { multiplicity *; } Country playsRole countryOfResidence; } relation IndividualCandidacyExternalPersonDetailsNationality { candidacyProcess.IndividualCandidacyExternalPersonDetails playsRole externalCandidacyPersonDetailsNationality { multiplicity *; } Country playsRole nationality; } relation IndividualCandidacyIndividualCandidacyDocumentFile { candidacyProcess.IndividualCandidacy playsRole individualCandidacy { multiplicity *; } candidacyProcess.IndividualCandidacyDocumentFile playsRole documents { multiplicity *; } } relation PublicCandidacyHashCodeRootDomainObject { RootDomainObject playsRole rootDomainObject; PublicCandidacyHashCode playsRole candidacyHashCodes { multiplicity *; } } relation DegreeOfficePublicCandidacyHashCodeIndividualCandidacyProcess { candidacyProcess.DegreeOfficePublicCandidacyHashCode playsRole candidacyHashCode; candidacyProcess.IndividualCandidacyProcess playsRole individualCandidacyProcess; } relation CandidacyProcessFormationIndividualCandidacy { candidacyProcess.IndividualCandidacy playsRole individualCandidacy; candidacyProcess.Formation playsRole formations { multiplicity *; } } relation IndividualCandidacyProcessOriginalAndCopy { candidacyProcess.IndividualCandidacyProcess playsRole originalIndividualCandidacyProcess; candidacyProcess.IndividualCandidacyProcess playsRole copyIndividualCandidacyProcess; } relation FormationExecutionYear { ExecutionYear playsRole conclusionExecutionYear; candidacyProcess.Formation playsRole candidacyFormations { multiplicity *; } } relation GiafProfessionalDataRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.GiafProfessionalData playsRole giafProfessionalData { multiplicity *; } } relation PersonProfessionalContractRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.PersonProfessionalContract playsRole personProfessionalContracts { multiplicity *; } } relation PersonContractSituationRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.PersonContractSituation playsRole personContractSituations { multiplicity *; } } relation PersonProfessionalCategoryRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.PersonProfessionalCategory playsRole personProfessionalCategories { multiplicity *; } } relation PersonProfessionalRegimeRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.PersonProfessionalRegime playsRole personProfessionalRegimes { multiplicity *; } } relation PersonProfessionalRelationRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.PersonProfessionalRelation playsRole personProfessionalRelations { multiplicity *; } } relation ContractSituationRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.ContractSituation playsRole contractSituations { multiplicity *; } } relation ProfessionalContractTypeRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.ProfessionalContractType playsRole professionalContractTypes { multiplicity *; } } relation ProfessionalCategoryRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.ProfessionalCategory playsRole professionalCategories { multiplicity *; } } relation ProfessionalRegimeRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.ProfessionalRegime playsRole professionalRegimes { multiplicity *; } } relation ProfessionalRelationRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.ProfessionalRelation playsRole professionalRelations { multiplicity *; } } relation CoordinatorExecutionDegreeCoursesReportRootDomainObject { RootDomainObject playsRole rootDomainObject; CoordinatorExecutionDegreeCoursesReport playsRole coordinatorExecutionDegreeCoursesReports { multiplicity *; } } relation CoordinatorExecutionDegreeCoursesReportCoordinator { Coordinator playsRole coordinator; CoordinatorExecutionDegreeCoursesReport playsRole executionDegreeCoursesReports { multiplicity *; } } relation ExecutionDegreeCoursesReportCoordinatorExecutionDegree { ExecutionDegree playsRole executionDegree; CoordinatorExecutionDegreeCoursesReport playsRole executionDegreeCoursesReports { multiplicity *; } } relation ExecutionIntervalCoursesReportCoordinatorExecutionDegree { ExecutionInterval playsRole executionInterval; CoordinatorExecutionDegreeCoursesReport playsRole executionDegreeCoursesReports { multiplicity *; } } relation PersonFunctionsAccumulationRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.PersonFunctionsAccumulation playsRole personFunctionsAccumulations { multiplicity *; } } relation FunctionsAccumulationRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.FunctionsAccumulation playsRole functionsAccumulations { multiplicity *; } } relation PersonProfessionalExemptionRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.PersonProfessionalExemption playsRole personProfessionalExemptions { multiplicity *; } } relation ServiceExemptionRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.ServiceExemption playsRole serviceExemptions { multiplicity *; } } relation GrantOwnerEquivalentRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.GrantOwnerEquivalent playsRole grantOwnerEquivalences { multiplicity *; } } relation AbsenceRootDomainObject { RootDomainObject playsRole rootDomainObject; personnelSection.contracts.Absence playsRole absences { multiplicity *; } } relation CoordinatorStudentInquiriesCourseResult { Coordinator playsRole coordinatorComment; oldInquiries.StudentInquiriesCourseResult playsRole studentInquiriesCourseResults { multiplicity *; } } relation CurricularActivitiesRootDomainObject { RootDomainObject playsRole rootDomainObject { multiplicity 1..1; } student.curriculum.ExtraCurricularActivity playsRole extraCurricularActivity { multiplicity *; } } relation StudentExtraCurricularActivities { student.Student playsRole student; student.curriculum.ExtraCurricularActivity playsRole extraCurricularActivity { multiplicity *; } } relation ExtraCurricularActivityFeaturedInPrintedDiploma { serviceRequests.documentRequests.DiplomaSupplementRequest playsRole featuredDiploma; student.curriculum.ExtraCurricularActivity playsRole extraCurricularActivity { multiplicity *; } } relation ExtraCurricularActivityTypeRoot { student.curriculum.ExtraCurricularActivityType playsRole extraCurricularActivityType { multiplicity *; } RootDomainObject playsRole rootDomainObject { multiplicity 1..1; } } relation ExtraCurricularActivityType { student.curriculum.ExtraCurricularActivity playsRole extraCurricularActivity { multiplicity *; } student.curriculum.ExtraCurricularActivityType playsRole type { multiplicity 1..1; } } relation PendingRequestRootDomainObject { RootDomainObject playsRole rootDomainObject; PendingRequest playsRole pendingRequest { multiplicity *; } } relation PendingRequestParameterRootDomainObject { RootDomainObject playsRole rootDomainObject; PendingRequestParameter playsRole pendingRequestParameter { multiplicity *; } } relation PendingRequestParams { PendingRequest playsRole pendingRequest; PendingRequestParameter playsRole pendingRequestParameter { multiplicity *; } } relation DegreeOfficialPublication { Degree playsRole degree { multiplicity 1..1; } DegreeOfficialPublication playsRole officialPublication { multiplicity *; } } relation DegreeOfficialPublicationSpecializationAreas { DegreeOfficialPublication playsRole officialPublication { multiplicity 1..1; } DegreeSpecializationArea playsRole specializationArea { multiplicity *; } } relation EnrolmentEvaluationLogRootDomainObject { RootDomainObject playsRole rootDomainObject; log.EnrolmentEvaluationLog playsRole enrolmentEvaluationLog { multiplicity *; } } relation MobilityStudentDataRootDomainObject { RootDomainObject playsRole rootDomainObject; candidacyProcess.mobility.MobilityStudentData playsRole mobilityStudentData { multiplicity *; } } relation CycleCourseGroupInformationRootDomainObject { RootDomainObject playsRole rootDomainObject; degreeStructure.CycleCourseGroupInformation playsRole cycleCourseGroupInformation { multiplicity *; } } relation CycleCourseGroupInformationExecutionYear { ExecutionYear playsRole executionYear; degreeStructure.CycleCourseGroupInformation playsRole cycleCourseGroupInformation { multiplicity *; } } relation CycleCourseGroupCycleCourseGroupInformation { degreeStructure.CycleCourseGroup playsRole cycleCourseGroup; degreeStructure.CycleCourseGroupInformation playsRole cycleCourseGroupInformation { multiplicity *; } } relation DocumentPrintRequestRootDmainObject { RootDomainObject playsRole rootDomainObject; administrativeOffice.curriculumValidation.DocumentPrintRequest playsRole request { multiplicity *; } } relation DocumentPrintRequestPerson { Person playsRole whoRequested; administrativeOffice.curriculumValidation.DocumentPrintRequest playsRole request { multiplicity *; } } relation DocumentPrintRequestDocumentRequest { serviceRequests.documentRequests.DocumentRequest playsRole documentRequest; administrativeOffice.curriculumValidation.DocumentPrintRequest playsRole request { multiplicity *; } } relation RootDomainObjectEnrolmentInstructions { RootDomainObject playsRole rootDomainObject; EnrolmentInstructions playsRole enrolmentInstructions { multiplicity *; } } relation ExecutionSemesterEnrolmentInstructions { ExecutionSemester playsRole executionSemester; EnrolmentInstructions playsRole enrolmentInstructions; } relation MobilityIndividualApplicationProcessErasmusAlert { candidacyProcess.mobility.MobilityIndividualApplicationProcess playsRole process; candidacyProcess.erasmus.ErasmusAlert playsRole alert { multiplicity *; } } relation ErasmusAlertPerson { Person playsRole whoCreated; candidacyProcess.erasmus.ErasmusAlert playsRole erasmusAlert { multiplicity *; } } relation RootDomainObjectIrsDeclarationLink { RootDomainObject playsRole rootDomainObject; IrsDeclarationLink playsRole irsDeclarationLink; } relation RootDomainObjectMobilityQuota { RootDomainObject playsRole rootDomainObject; candidacyProcess.mobility.MobilityQuota playsRole mobilityQuotas { multiplicity *; } } relation MobilityQuotaMobilityApplicationPeriod { period.MobilityApplicationPeriod playsRole applicationPeriod; candidacyProcess.mobility.MobilityQuota playsRole mobilityQuotas { multiplicity *; } } relation MobilityQuotaDegree { Degree playsRole degree; candidacyProcess.mobility.MobilityQuota playsRole mobilityQuotas { multiplicity *; } } relation MobilityStudentDataMobilityQuota { candidacyProcess.mobility.MobilityQuota playsRole selectedOpening; candidacyProcess.mobility.MobilityStudentData playsRole applications { multiplicity *; } } relation MobilityQuotaMobilityAgreement { candidacyProcess.mobility.MobilityQuota playsRole mobilityQuotas { multiplicity *; } candidacyProcess.mobility.MobilityAgreement playsRole mobilityAgreement; } relation MobilityAgreementRootDomainObject { RootDomainObject playsRole rootDomainObject; candidacyProcess.mobility.MobilityAgreement playsRole mobilityAgreements { multiplicity *; } } relation MobilityAgreementUniversityUnit { organizationalStructure.UniversityUnit playsRole universityUnit; candidacyProcess.mobility.MobilityAgreement playsRole mobilityAgreements { multiplicity *; } } relation MobilityProgramMobilityAgreement { candidacyProcess.mobility.MobilityProgram playsRole mobilityProgram; candidacyProcess.mobility.MobilityAgreement playsRole mobilityAgreements { multiplicity *; } } relation MobilityProgramMobilityEmailTemplate { candidacyProcess.mobility.MobilityProgram playsRole mobilityProgram; candidacyProcess.mobility.MobilityEmailTemplate playsRole emailTemplates { multiplicity *; } } relation MobilityApplicationPeriodMobilityEmailTemplate { period.MobilityApplicationPeriod playsRole period; candidacyProcess.mobility.MobilityEmailTemplate playsRole emailTemplates { multiplicity *; } } relation MobilityEmailTemplateRootDomainObject { RootDomainObject playsRole rootDomainObject; candidacyProcess.mobility.MobilityEmailTemplate playsRole mobilityEmailTemplates { multiplicity *; } } relation ProgramRootDomainObject { RootDomainObject playsRole rootDomainObject; institutionalRelations.academic.Program playsRole programs { multiplicity *; } } relation RootDomainObjectCerimonyInquiry { RootDomainObject playsRole rootDomainObject; alumni.CerimonyInquiry playsRole cerimonyInquiry { multiplicity *; } } relation RootDomainObjectCerimonyInquiryAnswer { RootDomainObject playsRole rootDomainObject; alumni.CerimonyInquiryAnswer playsRole cerimonyInquiryAnswer { multiplicity *; } } relation RootDomainObjectCerimonyInquiryPerson { RootDomainObject playsRole rootDomainObject; alumni.CerimonyInquiryPerson playsRole cerimonyInquiryPerson { multiplicity *; } } relation CerimonyInquiryCerimonyInquiryAnswer { alumni.CerimonyInquiry playsRole cerimonyInquiry; alumni.CerimonyInquiryAnswer playsRole cerimonyInquiryAnswer { multiplicity *; } } relation CerimonyInquiryCerimonyInquiryPerson { alumni.CerimonyInquiry playsRole cerimonyInquiry; alumni.CerimonyInquiryPerson playsRole cerimonyInquiryPerson { multiplicity *; } } relation PersonCerimonyInquiryPerson { Person playsRole person; alumni.CerimonyInquiryPerson playsRole cerimonyInquiryPerson { multiplicity *; } } relation CerimonyInquiryAnswerCerimonyInquiryPerson { alumni.CerimonyInquiryAnswer playsRole cerimonyInquiryAnswer; alumni.CerimonyInquiryPerson playsRole cerimonyInquiryPerson { multiplicity *; } } relation TeacherCreditsStateTeacherCredits { TeacherCreditsState playsRole teacherCreditsState; TeacherCredits playsRole teacherCredits { multiplicity *; } } relation TeacherCreditsStateExecutionSemester { ExecutionSemester playsRole executionSemester; TeacherCreditsState playsRole teacherCreditsState{ multiplicity *; } } relation TeacherCreditsStatePerson { Person playsRole person; TeacherCreditsState playsRole teacherCredits { multiplicity *; } } relation TeacherCreditsTeacher { Teacher playsRole teacher; TeacherCredits playsRole teacherCredits { multiplicity *; } } relation TeacherCreditsPerson { Person playsRole person; TeacherCredits playsRole teacherCreditsPerson { multiplicity *; } } relation TeacherCreditsProfessionalCategory { personnelSection.contracts.ProfessionalCategory playsRole professionalCategory; TeacherCredits playsRole teacherCredits { multiplicity *; } } relation TeacherCreditsTeacherCreditsDocument { TeacherCreditsDocument playsRole teacherCreditsDocument { multiplicity *; } TeacherCredits playsRole teacherCredits; } relation TeacherCreditsQueueJobExecutionSemester { ExecutionSemester playsRole executionSemester; TeacherCreditsQueueJob playsRole teacherCreditsQueueJob{ multiplicity *; } } relation CreditPersonFunctionsSharedQueueJobExecutionSemester { ExecutionSemester playsRole executionSemester; credits.CreditsPersonFunctionsSharedQueueJob playsRole creditsPersonFunctionsSharedQueueJob{ multiplicity *; } } relation RootDomainObjectTeacherCreditsState { RootDomainObject playsRole rootDomainObject; TeacherCreditsState playsRole teacherCreditsState { multiplicity *; } } relation RootDomainObjectTeacherCredits { RootDomainObject playsRole rootDomainObject; TeacherCredits playsRole teacherCredits { multiplicity *; } } relation RootDomainObjectMessageTransportResult { RootDomainObject playsRole rootDomainObject; util.email.MessageTransportResult playsRole messageTransportResult { multiplicity *; } } relation RootDomainObjectEmailQueue { RootDomainObject playsRole rootDomainObjectFromEmailQueue; util.Email playsRole emailQueue { multiplicity *; } } relation EmailMessageTransportResult { util.Email playsRole email; util.email.MessageTransportResult playsRole messageTransportResult { multiplicity *; } } relation RootDomainObjectImportRegister { RootDomainObject playsRole rootDomainObject; ImportRegister playsRole importRegister { multiplicity *; } } relation RootDomainObjectImportRegisterLog { RootDomainObject playsRole rootDomainObject; ImportRegisterLog playsRole importRegisterLog { multiplicity *; } } relation ImportRegisterImportRegisterLog { ImportRegister playsRole importRegister; ImportRegisterLog playsRole importRegisterLogs { multiplicity *; } } relation PartyImportRegisterParty { PartyImportRegister playsRole partyImportRegister; organizationalStructure.Party playsRole party; } relation AccountabilityImportRegister { AccountabilityImportRegister playsRole accountabilityImportRegister; organizationalStructure.Accountability playsRole accountability; } relation RootDomainObjectFacultyEvaluationProcess { RootDomainObject playsRole rootDomainObject; teacher.evaluation.FacultyEvaluationProcess playsRole facultyEvaluationProcess { multiplicity *; } } relation RootDomainObjectFacultyEvaluationProcessYear { RootDomainObject playsRole rootDomainObject; teacher.evaluation.FacultyEvaluationProcessYear playsRole facultyEvaluationProcessYear { multiplicity *; } } relation FacultyEvaluationProcessFacultyEvaluationProcessYear { teacher.evaluation.FacultyEvaluationProcess playsRole facultyEvaluationProcess; teacher.evaluation.FacultyEvaluationProcessYear playsRole facultyEvaluationProcessYear { multiplicity *; } } relation RootDomainObjectApprovedTeacherEvaluationProcessMark { RootDomainObject playsRole rootDomainObject; teacher.evaluation.ApprovedTeacherEvaluationProcessMark playsRole approvedTeacherEvaluationProcessMark { multiplicity *; } } relation FacultyEvaluationProcessYearpprovedTeacherEvaluationProcessMark { teacher.evaluation.FacultyEvaluationProcessYear playsRole facultyEvaluationProcessYear; teacher.evaluation.ApprovedTeacherEvaluationProcessMark playsRole approvedTeacherEvaluationProcessMark { multiplicity *; } } relation TeacherEvaluationProcessApprovedTeacherEvaluationProcessMark { teacher.evaluation.TeacherEvaluationProcess playsRole teacherEvaluationProces; teacher.evaluation.ApprovedTeacherEvaluationProcessMark playsRole approvedTeacherEvaluationProcessMark { multiplicity *; } } relation RootDomainObjectTeacherEvaluationProcess { RootDomainObject playsRole rootDomainObject; teacher.evaluation.TeacherEvaluationProcess playsRole teacherEvaluationProcess { multiplicity *; } } relation RootDomainObjectTeacherEvaluation { RootDomainObject playsRole rootDomainObject; teacher.evaluation.TeacherEvaluation playsRole teacherEvaluation { multiplicity *; } } relation FacultyEvaluationProcessTeacherEvaluationProcess { teacher.evaluation.FacultyEvaluationProcess playsRole facultyEvaluationProcess; teacher.evaluation.TeacherEvaluationProcess playsRole teacherEvaluationProcess { multiplicity *; } } relation TeacherEvaluationProcessTeacherEvaluation { teacher.evaluation.TeacherEvaluationProcess playsRole teacherEvaluationProcess; teacher.evaluation.TeacherEvaluation playsRole teacherEvaluation { multiplicity *; } } relation TeacherEvaluationProcessEvaluee { teacher.evaluation.TeacherEvaluationProcess playsRole teacherEvaluationProcessFromEvaluee { multiplicity *; } Person playsRole evaluee; } relation TeacherEvaluationProcessEvaluator { teacher.evaluation.TeacherEvaluationProcess playsRole teacherEvaluationProcessFromEvaluator { multiplicity *; } Person playsRole evaluator; } relation TeacherEvaluationTeacherEvaluationFile { teacher.evaluation.TeacherEvaluation playsRole teacherEvaluation; teacher.evaluation.TeacherEvaluationFile playsRole teacherEvaluationFile { multiplicity *; } } relation TeacherEvaluationFilePerson { Person playsRole createdBy; teacher.evaluation.TeacherEvaluationFile playsRole teacherEvaluationFile { multiplicity *; } } relation RootDomainObjectTeacherEvaluationCoEvaluator { RootDomainObject playsRole rootDomainObject; teacher.evaluation.TeacherEvaluationCoEvaluator playsRole teacherEvaluationCoEvaluator { multiplicity *; } } relation TeacherEvaluationProcessTeacherEvaluationCoEvaluator { teacher.evaluation.TeacherEvaluationProcess playsRole teacherEvaluationProcessFromEvaluee; teacher.evaluation.TeacherEvaluationCoEvaluator playsRole teacherEvaluationCoEvaluator { multiplicity *; } } relation InternalCoEvaluatorPerson { teacher.evaluation.InternalCoEvaluator playsRole internalCoEvaluator { multiplicity *; } Person playsRole person; } relation MobilityCoordinatorRootDomainObject { RootDomainObject playsRole rootDomainObject; candidacyProcess.mobility.MobilityCoordinator playsRole mobilityCoordinators { multiplicity *; } } relation MobilityCoordinatorMobilityApplicationProcess { candidacyProcess.mobility.MobilityCoordinator playsRole coordinators { multiplicity *; } candidacyProcess.mobility.MobilityApplicationProcess playsRole mobilityApplicationProcess; } relation MobilityCoordinatorDegree { candidacyProcess.mobility.MobilityCoordinator playsRole coordinators { multiplicity *; } Degree playsRole degree; } relation MobilityCoordinatorTeacher { candidacyProcess.mobility.MobilityCoordinator playsRole mobilityCoordinations { multiplicity *; } Teacher playsRole teacher; } relation MobilityIndividualApplicationApprovedLearningAgreementDocumentFile { candidacyProcess.mobility.MobilityIndividualApplication playsRole mobilityIndividualApplication; candidacyProcess.erasmus.ApprovedLearningAgreementDocumentFile playsRole approvedLearningAgreements { multiplicity *; } } relation ExecutedActionRootDomainObject { RootDomainObject playsRole rootDomainObject; candidacyProcess.erasmus.ExecutedAction playsRole executedActions { multiplicity *; } } relation ExecutedActionPerson { Person playsRole whoMade; candidacyProcess.erasmus.ExecutedAction playsRole executedActions { multiplicity *; } } relation ApprovedLearningAgreementDocumentFileExecutedAction { candidacyProcess.erasmus.ApprovedLearningAgreementDocumentFile playsRole approvedLearningAgreement; candidacyProcess.erasmus.ApprovedLearningAgreementExecutedAction playsRole executedActions { multiplicity *; } } relation ErasmusIndividualCandidacyProcessExecutedActionIndividualApplicationProcess { candidacyProcess.erasmus.ErasmusIndividualCandidacyProcessExecutedAction playsRole executedActions { multiplicity *; } candidacyProcess.mobility.MobilityIndividualApplicationProcess playsRole mobilityIndividualApplicationProcess; } relation RootDomainObjectCoordinatorLog { RootDomainObject playsRole rootDomainObject; CoordinatorLog playsRole coordinatorLog { multiplicity *; } } relation CoordinatorLogExecutionDegree { ExecutionDegree playsRole executionDegree; CoordinatorLog playsRole coordinatorLog { multiplicity *; } } relation CoordinatorLogWhoPerson { Person playsRole personWho; CoordinatorLog playsRole coordinatorLogWho { multiplicity *; } } relation CoordinatorLogPerson { Person playsRole person; CoordinatorLog playsRole coordinatorLog { multiplicity *; } } relation SIBSOutgoingPaymentFileExecutionYear { ExecutionYear playsRole executionYear; accounting.events.export.SIBSOutgoingPaymentFile playsRole sIBSOutgoingPaymentFiles { multiplicity *; } } relation StudentsPerformanceReportExecutionSemester { ExecutionSemester playsRole executionSemester; residence.StudentsPerformanceReport playsRole studentsPerformanceReports { multiplicity *; } } relation ResidenceManagementStudentsPerformanceReportStudent { residence.StudentsPerformanceReport playsRole reports { multiplicity *; } student.Student playsRole students { multiplicity *; } } relation AlumniReportFileExecutionYear { ExecutionYear playsRole executionYear; alumni.AlumniReportFile playsRole alumniReportFiles { multiplicity *; } } relation GratuityReportQueueJobExecutionYear { ExecutionYear playsRole executionYear; accounting.report.GratuityReportQueueJob playsRole gratuityReportQueueJobs { multiplicity *; } } relation DgesBaseProcessExecutionYear { ExecutionYear playsRole executionYear; student.importation.DgesBaseProcess playsRole DgesBaseProcess { multiplicity *; } } relation ImportCandidaciesFromDgesProcessDgesImportationStudentFile { student.importation.DgesStudentImportationProcess playsRole dgesStudentImportationProcess; student.importation.DgesStudentImportationFile playsRole dgesStudentImportationFile; } relation DgesStudentImportationProcessCampus { space.Campus playsRole dgesStudentImportationForCampus; student.importation.DgesStudentImportationProcess playsRole dgesStudentImportationProcess { multiplicity*; } } relation MobilityApplicationProcessErasmusCandidacyProcessExecutedAction { candidacyProcess.mobility.MobilityApplicationProcess playsRole mobilityApplicationProcess; candidacyProcess.erasmus.ErasmusCandidacyProcessExecutedAction playsRole erasmusCandidacyProcessExecutedAction { multiplicity *; } } relation ErasmusCandidacyExecutedActionMobilityIndividualProcess { candidacyProcess.erasmus.ErasmusCandidacyProcessExecutedAction playsRole erasmusCandidacyProcessExecutedAction { multiplicity *; } candidacyProcess.mobility.MobilityIndividualApplicationProcess playsRole subjectMobilityIndividualApplicationProcess { multiplicity *; } } relation ReceptionEmailExecutedActionMobilityEmailTemplate { candidacyProcess.erasmus.ReceptionEmailExecutedAction playsRole receptionEmailExcutedAction; candidacyProcess.mobility.MobilityEmailTemplate playsRole mobilityEmailTemplate; } relation StudentCandidacyAvailablePaymentCodes { candidacy.StudentCandidacy playsRole studentCandidacy; accounting.PaymentCode playsRole availablePaymentCodes { multiplicity *; } } relation StudentCandidacyCandidacySummaryFile { candidacy.StudentCandidacy playsRole studentCandidacy; candidacy.CandidacySummaryFile playsRole summaryFile { multiplicity 0..1; } } relation StudentCandidacyFirstTimeCandidacyLog { candidacy.StudentCandidacy playsRole studentCandidacy; log.FirstTimeCandidacyLog playsRole firstTimeCandidacyLog { multiplicity 0..1; } } relation FirstTimeCandidacyLogFirstTimeCandidacyLogEntry { log.FirstTimeCandidacyLog playsRole firstTimeCandidacyLog { multiplicity 0..1; } log.FirstTimeCandidacyLogEntry playsRole firstTimeCandidacyLogEntry { multiplicity *; } } relation DgesStudentImportationProcessStudentCandidacy { student.importation.DgesStudentImportationProcess playsRole dgesStudentImportationProcess; candidacy.StudentCandidacy playsRole studentCandidacy { multiplicity *; } } relation ExternalPhdProgramRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.ExternalPhdProgram playsRole externalPhdPrograms { multiplicity *; } } relation ExternalPhdProgramPhdProgramFocusArea { phd.ExternalPhdProgram playsRole externalPhdPrograms { multiplicity *; } phd.PhdProgramFocusArea playsRole phdProgramFocusAreas { multiplicity *; } } relation ProfessorshipPremissionsProfessorship { Professorship playsRole professorship; ProfessorshipPermissions playsRole permissions; } relation PremissionsProfessorshipRootDomainObject { RootDomainObject playsRole rootDomainObject; ProfessorshipPermissions playsRole professorshipPermissions { multiplicity *; } } relation MobilityApplicationProcessErasmusCandidacyProcessReport { candidacyProcess.erasmus.reports.ErasmusCandidacyProcessReport playsRole erasmusCandidacyProcessReports { multiplicity *; } candidacyProcess.mobility.MobilityApplicationProcess playsRole mobilityApplicationProcess; } relation RootDomainObjectExternalUser { RootDomainObject playsRole rootDomainObject; ExternalUser playsRole externalUser { multiplicity *; } } relation PartialRegistrationRegimeRequestExecutionYear { ExecutionYear playsRole executionYear; accounting.postingRules.PartialRegistrationRegimeRequestPR playsRole partialRegistrationRegimeRequestPostingRules { multiplicity *; } } relation ProfessorshipUser { Person playsRole creator; Professorship playsRole professorshipCreated{ multiplicity *; } } relation RootDomainObjectHasLibraries { RootDomainObject playsRole rootDomainObjectForLibrary; space.Space playsRole libraries { multiplicity *; } } relation SpacesHaveAttendances { space.Space playsRole occupiedLibraryPlace { multiplicity 0..1; } space.SpaceAttendances playsRole currentAttendance { multiplicity *; } } relation SpacesHaveAttendanceHistory { space.Space playsRole visitedLibraryPlace { multiplicity 0..1; } space.SpaceAttendances playsRole pastAttendances { multiplicity *; } } relation CareerWorkshopApplicationRootDomainObject { RootDomainObject playsRole rootDomainObject; careerWorkshop.CareerWorkshopApplication playsRole careerWorkshopApplications { multiplicity *; } } relation CareerWorkshopApplicationStudent { careerWorkshop.CareerWorkshopApplication playsRole careerWorkshopApplications { multiplicity *; } student.Student playsRole student { multiplicity 0..1; } } relation CareerWorkshopApplicationEventRootDomainObject { RootDomainObject playsRole rootDomainObject; careerWorkshop.CareerWorkshopApplicationEvent playsRole careerWorkshopApplicationEvents { multiplicity *; } } relation CareerWorkshopApplicationEventCareerWorkshopApplication { careerWorkshop.CareerWorkshopApplicationEvent playsRole careerWorkshopApplicationEvent { multiplicity 0..1; } careerWorkshop.CareerWorkshopApplication playsRole careerWorkshopApplications { multiplicity *; } } relation CareerWorkshopApplicationEventFile { careerWorkshop.CareerWorkshopApplicationEvent playsRole careerWorkshopApplicationEvent; careerWorkshop.CareerWorkshopSpreadsheet playsRole spreadsheet { multiplicity 0..1; } } relation CareerWorkshopConfirmationRootDomainObject { RootDomainObject playsRole rootDomainObject; careerWorkshop.CareerWorkshopConfirmation playsRole careerWorkshopConfirmations { multiplicity *; } } relation CareerWorkshopConfirmationStudent { careerWorkshop.CareerWorkshopConfirmation playsRole careerWorkshopConfirmations { multiplicity *; } student.Student playsRole student { multiplicity 0..1; } } relation CareerWorkshopApplicationCareerWorkshopConfirmation { careerWorkshop.CareerWorkshopApplication playsRole careerWorkshopApplication; careerWorkshop.CareerWorkshopConfirmation playsRole careerWorkshopConfirmation; } relation CareerWorkshopConfirmationEventRootDomainObject { RootDomainObject playsRole rootDomainObject; careerWorkshop.CareerWorkshopConfirmationEvent playsRole careerWorkshopConfirmationEvents { multiplicity *; } } relation CareerWorkshopConfirmationEventCareerWorkshopConfirmation { careerWorkshop.CareerWorkshopConfirmationEvent playsRole careerWorkshopConfirmationEvent { multiplicity 0..1; } careerWorkshop.CareerWorkshopConfirmation playsRole careerWorkshopConfirmations { multiplicity *; } } relation CareerWorkshopConfirmationEventFile { careerWorkshop.CareerWorkshopConfirmationEvent playsRole careerWorkshopConfirmationEvent; careerWorkshop.CareerWorkshopConfirmationSpreadsheet playsRole confirmations { multiplicity 0..1; } } relation CareerWorkshopApplicationEventCareerWorkshopConfirmationEvent { careerWorkshop.CareerWorkshopApplicationEvent playsRole careerWorkshopApplicationEvent; careerWorkshop.CareerWorkshopConfirmationEvent playsRole careerWorkshopConfirmationEvent; } relation RootDomainObjectNonRegularTeachingService { RootDomainObject playsRole rootDomainObject; NonRegularTeachingService playsRole nonRegularTeachingServices { multiplicity *; } } relation ProfessorshipNonRegularTeachingService { Professorship playsRole professorship; NonRegularTeachingService playsRole nonRegularTeachingServices { multiplicity *; } } relation ShiftNonRegularShift { Shift playsRole shift; NonRegularTeachingService playsRole nonRegularTeachingServices { multiplicity *; } } relation UTLScholarshipReportStudent { student.scholarship.report.UTLScholarshipReport playsRole utlScholarshipReport { multiplicity *; } student.Student playsRole student { multiplicity *; } } relation UTLScholarshipReportSource { student.scholarship.report.UTLScholarshipReport playsRole utlScholarshipReport; student.scholarship.report.UTLScholarshipSource playsRole utlScholarshipSource; } relation TeacherTeacherAuthorization { Teacher playsRole teacher; TeacherAuthorization playsRole authorization { multiplicity *; } } relation TeacherAuthorizationProfessionalCategory { personnelSection.contracts.ProfessionalCategory playsRole professionalCategory; TeacherAuthorization playsRole authorization { multiplicity *; } } relation ExternalTeacherAuthorizationPerson { Person playsRole authorizer; ExternalTeacherAuthorization playsRole teacherAuthorizationsAuthorized { multiplicity *; } } relation ExternalTeacherAuthorizationDepartment { Department playsRole department; ExternalTeacherAuthorization playsRole teacherAuthorizationsAuthorized { multiplicity *; } } relation ExternalTeacherAuthorizationRevoker { Person playsRole revoker; ExternalTeacherAuthorization playsRole teacherAuthorizationsRevoked { multiplicity *; } } relation TeacherAuthorizationExecutionSemester { ExecutionSemester playsRole executionSemester; TeacherAuthorization playsRole authorization { multiplicity *; } } relation TeacherAuthorizationRootDomainObject { RootDomainObject playsRole rootDomainObject; TeacherAuthorization playsRole teacherAuthorization { multiplicity *; } } relation PhdGratuityPaymentPeriodRootDomainObject { RootDomainObject playsRole rootDomainObject; phd.debts.PhdGratuityPaymentPeriod playsRole phdGratuityPaymentPeriods { multiplicity *; } } relation PhdGratuityPaymentPeriodPhdGratuityPR { phd.debts.PhdGratuityPR playsRole postingRule; phd.debts.PhdGratuityPaymentPeriod playsRole phdGratuityPaymentPeriods { multiplicity *; } } relation PhdIndividualProgramProcessPhdIndiPhdGratuityEvent { phd.PhdIndividualProgramProcess playsRole phdIndividualProgramProcess; phd.debts.PhdGratuityEvent playsRole phdGratuityEvents { multiplicity *; } } relation LibraryCardSystemRootDomainObject { RootDomainObject playsRole rootDomainObject; LibraryCardSystem playsRole libraryCardSystem; } relation InstitutionAffiliationEventIntitution { organizationalStructure.Unit playsRole institution { multiplicity 1..1; } accounting.events.InstitutionAffiliationEvent playsRole affiliationEvent { multiplicity *; } } relation InstitutionAffiliationOpenEvents { organizationalStructure.Unit playsRole institutionWhereOpen { multiplicity 0..1; } accounting.events.InstitutionAffiliationEvent playsRole openAffiliationEvent { multiplicity *; } } relation MicroPaymentEventIntitutionAffiliation { accounting.events.InstitutionAffiliationEvent playsRole affiliationEvent { multiplicity 1..1; } accounting.events.MicroPaymentEvent playsRole microPaymentEvent { multiplicity *; } } relation RootDomainObjectPhdGratuityPriceQuirk { RootDomainObject playsRole rootDomainObject; phd.debts.PhdGratuityPriceQuirk playsRole phdGratuityPriceQuirks { multiplicity *; } } relation PhdGratuityPaymentPeriodPhdGratuityPriceQuirk { phd.debts.PhdGratuityPR playsRole postingRule; phd.debts.PhdGratuityPriceQuirk playsRole phdGratuityPriceQuirks { multiplicity *; } } relation PhdGratuityExternalScholarshipExemptionExternalScholarshipPhdGratuityContribuitionEvent { phd.debts.PhdGratuityExternalScholarshipExemption playsRole phdGratuityExternalScholarshipExemption; phd.debts.ExternalScholarshipPhdGratuityContribuitionEvent playsRole externalScholarshipPhdGratuityContribuitionEvent; } relation PhdGratuityExternalScholarshipExemptionParty { phd.debts.PhdGratuityExternalScholarshipExemption playsRole phdGratuityExternalScholarshipExemption{ multiplicity *; } organizationalStructure.Party playsRole party; } relation ExternalScholarshipProviderRootDomainObject { organizationalStructure.Party playsRole externalScholarshipProvider{ multiplicity *; } RootDomainObject playsRole rootDomainObjectExternalScholarshipProvider; } relation MicroPaymentEventDestinationUnit { organizationalStructure.Unit playsRole destinationUnit { multiplicity 1..1; } accounting.events.MicroPaymentEvent playsRole microPaymentEvent { multiplicity *; } } relation PersonPersonIdentificationDocumentExtraInfo { Person playsRole person { multiplicity 1..1; } PersonIdentificationDocumentExtraInfo playsRole personIdentificationDocumentExtraInfo { multiplicity *; } } relation PersonIdentificationDocumentExtraInfoRootDomainObject { RootDomainObject playsRole rootDomainObject; PersonIdentificationDocumentExtraInfo playsRole personIdentificationDocumentExtraInfo { multiplicity *; } } relation RootDomainObjectInstitutionAffiliationEventTicket { RootDomainObject playsRole rootDomainObject; accounting.events.InstitutionAffiliationEventTicket playsRole institutionAffiliationEventTicket { multiplicity *; } } relation InstitutionAffiliationEventInstitutionAffiliationEventTicket { accounting.events.InstitutionAffiliationEvent playsRole institutionAffiliationEvent; accounting.events.InstitutionAffiliationEventTicket playsRole generatedTicket { multiplicity *; } } relation EventInstitutionAffiliationEventTicket { accounting.Event playsRole consumerEvent; accounting.events.InstitutionAffiliationEventTicket playsRole consumedTicket { multiplicity *; } } relation RootDomainObjectStrikeDay { RootDomainObject playsRole rootDomainObject; StrikeDay playsRole strikeDay { multiplicity *; } } /* RAIDES Domain */ relation RootDomainObjectDegreeDesignation { RootDomainObject playsRole rootDomainObject; raides.DegreeDesignation playsRole degreeDesignations { multiplicity *; } } relation RootDomainObjectDegreeClassification { RootDomainObject playsRole rootDomainObject; raides.DegreeClassification playsRole degreeClassifications { multiplicity *; } } relation DegreeDesignationDegreeClassification { raides.DegreeClassification playsRole degreeClassification; raides.DegreeDesignation playsRole degreeDesignations { multiplicity *; } } relation RootDomainObjectPersonalIngressionData { RootDomainObject playsRole rootDomainObject; student.PersonalIngressionData playsRole personalIngressionsData { multiplicity *; } } relation PersonalIngressionDataCountryOfResidence { student.PersonalIngressionData playsRole personalIngressionsData { multiplicity *; } Country playsRole countryOfResidence; } relation PersonalIngressionDataGrantOwnerProvider { student.PersonalIngressionData playsRole personalIngressionsData { multiplicity *; } organizationalStructure.Unit playsRole grantOwnerProvider; } relation PersonalIngressionDataDistrictSubdivisionOfResidence { student.PersonalIngressionData playsRole personalIngressionsData { multiplicity *; } DistrictSubdivision playsRole districtSubdivisionOfResidence; } relation PersonalIngressionDataSchoolTimeDistrictSubdivisionOfResidence { student.PersonalIngressionData playsRole schoolTimePersonalIngressionsData { multiplicity *; } DistrictSubdivision playsRole schoolTimeDistrictSubDivisionOfResidence; } relation PersonalIngressionDataPrecedentDegreeInformation { student.PersonalIngressionData playsRole personalIngressionData; student.PrecedentDegreeInformation playsRole precedentDegreesInformations { multiplicity *; } } relation PersonalIngressionDataExecutionYear { student.PersonalIngressionData playsRole personalIngressionsData { multiplicity *; } ExecutionYear playsRole executionYear; } relation PrecedentDegreeInformationRegistration { student.PrecedentDegreeInformation playsRole precedentDegreesInformations { multiplicity *; } student.Registration playsRole registration; } relation StudentPrecedentDegreeInformation { student.PersonalIngressionData playsRole personalIngressionsData { multiplicity *; } student.Student playsRole student; } /* End of RAIDES Domain */ relation EventReportQueueJobExecutionYear { ExecutionYear playsRole forExecutionYear; accounting.report.events.EventReportQueueJob playsRole eventReportQueueJob { multiplicity *; } } relation AdministrativeOfficeEventReportQueueJob { administrativeOffice.AdministrativeOffice playsRole forAdministrativeOffice; accounting.report.events.EventReportQueueJob playsRole eventReportQueueJob { multiplicity *; } } /* Mid-Refactor */ relation RootDomainObjectErasmusVacancy { RootDomainObject playsRole rootDomainObject; candidacyProcess.erasmus.ErasmusVacancy playsRole erasmusVacancy { multiplicity *; } } relation ErasmusVacancyUniversityUnit { organizationalStructure.UniversityUnit playsRole universityUnit; candidacyProcess.erasmus.ErasmusVacancy playsRole erasmusVacancy { multiplicity *; } } relation ErasmusVacancyDegree { Degree playsRole degree; candidacyProcess.erasmus.ErasmusVacancy playsRole erasmusVacancy { multiplicity *; } } relation ErasmusVacancyErasmusCandidacyPeriod { period.MobilityApplicationPeriod playsRole candidacyPeriod; candidacyProcess.erasmus.ErasmusVacancy playsRole erasmusVacancy { multiplicity *; } } relation MobilityStudentDataErasmusVacancy { candidacyProcess.erasmus.ErasmusVacancy playsRole selectedVacancy; candidacyProcess.mobility.MobilityStudentData playsRole candidacies { multiplicity *; } } relation EventReportQueueJobEventDebtsFile { accounting.report.events.EventReportQueueJob playsRole eventReportQueueJobForDebts; accounting.report.events.EventReportQueueJobFile playsRole debts { multiplicity 0..1; } } relation EventReportQueueJobEventExemptionsFile { accounting.report.events.EventReportQueueJob playsRole eventReportQueueJobForExemptions; accounting.report.events.EventReportQueueJobFile playsRole exemptions { multiplicity 0..1; } } relation EventReportQueueJobEventTransactionsFile { accounting.report.events.EventReportQueueJob playsRole eventReportQueueJobForTransactions; accounting.report.events.EventReportQueueJobFile playsRole transactions { multiplicity 0..1; } } relation CandidacyProcessDegree { candidacyProcess.CandidacyProcess playsRole candidacyProcess { multiplicity *; } Degree playsRole degree { multiplicity *; } } relation RootDomainObjectIndividualCandidacySeriesGrade { RootDomainObject playsRole rootDomainObject; candidacyProcess.IndividualCandidacySeriesGrade playsRole individualCandidacySeriesGrade { multiplicity *; } } relation IndividualCandidacyIndividualCandidacySeriesGrade { candidacyProcess.IndividualCandidacy playsRole individualCandidacy; candidacyProcess.IndividualCandidacySeriesGrade playsRole individualCandidacySeriesGrade { multiplicity *; } } relation DegreeIndividualCandidacySeriesGrade { Degree playsRole degree; candidacyProcess.IndividualCandidacySeriesGrade playsRole individualCandidacySeriesGrade{ multiplicity *; } } class credits.AnnualTeachingCredits extends DomainObject { BigDecimal teachingCredits; BigDecimal masterDegreeThesesCredits; BigDecimal phdDegreeThesesCredits; BigDecimal projectsTutorialsCredits; BigDecimal managementFunctionCredits; BigDecimal creditsReduction; BigDecimal serviceExemptionCredits; BigDecimal othersCredits; BigDecimal annualTeachingLoad; BigDecimal yearCredits; BigDecimal finalCredits; BigDecimal accumulatedCredits; Boolean hasAnyLimitation; DateTime creationDate; DateTime lastModifiedDate; } relation TeacherYearCreditsTeacher { Teacher playsRole teacher; credits.AnnualTeachingCredits playsRole annualTeachingCredits { multiplicity *; } } relation RootDomainObjectAnnualTeachingCredits { RootDomainObject playsRole rootDomainObject; credits.AnnualTeachingCredits playsRole annualTeachingCredits { multiplicity *; } } class credits.AnnualCreditsState extends DomainObject { Boolean isOrientationsCalculated; Boolean isFinalCreditsCalculated; Boolean isCreditsClosed; LocalDate orientationsCalculationDate; LocalDate finalCalculationDate; LocalDate closeCreditsDate; DateTime creationDate; DateTime lastModifiedDate; } relation AnnualCreditsStateAnnualTeachingCredits { credits.AnnualCreditsState playsRole annualCreditsState; credits.AnnualTeachingCredits playsRole annualTeachingCredits { multiplicity *; } } relation AnnualCreditsStateExecutionYear { ExecutionYear playsRole executionYear; credits.AnnualCreditsState playsRole annualCreditsState; } relation RootDomainObjectAnnualCreditsState { RootDomainObject playsRole rootDomainObject; credits.AnnualCreditsState playsRole annualCreditsStates { multiplicity *; } } relation TeacherServiceCommentPerson { Person playsRole createdBy; teacher.TeacherServiceComment playsRole teacherServiceComment { multiplicity *; } } relation OtherServiceExecutionSemester { teacher.OtherService playsRole otherServicesCorrections{ multiplicity *; } ExecutionSemester playsRole correctedExecutionSemester; }