private Subject Map(OntologyResource instance, bool isStudyProgrammeRequired) { var result = new Subject { HasHourForInd = instance.GetIntProperty("hasHourForInd"), HasHourForKoll = instance.GetIntProperty("hasHourForKoll"), HasHourForLab = instance.GetIntProperty("hasHourForLab"), HasHourForLecture = instance.GetIntProperty("hasHourForLecture"), HasHourForPract = instance.GetIntProperty("hasHourForPract"), Title = instance.GetStringProperty("title"), Id = instance.GetId(), FormsOfControl = MapFormOfControl(instance), Modules = MapModules(instance) }; if (isStudyProgrammeRequired) { IdTitle studyProgramme = MapIdTitle(instance.GetSubjectsByObjectProperty("hasSubject").FirstOrDefault()?.GetId()); if (studyProgramme != null) { result.StudyProgramme = new StudyProgramme() { Id = studyProgramme.Id, Title = studyProgramme.Title }; } } return(result); }
protected override DissertationCouncil Map(OntologyResource instance) { var entity = new DissertationCouncil { Id = instance.GetId(), OrderId = instance.GetStringProperty("hasOrderNumber"), Code = instance.GetStringProperty("hasCode"), ScientificSpecialities = instance.GetObjectProperties("associatedWith") .Select(s => GraphProxy.Graph.CreateOntologyResource(s)) .Select(s => new ScientificSpeciality() { Id = s.GetId(), Name = s.GetStringProperty("label"), Code = s.GetStringProperty("hasCode") }) .ToList() }; List <OntologyResource> universities = instance.GetObjectProperties("createdIn") .Select(s => GraphProxy.Graph.CreateOntologyResource(s)) .ToList(); if (universities.Any()) { entity.University = new University { Id = universities[0].GetId(), Name = universities[0].GetStringProperty("label") }; } return(entity); }
protected override ScientificSpeciality Map(OntologyResource instance) { var entity = new ScientificSpeciality { Id = instance.GetId(), Name = instance.GetStringProperty("label"), Code = instance.GetStringProperty("hasCode"), Specialities = instance.GetSubjectsByObjectProperty("specialityConsistsOf") .Select(s => new Speciality { Id = s.GetId(), Name = s.GetStringProperty("label"), Code = s.GetStringProperty("hasCode") }) .ToList() }; entity.DissertationCouncils = instance.GetSubjectsByObjectProperty("associatedWith").Select(s => new DissertationCouncil() { Id = s.GetId(), Code = s.GetStringProperty("hasCode") }).ToList(); return(entity); }
protected IdTitle MapIdTitle(OntologyResource instance) { if (instance == null) { return(null); } return(new IdTitle { Id = instance.GetId(), Title = instance.GetStringProperty("title") }); }
protected override StudyProgramme Map(OntologyResource instance) { return(new StudyProgramme { Title = instance.GetStringProperty("title"), Id = instance.GetId(), Direction = MapIdTitle(instance.GetObjectProperties("hasNapr").FirstOrDefault()?.GetId()), Department = MapIdTitle(instance.GetObjectProperties("hasDepartment").FirstOrDefault()?.GetId()), Profile = MapIdTitle(instance.GetObjectProperties("hasProfile").FirstOrDefault()?.GetId()), Subjects = instance.GetObjectProperties("hasSubject").Select(s => subjectRepository.GetShortById(s.GetId())).ToList() }); }
protected override University Map(OntologyResource instance) { var entity = new University { Id = instance.GetId(), Name = instance.GetStringProperty("label"), ScientificSpecialities = instance.GetSubjectsByObjectProperty("isIn") .Select(s => new ScientificSpeciality { Id = s.GetId(), Name = s.GetStringProperty("label"), Code = s.GetStringProperty("hasCode") }) .ToList() }; return(entity); }
protected override Speciality Map(OntologyResource instance) { var entity = new Speciality { Id = instance.GetId(), Name = instance.GetStringProperty("label"), Code = instance.GetStringProperty("hasCode"), ScientificSpecialities = instance.GetObjectProperties("specialityConsistsOf") .Select(s => GraphProxy.Graph.CreateOntologyResource(s)) .Select(s => new ScientificSpeciality { Id = s.GetId(), Name = s.GetStringProperty("label"), Code = s.GetStringProperty("hasCode") }) .ToList(), EducationLevel = instance.GetObjectProperties("hasLevelEducation") .Select(level => GraphProxy.Graph.CreateOntologyResource(level).GetStringProperty("label")) .ToList() }; return(entity); }