CourseOfferingInfo

Name CourseOfferingInfo
Usage CourseOfferingService
rolloverCourseOffering updateCourseOfferingFromCanonical validateCourseOfferingFromCanonical getCourseOffering getCourseOfferingsByIds getCourseOfferingsByCourse getCourseOfferingsByCourseAndTerm getCourseOfferingsByTermAndInstructor createCourseOffering updateCourseOffering validateCourseOffering searchForCourseOfferings
Type Complex

Description

Structure Definition

ShortName Name Type Description Required? Read only? Cardinality XML Attribute? Implementation Notes
id Unique Id String The system assigned unique id to identify this Object.
Could be implemented as as sequence number or as a UUID.

Attempts to set this value on creates should result in a ReadOnlyException being thrown

An Id:

  • An id is used when the actual value is unimportant and
    can therefore be a large hex value for example

  • An id value might be 23b9ca9bd203df902

  • An Id is never intended to be used directly by an end
    user.

  • Ids are assumed to be of different values in different
    KS implementations

  • Id values are generated by the service
    implementations

  • Id values are never expected to be used in
    Configuration or Application code

Required on updates Read only One Yes  
typeKey Type Key String A unique identifier for the type of this object. Required Read only One Yes  
stateKey State Key String A unique identifier for the state of this object. Required   One Yes  
descr Course Offering Description RichTextInfo Custom Description for the course Offering.     One No  
courseId Course Id String A unique identifier assigned to all approved courses that exist
in the catalog This is not updatable once initialized.
Required Read only One No this maps the the version dependent id as the offering
must point to one and only one version of the
course. Maps to cluId in Lui.
termId Term Id String Academic term of course offering Required Read only on updates One No set during the #createCourseOffering and then maps to
the aptKey on the Lui
courseCode Course Code String Identifies the number of a course as reflected in the course catalog.
This typically must be unique across all courses offered during that
term. If the user wants to create two separate offerings for the same
course they must modify this code to make it unique. For example: An
on-line offering of the course might have an "O" appended to it to
distinguish it from the face to face offering, i.e. ENG101 and ENG101O
Initially copied from the course catalog but then, depending on the
configuration it may be updatable. Often this field is configured so that
it is not not directly updatable but rather is calculated from it's two
constituent parts, the subject area and the course number suffix. For
example: Subject Area = "ENG" and Suffix = "101" then code = "ENG101"

This field is differentiated from the Couurse Offering Code in
that the Course Offering Code can updated while the Course Code
always indicates the official canonical code.
  Read only One No this is a read only copy of the official canonical course code
courseOfferingCode Course Offering Code String Identifies the number of a course as reflected in the course catalog.
This typically must be unique across all courses offered during that
term. If the user wants to create two separate offerings for the same
course they must modify this code to make it unique. For example: An
on-line offering of the course might have an "O" appended to it to
distinguish it from the face to face offering, i.e. ENG101 and ENG101O
Initially copied from the course catalog but then, depending on the
configuration it may be updatable. Often this field is configured so that
it is not not directly updatable but rather is calculated from it's two
constituent parts, the subject area and the course number suffix. For
example: Subject Area = "ENG" and Suffix = "101" then code = "ENG101"
    One No initialially this is copied from the course catalog code but then
is subsequently stored in the lui as lui.officialIdentifier.code
courseNumberSuffix Course Number Suffix String A suffix of the course number as reflected in the college catalog. This
is the "number" portion of the course code. Initially copied from the
course catalog but then, depending on the configuration it may be
updatable. This field is often configured to be updatable but the updates
typically simply append something like an "O" for on-line to it to
differentiate multiple course offerings for the same course. Often used
in the calculation of the courseCode.
    One No initially copied from the canonical course but then stored in the
Lui as lui.officialIdentifier.suffixCode
courseOfferingTitle Course Title String Name of the course used in the college catalog. Initially copied from the
course catalog but then, depending on the configuration it may be
updatable. For regular courses this is not generally allowed to be
updated on the offering, but for special topics courses this is often
overridden to capture the particular topic being taught offered this
term. Note: the configuration of the validation for titles is typically
restricted to exclude line breaks. This may have to be loosened as some
schools may want the particular topic to appear on a 2nd line. For
example: SPECIAL TOPICS: AN EXPLORATION OF DEEP SPACE ARTIFACTS
l
    One No initially copied from the canonical course but then stored in the
Lui as lui.officialIdentifier.longName
creditCnt Credit Count String Gets the Credit Count   Read only One No this is the number of credits
isHonorsOffering Is Honors Offering Boolean Indicates that the entire course offering is an Honors Course ??? Is this
an enrollment restriction rule or a flag or both?
    One No store in a generic lui luCodes type of field?
instructors Instructors OfferingInstructorInfoList Instructors for this course offering TODO: find out if the canonical
instructors should be copied down
    Many No These are derived from Lui Person relations with instructor type
subjectArea Subject Area String Identifies the department and/subject code of the course as reflected in
the course catalog. Initially copied from the course catalog but then,
depending on the configuration it may be updatable. In most
configurations this should not be updatable. Often used in the
calculation of the courseCode
    One No initially copied from the canonical course but then stored in the
Lui as lui.officialIdentifier.division
unitsDeploymentOrgIds Units Deployment StringList Organization(s) that is responsible for administering the course delivery
- and all associated logistics - of the course Initially copied from the
canonical course then, depending on the configuration, updated This is
typically an academic department but could be for example the extended
studies office that is responsible for delivering the course even though
it's content is managed by an academic department.
    Many No initalized from canonical course units deployment but then stored
in lui.unitsDeployment
unitsContentOwnerOrgIds Units Content Owner StringList Organization(s) that is responsible for the academic content of the
course as approved in its canonical form. This is the organization that
has oversight of the curriculum. This is typically an academic
department.
  Read only on updates Many No this is never updatable so it should just be grabbed from the
canonical course and then stored in lui.unitsContentOwner
maximumEnrollment Maximum Enrollment Integer Total maximum number of "seats" or enrollment slots that can be filled
for the offering. Calculated based on sum of all the maximum seats of
primary activity type offerings.
  Read only One No maps to Lui.maximumEnrollment
minimumEnrollment Minimum Enrollment Integer Total minimum number of seats that must be filled for the offering not to
be canceled. Calculated based on sum of all the minimum seats of primary
activity type offerings
    One No maps to Lui.minimumEnrollment
jointOfferingIds Joint Offering Ids StringList The unique identifier of the other course offerings with which this
offering is joint-listed
  Read only I think? Many No Canonical might suggest offerings that can be jointly offered. This
is stored as a luiluirelation of joint type
gradingOptionId Grading Option Id String The options/scales that indicate the allowable grades within a
grading scheme that can be awarded. Typically, the values here
are constrained by the values on the canonical course. If the
value is set here then the Clu must have a grading option set
on the canonical activity. For example: an id might point to
Pass/Fail or Letter Graded option.
    One No Lui.resultOptionIds of type ???
gradingOption Grading String Gets the Grading Name   Read only One No this is the grading name - last word in gradingOptionId
studentRegistrationGradingOptions Student Registration Grading Options StringList The options/scales that indicate the allowable grades within a
grading scheme in which an eligible student can register. This
list of options includes the Grading Option Id plus any
additional grading schemes, such as P/F or Audit.
    Many No Lui.resultOptionIds of type ???
creditOptionDisplay Credit Option Display String A display string for the credit option.   Read only One No  
creditOptionId Credit Option Id String Type of credit of course offering. This field is initially copied from
the canonical course but then, depending on configuration, it may be
updated. TODO: figure out which of the credit options will be copied down
because the canonical has more than one! Often it is just a fixed single
value but a ResultValuesGroup could contain a range (with increments) or
even a discrete list of possible credit values.
    One No Lui.resultOptionIds returns a list of resultOptions. Filter option
with credit type and that should give the resultValueGroup.
waitlistLevelTypeKey Waitlist Level Type Key String Indicates the waitlist level, i.e., CourseOffering or ActivityOffering.
Values are in WaitListLevel enum.
    One No  
waitlistMaximum Waitlist Maximum Integer Maximum number of students to be allowed on the wait list.     One No maps to Lui.waitlistMaximum
hasWaitlist Has Waitlist Boolean Indicates whether a RegistrationGroup has a waitlist TODO: figure out how
to store this TODO: make sure we are consistent on how we spell Waitlist,
should be spelled Waitlist, or Wait List or Wait-List (as the
merriam-webster has it)
    One No not sure how to store this, it depends on how we end up
implementing waitlists.
waitlistTypeKey Waitlist Type Key String Indicates the type of waitlist as it relates to processing students on
and off The three types predefined in kuali are Automatic, Semi-Automatic
and Manual TODO: Right not Waitlist types are not tied to any Waitlist
object so we need to define an "other key" to get the list of valid
values from the type service. TODO: Decide if we need a separate
getHasWaitList, perhaps no value in this field means no waitlist. TODO:
Cross validate with hasWaitlist
    One No TODO: decide if this this should be stored on the Lui or on a
waitlist object?
campusLocations Campus Locations StringList Places where this Course offering is offered.     Many No  
isEvaluated Is Evaluated Boolean Indicates whether the course offering has an evaluation.     One No  
fundingSource Funding Source String The primary source of funding for the offering.     One No fyi "funding source" is an enumeration values are state support,
self-support, contract funding
isFeeAtActivityOffering Is Fee at Activity Offering Boolean Indicates whether the fee is at activity offering level or
course offering level. If true its at Activity Offering level,
if false its at CourseOffering level.
    One No  
courseNumberInternalSuffix Course Number Internal Suffix String A suffix is the system generated code that is hidden from the user
that parallels with courseOfferingNumberSuffix.
    One No initially copied from the canonical course but then stored in the
Lui as lui.officialIdentifier.suffixCode
isFinancialAidEligible Is Financial Aid Eligible Boolean Flag indicating whether a course is eligible for Financial Aid. Derived
from course catalog (canonical) TODO: find a place to store this on the
canonical course because it does not currently exist there TODO: Decide
if this is really a rule or a CluSet or what?
    One No TODO: decide where to store
courseOfferingURL Course Offering URL String Gets the Course Offering URL.     One No  
finalExamType Final Exam Type String Indicates whether a final exam is to be given for this format Offering
and if its true, the level at which it exists
Indicates the type of final exam ('STANDARD', 'ALTERNATE', 'NONE') to be given for this format Offering, if any
    One No  
meta Meta MetaInfo Create and last update info for the structure. This is optional
and treated as read only since the data is set by the internals
of the service during maintenance operations.

Contains audit trail information about the creation and last
update of this object Also contains the version ind used for
optimistic locking.

Attempts to set or update should result in a ReadOnlyException
being thrown.
Required on updates Read only One No  
attributes Dynamic Attributes AttributeInfoList List of dynamic attributes, each holding a key-value pair that
can be configured to hold additional information for an
implementing institution.

Note: the key may be repeated more than once to simulate a list
of values.
    Many No