OSID Logo
OSID Specifications
course package
Version 3.0.0
Release Candidate Preview
Interfaceosid.course.CourseOfferingLookupSession
Implementsosid.OsidSession
Description

This session defines methods for retrieving course offerings. A CourseOffering is a scheduled course listed in a course catalog. A CourseOffering is derived from a Course and maps to an offering time and registered students.

This lookup session defines several views:

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete result set or is an error condition
  • isolated course catalog view: All course offering methods in this session operate, retrieve and pertain to course offerings defined explicitly in the current course catalog. Using an isolated view is useful for managing CourseOfferings with the CourseOfferingAdminSession.
  • federated course catalog view: All course offering lookup methods in this session operate, retrieve and pertain to all course offerings defined in this course catalog and any other courses implicitly available in this course catalog through course catalog inheritence.
  • effective course offering view: All course offering lookup methods return course offerings where the current date falls within the effective dates inclusive.
  • any effective course offering view: Course offerings of any effective or expired status are returned from methods.

The methods useFederatedCourseCatalogView() and useIsolatedCourseCatalogView() behave as a radio group and one should be selected before invoking any lookup methods.

Courses may have an additional records indicated by their respective record types. The record may not be accessed through a cast of the Course.

MethodgetCourseCatalogId
Description

Gets the CourseCatalog Id associated with this session.

Returnosid.id.Idthe CourseCatalog Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetCourseCatalog
Description

Gets the CourseCatalog associated with this session.

Returnosid.course.CourseCatalogthe course catalog
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanLookupCourseOfferings
Description

Tests if this user can perform CourseOffering lookups. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PERMISSION_DENIED. This is intended as a hint to an application that may not offer lookup operations to unauthorized users.

Returnboolean false if lookup methods are not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoduseComparativeCourseOfferingView
Description

The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.

CompliancemandatoryThis method is must be implemented.
MethodusePlenaryCourseOfferingView
Description

A complete view of the CourseOffering returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.

CompliancemandatoryThis method is must be implemented.
MethoduseFederatedCourseCatalogView
Description

Federates the view for methods in this session. A federated view will include course offerings in catalogs which are children of this catalog in the course catalog hierarchy.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedCourseCatalogView
Description

Isolates the view for methods in this session. An isolated view restricts retrievals to this course catalog only.

CompliancemandatoryThis method is must be implemented.
MethoduseEffectiveCourseOfferingView
Description

All course offering methods return course offerings where the current date falls within the effective dates inclusive.

CompliancemandatoryThis method is must be implemented.
MethoduseAnyEffectiveCourseOfferingView
Description

All methods return course offerings of any effective or expired status.

CompliancemandatoryThis method is must be implemented.
MethodgetCourseOffering
Description

Gets the CourseOffering specified by its Id.

In plenary mode, the exact Id is found or a NOT_FOUND results. Otherwise, the returned CourseOffering may have a different Id than requested, such as the case where a duplicate Id was assigned to a Course and retained for compatibility.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.id.IdcourseOfferingIdthe Id of the CourseOffering to retrieve
Returnosid.course.CourseOfferingthe returned CourseOffering
ErrorsNOT_FOUNDno CourseOffering found with the given Id
NULL_ARGUMENT courseOfferingId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsByIds
Description

Gets a CourseOfferingList corresponding to the given IdList.

In plenary mode, the returned list contains all of the course offerings specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible CourseOfferings may be omitted from the list and may present the elements in any order including returning a unique set.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.id.IdListcourseOfferingIdsthe list of Ids to retrieve
Returnosid.course.CourseOfferingListthe returned CourseOffering list
ErrorsNOT_FOUNDan Id was not found
NULL_ARGUMENT courseOfferingIds is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsByGenusType
Description

Gets a CourseOfferingList corresponding to the given course offering genus Type which does not include course offerings of types derived from the specified Type.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.type.TypecourseOfferingGenusTypea course offering genus type
Returnosid.course.CourseOfferingListthe returned CourseOffering list
ErrorsNULL_ARGUMENT courseOfferingGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsByParentGenusType
Description

Gets a CourseOfferingList corresponding to the given course genus Type and include any additional course offerings with genus types derived from the specified Type.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.type.TypecourseOfferingGenusTypea course offering genus type
Returnosid.course.CourseOfferingListthe returned CourseOffering list
ErrorsNULL_ARGUMENT courseOfferingGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsByRecordType
Description

Gets a CourseOfferingList containing the given course offering record Type.

In plenary mode, the returned list contains all known courses or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.type.TypecourseOfferingRecordTypea course offering record type
Returnosid.course.CourseOfferingListthe returned CourseOffering list
ErrorsNULL_ARGUMENT courseOfferingRecordType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsOnDate
Description

Gets all CourseOfferings effective within the given date range inclusive.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.course.CourseOfferingLista list of CourseOfferings
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT from or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsForCourse
Description

Gets all CourseOfferings associated with a given Course.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.id.IdcourseIda course Id
Returnosid.course.CourseOfferingLista list of CourseOfferings
ErrorsNULL_ARGUMENT courseId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsForCourseOnDate
Description

Gets all CourseOffering s for a course and effective within the given date range inclusive.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.id.IdcourseIda course Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.course.CourseOfferingLista list of CourseOfferings
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT courseId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsForTerm
Description

Gets all CourseOfferings associated for a given Term.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.id.IdtermIda term Id
Returnosid.course.CourseOfferingLista list of CourseOfferings
ErrorsNULL_ARGUMENT termId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsForTermOnDate
Description

Gets all CourseOfferings for a term and effective within the given date range inclusive.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.id.IdtermIda term Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.course.CourseOfferingLista list of CourseOfferings
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT termId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsForCourseAndTerm
Description

Gets all CourseOfferings associated with a given Term and Course.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.id.IdcourseIda course Id
osid.id.IdtermIda term Id
Returnosid.course.CourseOfferingLista list of CourseOfferings
ErrorsNULL_ARGUMENT courseId or termId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsForCourseAndTermOnDate
Description

Gets all CourseOffering s for a course, term, and effective within the given date range inclusive.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.id.IdcourseIda course Id
osid.id.IdtermIda term Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.course.CourseOfferingLista list of CourseOfferings
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT courseId, termId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferingsByNumberForTerm
Description

Gets all CourseOfferings ny number and associated with a given Term.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those course offerings that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Parametersosid.id.IdtermIda term Id
stringnumbera course offering number
Returnosid.course.CourseOfferingLista list of CourseOfferings
ErrorsNULL_ARGUMENT termId or number is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCourseOfferings
Description

Gets all CourseOfferings.

In plenary mode, the returned list contains all known course offerings or an error results. Otherwise, the returned list may contain only those courses that are accessible through this session.

In effective mode, course offerings are returned where the current date falls within the effective dates inclusive. In any effective mode, effective and expired course offerings are returned.

Returnosid.course.CourseOfferingLista list of CourseOfferings
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.