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

This session defines methods for retrieving plans.

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 plan methods in this session operate, retrieve and pertain to plans defined explicitly in the current course catalog. Using an isolated view is useful for managing plans with the PlanAdminSession.
  • federated course catalog view: All plan lookup methods in this session operate, retrieve and pertain to all plans defined in this course catalog and any other course catalogs implicitly available in this course catalog through course catalog inheritence.
  • effective plan view: All plan lookup methods return plans where the current date falls in between the effective dates inclusive.
  • any plan view: Plans of any effective date are returned from methods.

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

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.
MethodcanLookupPlans
Description

Tests if this user can lookup plans. 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 opt not to offer these operations.

Returnboolean false if plan lookup methods are not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoduseComparativePlanView
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.
MethodusePlenaryPlanView
Description

A complete view of the Plan 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 plans in course catalogs which are children of this course 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.
MethoduseEffectivePlanView
Description

Only plans whose effective dates are current are returned by methods in this session.

CompliancemandatoryThis method is must be implemented.
MethoduseAnyEffectivePlanView
Description

All plans of any effective dates are returned by methods in this session.

CompliancemandatoryThis method is must be implemented.
MethodgetPlan
Description

Gets the Plan specified by its Id.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.id.IdplanIdthe Id of the Plan to retrieve
Returnosid.course.plan.Planthe returned Plan
ErrorsNOT_FOUNDno Plan found with the given Id
NULL_ARGUMENT planId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansByIds
Description

Gets a PlanList corresponding to the given IdList.

In plenary mode, the returned list contains all of the plans 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 plans may be omitted from the list and may present the elements in any order including returning a unique set.

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.id.IdListplanIdsthe list of Ids to retrieve
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsNOT_FOUNDan Id was not found
NULL_ARGUMENT planIds is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansByGenusType
Description

Gets a PlanList corresponding to the given plan genus Type which does not include plans of genus types derived from the specified Type.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.type.TypeplanGenusTypea plan genus type
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsNULL_ARGUMENT planGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansByParentGenusType
Description

Gets a PlanList corresponding to the given plan genus Type and include any additional plans with genus types derived from the specified Type.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.type.TypeplanGenusTypea plan genus type
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsNULL_ARGUMENT planGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansByRecordType
Description

Gets a PlanList containing the given plan record Type.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.type.TypeplanRecordTypea plan record type
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsNULL_ARGUMENT planRecordType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansOnDate
Description

Gets a PlanList effective during the entire given date range inclusive but not confined to the date range.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.course.plan.PlanListthe returned Plan list
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.
MethodgetPlansForSyllabus
Description

Gets a PlanList for the given syllabus Id.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.id.IdsyllabusIda syllabus Id
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsNULL_ARGUMENT syllabusId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansForSyllabusOnDate
Description

Gets a PlanList for a syllabus effective during the entire given date range inclusive but not confined to the date range.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.id.IdsyllabusIda syllabus Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT syllabusId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansForCourseOffering
Description

Gets a PlanList for the given course offering Id.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.id.IdcourseOfferingIda course offering Id
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsNULL_ARGUMENT courseOfferingId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansForCourseOfferingOnDate
Description

Gets a PlanList for a course offering effective during the entire given date range inclusive but not confined to the date range.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.id.IdcourseOfferingIda course offering Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT courseOfferingId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansForSyllabusAndCourseOffering
Description

Gets a PlanList for the given syllabus and course offering.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.id.IdsyllabusIda syllabus Id
osid.id.IdcourseOfferingIda course offering Id
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsNULL_ARGUMENT syllabusId or courseOfferingId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlansForSyllabusAndCourseOfferingOnDate
Description

Gets a PlanList for a syllabus and course offering effective during the entire given date range inclusive but not confined to the date range.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Parametersosid.id.IdsyllabusIda syllabus Id
osid.id.IdcourseOfferingIda course offering Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.course.plan.PlanListthe returned Plan list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT syllabusId, courseOfferingId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetPlans
Description

Gets all plans.

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

In effective mode, plans are returned that are currently effective. In any effective mode, effective plans and those currently expired are returned.

Returnosid.course.plan.PlanLista list of plans
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.