Course Recommender Ontology
type: Ontology
abstract: This ontology ...
creator: Jacob Shomstein
creator: Kelly Fellenzer
creator: Owen Xie
creator: Sola Shirai
depends on: https://spec.edmcouncil.org/fibo/ontology/BE/
depends on: https://spec.edmcouncil.org/fibo/ontology/FND/
depends on: https://www.omg.org/spec/LCC/
imports: FunctionalEntities
imports: FormalBusinessOrganizations
imports: LegalPersons
imports: Executives
imports: RegistrationAuthorities
imports: People
imports: ClassificationSchemes
imports: Documents
imports: IdentifiersAndIndices
imports: BusinessDates
imports: FinancialDates
imports: Occurrences
imports: Objectives
imports: Parties
imports: Roles
imports: ProductsAndServices
imports: Relations
imports: AnnotationVocabulary
imports: CountryRepresentation
imports: LanguageRepresentation
version IRI: course-recommender

academic schedule
type: Class
subclass of: Schedule
definition: list of events and deadlines of importance to students covering the period of the university's academic year
adapted from: https://info.rpi.edu/registrar/academic-calendar

academic year
type: NamedIndividual
type: CalendarPeriod
definition: calendar period during which students attend school or university, typically starting at the end of August and concluding near the end of May the following calendar year
adapted from: https://en.wikipedia.org/wiki/Academic_year

advisor
type: Class
subclass of: faculty member
subclass of: Restriction
  on property: advises
  some values from: student
definition: faculty member tasked to work with students to develop educational plans, explain requirements and rules surrounding graduation, discuss and monitor academic progress, and provide general guidance
adapted from: https://info.rpi.edu/advising-learning-assistance/advising/#FacultyStaffAdvisors

course
type: Class
subclass of: Restriction
  on property: has corequisite
  on class: course
  min qualified cardinality: 0
subclass of: Restriction
  on property: has recommended prerequisite
  on class: course
  min qualified cardinality: 0
subclass of: Restriction
  on property: has required prerequisite
  on class: course
  min qualified cardinality: 0
subclass of: Restriction
  on property: has course code
  on class: course code
  qualified cardinality: 1
subclass of: Restriction
  on property: has credits
  some values from: integer
subclass of: Restriction
  on property: has department
  some values from: department
subclass of: Restriction
  on property: has description
  some values from: string
subclass of: Restriction
  on property: has name
  some values from: string
subclass of: Restriction
  on property: has scheduled offering
  some values from: semester schedule
subclass of: Restriction
  on property: has topic
  some values from: topic area
definition: unit of teaching, usually an individual subject, that typically lasts one academic semester, is led by one or more instructors, and has a fixed roster of students

course code
type: Class
subclass of: CodeElement
subclass of: Restriction
  on property: denotes
  on class: course
  qualified cardinality: 1
subclass of: Restriction
  on property: hasTag
  on data range: string
  qualified cardinality: 1
subclass of: Restriction
  on property: has department code
  some values from: department code
subclass of: Restriction
  on property: has level
  some values from: integer
definition: a short course identifier with information about subject and course level in form of SUBJ-1111

course code restriction
type: Class
subclass of: Restriction
  on property: has valid level max
  min qualified cardinality: 0
  on data range: integer
subclass of: Restriction
  on property: has valid level min
  min qualified cardinality: 0
  on data range: integer
subclass of: Restriction
  on property: has special tag
  min qualified cardinality: 0
  on data range: string
subclass of: Restriction
  on property: has valid course code tag
  min qualified cardinality: 0
  on data range: string
subclass of: Restriction
  on property: has valid department code tag
  min qualified cardinality: 0
  on data range: string
definition: a class that captures and represents restrictions on courses that can be applied to fulfill requirements through the use of course codes

course schedule
type: Class
subclass of: academic schedule
subclass of: Restriction
  on property: has meeting time
  on data range: dateTime
  qualified cardinality: 1
definition: a list of important dates and meeting times relevant to a specific section of a course

course section
type: Class
subclass of: Restriction
  on property: is course section of
  on class: course
  qualified cardinality: 1
subclass of: Restriction
  on property: has schedule
  on class: semester schedule
  qualified cardinality: 1
definition: a unique sections of a larger class commonly held during seperate times

degree
type: Class
subclass of: Restriction
  on property: has department
  some values from: department
subclass of: Restriction
  on property: has requirement
  some values from: requirement
definition: qualification (or certification) awarded to students upon successful completion of a course of study in higher education

department
type: Class
subclass of: OrganizationalSubUnit
subclass of: Restriction
  on property: isPartOf
  some values from: Restriction
    on property: playsRole
    some values from: university
definition: division of a university or school faculty devoted to a particular academic discipline

department code
type: Class
subclass of: CodeElement
subclass of: Restriction
  on property: denotes
  on class: department
  qualified cardinality: 1
subclass of: Restriction
  on property: hasTag
  on data range: string
  qualified cardinality: 1
definition: a short identifier for departments

discipline
type: Class
definition: branch of knowledge, taught and researched as a part of higher education

educational institution
type: Class
subclass of: FunctionalBusinessEntity
subclass of: AuthorizingParty
subclass of: ServiceProvider
definition: institution where people gain an education, providing a variety of learning environments and spaces
adapted from: https://definitions.uslegal.com/e/educational-institution/
adapted from: https://www.thefreedictionary.com/educational+institution
explanatory note: According to 20 USCS section 1681 educational institution means 'any public or private preschool, elementary, or secondary school, or any institution of vocational, professional, or higher education, except that in the case of an educational institution composed of more than one school, college, or department which are administratively separate units, such term means each such school, college, or department.'

faculty member
type: Class
subclass of: AuthorizedParty
subclass of: OrganizationMember
subclass of: Restriction
  on property: isPlayedBy
  some values from: Restriction
    on property: isMemberOf
    some values from: Restriction
      on property: playsRole
      some values from: university
subclass of: Restriction
  on property: has department
  some values from: department
definition: party employed by a college or district to conduct classroom or teaching activities or who is otherwise considered by the college to be a member of faculty
adapted from: https://www.lawinsider.com/dictionary/faculty-member

major
type: Class
subclass of: Restriction
  on property: has department
  some values from: department
definition: academic discipline to which an undergraduate student formally commits

plan of study
type: Class
subclass of: Strategy
subclass of: Restriction
  on property: has completed course
  on class: course section
  min qualified cardinality: 0
subclass of: Restriction
  on property: has ongoing course
  on class: scheduled course section
  min qualified cardinality: 0
subclass of: Restriction
  on property: has class year
  some values from: dateTime
subclass of: Restriction
  on property: has planned degree
  some values from: degree
subclass of: Restriction
  on property: has planned major
  some values from: department
definition: area of study composed of major, minors, and concentrations within a program

professor
type: Class
subclass of: faculty member
subclass of: Restriction
  on property: teaches
  some values from: scheduled course section
definition: teacher of the highest rank in a college or university
adapted from: https://en.wikipedia.org/wiki/Professor

requirement
type: Class
subclass of: Restriction
  on property: can share credits with
  on class: requirement
  min qualified cardinality: 0
subclass of: Restriction
  on property: has restriction
  on class: requirement
  min qualified cardinality: 0
subclass of: Restriction
  on property: has sub requirement
  on class: requirement
  min qualified cardinality: 0
subclass of: Restriction
  on property: is fulfilled by
  on class: requirement
  min qualified cardinality: 0
subclass of: Restriction
  on property: has course code restriction
  on class: course code restriction
  qualified cardinality: 1
subclass of: Restriction
  on property: requires credits
  some values from: integer
definition: conditions in an academic major that must be met in order to satisfy degree completion by graduation

scheduled course section
type: Class
subclass of: course section
subclass of: Restriction
  on property: has schedule
  on class: course schedule
  qualified cardinality: 1
subclass of: Restriction
  on property: has course registration number
  on data range: string
  qualified cardinality: 1
subclass of: Restriction
  on property: has instructor
  some values from: professor
subclass of: Restriction
  on property: has registered student
  some values from: student
definition: a course section that has been assigned a concrete time and place of meeting as well as an instructor

semester
type: NamedIndividual
type: CalendarPeriod
definition: 18-week period of instruction into which an academic year is often divided
adapted from: https://www.merriam-webster.com/dictionary/semester

semester schedule
type: Class
subclass of: academic schedule
subclass of: Restriction
  on property: has semester year
  on data range: integer
  qualified cardinality: 1
subclass of: Restriction
  on property: has semester
  on data range: string
  qualified cardinality: 1
definition: the selected courses a student will complete in the upcoming future semester in order to complete their degree within a four-year plan

student
type: Class
subclass of: PartyInRole
subclass of: Restriction
  on property: hasIdentity
  on class: Person
  qualified cardinality: 1
subclass of: Restriction
  on property: isRegisteredBy
  some values from: Registrar
subclass of: Restriction
  on property: has advisor
  some values from: advisor
subclass of: Restriction
  on property: has class year
  some values from: dateTime
subclass of: Restriction
  on property: has interest
  some values from: topic area
subclass of: Restriction
  on property: has plan of study
  some values from: plan of study
definition: person who is formally registered at an educational institution to partake in academic courses with the purpose of acquiring a degree
adapted from: http://catalog.rpi.edu/

topic area
type: Class
subclass of: Restriction
  on property: belongs to
  some values from: discipline
definition: subject of disussion in a course or field of study

university
type: Class
subclass of: educational institution
subclass of: Restriction
  on property: isPlayedBy
  some values from: Restriction
    on property: hasMember
    some values from: Restriction
      on property: playsRole
      some values from: faculty member
definition: educational institution designed for instruction, examination, or both, of students in many branches of advanced learning, conferring degrees in various faculties, and often embodying colleges and similar institutions
adapted from: https://www.lexico.com/en/definition/university

advises
type: ObjectProperty
domain: advisor
range: student
inverse of: has advisor
definition: is the curriculum advisor of

belongs to
type: ObjectProperty
domain: topic area
range: discipline
definition: the discipline that this topic area is a part of

can share credits with
type: ObjectProperty
type: SymmetricProperty
domain: requirement
range: requirement
definition: a requirement that can be fulfilled using credits applied to this requirement

has advisor
type: ObjectProperty
domain: student
range: advisor
definition: has a curriculum advisor

has class year
type: DatatypeProperty
domain: Class
  union of: plan of study
  union of: student
range: dateTime
definition: the academic year when the student will complete their plan of study

has completed course
type: ObjectProperty
domain: plan of study
range: course section
definition: a course that has been completed and earned a satisfactory grade

has corequisite
type: ObjectProperty
domain: course
range: course
definition: a course the student is required to be registered for alongside this course

has course code
type: ObjectProperty
sub property of: hasDenotation
domain: course
range: course code
definition: has a unique number to identify the specific course in Self-Service Information System

has course code restriction
type: ObjectProperty
range: course code restriction
definition: a course code restriction on courses that can be applied to this requirement

has course registration number
type: DatatypeProperty
domain: scheduled course section
range: string
definition: the course registration number a student can use to register for the scheduled course section

has credits
type: DatatypeProperty
domain: course
range: integer
definition: the number of credits associated with completing the course

has cross listing
type: ObjectProperty
type: SymmetricProperty
domain: course code
range: course code
definition: is course alias of

has department
type: ObjectProperty
range: department
definition: belongs to a specific academic department

has department code
type: DatatypeProperty
type: ObjectProperty
domain: course code
range: department code
definition: the associated department of the course code

has description
type: DatatypeProperty
range: string
definition: the description of the individual

has instructor
type: ObjectProperty
domain: scheduled course section
range: professor
definition: has an academic faculty member to teach the course content

has interest
type: ObjectProperty
domain: student
range: topic area
definition: has an interest in a topic area

has level
type: DatatypeProperty
domain: course code
range: integer
definition: the associated difficulty level of the course code

has meeting time
type: DatatypeProperty
domain: course schedule
range: dateTime
definition: the times and dates during which a scheduled course section takes place

has name
type: DatatypeProperty
range: string
definition: the name of the individual

has ongoing course
type: ObjectProperty
domain: plan of study
range: scheduled course section
definition: has an ongoing scheduled course section in which the student is enrolled

has planned course
type: ObjectProperty
domain: plan of study
range: course section
definition: has a course section that the student is intending to register for in the future

has planned degree
type: ObjectProperty
domain: plan of study
range: degree
definition: has a degree whose requirements the plan of study is intended to fully fulfill

has planned major
type: ObjectProperty
domain: plan of study
range: major
definition: has a major for which the plan of study is intended to fully fulfill requirements

has recommended prerequisite
type: ObjectProperty
domain: course
range: course
definition: a prerequisite course that is suggested to be completed before registering for this course

has registered student
type: ObjectProperty
domain: scheduled course section
range: student
inverse of: registered in
definition: has a student who is registered to this scheduled course section

has required prerequisite
type: ObjectProperty
domain: course
range: course
definition: the specified courses required to be completed before a student is eligible to take this course

has requirement
type: ObjectProperty
domain: Class
  union of: degree
  union of: requirement
range: requirement
definition: has a requirement that must be fulfilled to earn the degree

has restriction
type: ObjectProperty
domain: requirement
range: requirement
definition: a requirement that acts as a restriction on this requirement

has schedule
type: ObjectProperty
domain: course section
range: semester schedule
definition: has a semester schedule during which the course is intended to take place

has scheduled offering
type: ObjectProperty
domain: course
range: semester schedule
definition: has a semester during which the course is intended to be offered in regular intervals

has semester
type: DatatypeProperty
domain: academic schedule
range: string
definition: the semester(s) that the academic schedule covers

has semester year
type: DatatypeProperty
range: integer
definition: the year associated with a particular semester

has special tag
type: DatatypeProperty
domain: course
range: string
definition: special tags associated with this course which are used to fulfill certain requirements

has plan of study
type: ObjectProperty
domain: student
range: plan of study
definition: has a plan of study leading to graduation

has sub requirement
type: ObjectProperty
domain: requirement
range: requirement
definition: a requirement that must be fulfilled in order for this requirement to be fulfilled

has topic
type: ObjectProperty
domain: course
range: topic area
definition: has a subject of discussion

has valid course code tag
type: DatatypeProperty
range: string
definition: a course code tag string that is allowed by this course code restriction

has valid department code tag
type: DatatypeProperty
range: string
definition: a department code tag string for courses that are allowed by this course code restriction

has valid level max
type: DatatypeProperty
range: integer
definition: the maximum level of a course that is allowed by this course code restriction

has valid level min
type: DatatypeProperty
range: integer
definition: the minimum level of a course that is allowed by this course code restriction

has valid special tag
type: DatatypeProperty
range: string
definition: valid special tags of courses that can fulfill a course restriction

is course section of
type: ObjectProperty
domain: course section
range: course
definition: a course that this individual is a section of

is fulfilled by
type: ObjectProperty
domain: requirement
range: requirement
definition: a requirement that can be fulfilled to satisfy this requirement

is sub topic of
type: ObjectProperty
domain: topic area
range: topic area
definition: a related topic area that subsumes this topic area

registered in
type: ObjectProperty
domain: student
range: scheduled course section
definition: a scheduled course section in which this student is currently formally enrolled and participating in

requires credits
type: DatatypeProperty
domain: requirement
range: integer
definition: the number of credits required to satisfy this requirement

teaches
type: ObjectProperty
domain: professor
range: scheduled course section
definition: a scheduled course section that this professor is the instructor of