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

This session provides methods for retrieving Lesson objects. The Lesson represents a collection of syllabi.

This session defines views that offer differing behaviors when retrieving multiple objects.

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete view or is an error condition
  • isolated course catalog view: All lesson methods in this session operate, retrieve and pertain to lessonsdefined explicitly in the current course catalog. Using an isolated view is useful for managing lessonswith the LessonAdminSession.
  • federated course catalog view: All lesson lookup methods in this session operate, retrieve and pertain to all lessonsdefined in this course catalog and any other course catalogs implicitly available in this course catalog through course catalog inheritence.
  • effective lesson view: All lesson lookup methods return lessons where the current date falls in between the effective dates inclusive.
  • any lesson view: Lessons of any effective date are returned from 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.
MethodcanLookupLessons
Description

Tests if this user can perform Lesson 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.
MethoduseComparativeLessonView
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.
MethodusePlenaryLessonView
Description

A complete view of the Lesson 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 lessonsin 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.
MethoduseEffectiveLessonView
Description

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

CompliancemandatoryThis method is must be implemented.
MethoduseAnyEffectiveLessonView
Description

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

CompliancemandatoryThis method is must be implemented.
MethodgetLesson
Description

Gets the Lesson specified by its Id.

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

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

Parametersosid.id.IdlessonId Id of the Lesson
Returnosid.course.plan.Lessonthe lesson
ErrorsNOT_FOUND lessonId not found
NULL_ARGUMENT lessonId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method is must be implemented.
MethodgetLessonsByIds
Description

Gets a LessonList corresponding to the given IdList.

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

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

Parametersosid.id.IdListlessonIdsthe list of Ids to retrieve
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsNOT_FOUNDan Id was not found
NULL_ARGUMENT lessonIds is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessonsByGenusType
Description

Gets a LessonList corresponding to the given lesson genus Type which does not include lessonsof genus types derived from the specified Type.

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

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

Parametersosid.type.TypelessonGenusTypea lesson genus type
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsNULL_ARGUMENT lessonGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessonsByParentGenusType
Description

Gets a LessonList corresponding to the given lesson genus Type and include any additional lessonswith genus types derived from the specified Type.

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

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

Parametersosid.type.TypelessonGenusTypea lesson genus type
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsNULL_ARGUMENT lessonGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessonsByRecordType
Description

Gets a LessonList containing the given lesson record Type.

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

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

Parametersosid.type.TypelessonRecordTypea lesson record type
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsNULL_ARGUMENT lessonRecordType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessonsOnDate
Description

Gets a LessonList effective sduring the entire given date range inclusive but not confined to the date range.

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

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

Parametersosid.calendaring.DateTimefroms atsrting date
osid.calendaring.DateTimetoan ending date
Returnosid.course.plan.LessonListthe returned Lesson 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.
MethodgetLessonsForPlan
Description

Gets a LessonList for the given plan Id.

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

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

Parametersosid.id.IdplanIda plan Id
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsNULL_ARGUMENT planId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessonsForPlanOnDate
Description

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

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

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

Parametersosid.id.IdplanIda plan Id
osid.calendaring.DateTimefroms atsrting date
osid.calendaring.DateTimetoan ending date
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT planId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessonsForDocet
Description

Gets a LessonList for the given docet Id.

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

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

Parametersosid.id.IddocetIda docet Id
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsNULL_ARGUMENT docetId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessonsForDocetOnDate
Description

Gets a LessonList for a docet effective sduring the entire given date range inclusive but not confined to the date range.

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

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

Parametersosid.id.IddocetIda docet Id
osid.calendaring.DateTimefroms atsrting date
osid.calendaring.DateTimetoan ending date
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT docetId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessonsForPlanAndDocet
Description

Gets a LessonList for the given plan and docet.

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

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

Parametersosid.id.IdplanIda plan Id
osid.id.IddocetIda docet Id
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsNULL_ARGUMENT planId or docetId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessonsForPlanAndDocetOnDate
Description

Gets a LessonList for a plan and docet effective during the entire given date range inclusive but not confined to the date range.

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

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

Parametersosid.id.IdplanIda plan Id
osid.id.IddocetIda docet Id
osid.calendaring.DateTimefroms atsrting date
osid.calendaring.DateTimetoan ending date
Returnosid.course.plan.LessonListthe returned Lesson list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT planId, docetId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetLessons
Description

Gets all Lessons.

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

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

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