Objective Bank

Objective Bank

class dlkit.services.learning.ObjectiveBank(provider_manager, catalog, runtime, proxy, **kwargs)

Bases: dlkit.osid.objects.OsidCatalog, dlkit.osid.sessions.OsidSession

an objective bank defines a collection of objectives.

get_objective_bank_record(objective_bank_record_type)

Gets the objective bank record corresponding to the given ObjectiveBank record Type.

This method is used to retrieve an object implementing the requested record. The objective_bank_record_type may be the Type returned in get_record_types() or any of its parents in a Type hierarchy where has_record_type(objective_bank_record_type) is true .

Parameters:objective_bank_record_type (osid.type.Type) – an objective bank record type
Returns:the objective bank record
Return type:osid.learning.records.ObjectiveBankRecord
Raise:NullArgumentobjective_bank_record_type is null
Raise:OperationFailed – unable to complete request
Raise:Unsupportedhas_record_type(objective_bank_record_type) is false

compliance: mandatory – This method must be implemented.

Objective Lookup Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_lookup_objectives()

Tests if this user can perform Objective 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 PermissionDenied. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

Returns:false if lookup methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.use_comparative_objective_view()

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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_plenary_objective_view()

A complete view of the Objective 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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_federated_objective_bank_view()

Federates the view for methods in this session.

A federated view will include proficiencies in objective banks which are children of this objective bank in the obective bank hierarchy.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_isolated_objective_bank_view()

Isolates the view for methods in this session.

An isolated view restricts lookups to this objective bank only.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_objective(objective_id)

Gets the Objective specified by its Id.

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

Parameters:objective_id (osid.id.Id) – Id of the Objective
Returns:the objective
Return type:osid.learning.Objective
Raise:NotFoundobjective_id not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_objectives_by_ids(objective_ids)

Gets an ObjectiveList corresponding to the given IdList.

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

Parameters:objective_ids (osid.id.IdList) – the list of Ids to retrieve
Returns:the returned Objective list
Return type:osid.learning.ObjectiveList
Raise:NotFound – an Id was not found
Raise:NullArgumentobjective_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objectives_by_genus_type(objective_genus_type)

Gets an ObjectiveList corresponding to the given objective genus Type which does not include objectives of genus types derived from the specified Type.

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

Parameters:objective_genus_type (osid.type.Type) – an objective genus type
Returns:the returned Objective list
Return type:osid.learning.ObjectiveList
Raise:NullArgumentobjective_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objectives_by_parent_genus_type(objective_genus_type)

Gets an ObjectiveList corresponding to the given objective genus Type and include any additional objective with genus types derived from the specified Type.

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

Parameters:objective_genus_type (osid.type.Type) – an objective genus type
Returns:the returned Objective list
Return type:osid.learning.ObjectiveList
Raise:NullArgumentobjective_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objectives_by_record_type(objective_record_type)

Gets an ObjectiveList containing the given objective record Type.

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

Parameters:objective_record_type (osid.type.Type) – an objective record type
Returns:the returned Objective list
Return type:osid.learning.ObjectiveList
Raise:NullArgumentobjective_record_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.objectives

Gets all Objectives.

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

Returns:an ObjectiveList
Return type:osid.learning.ObjectiveList
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Objective Query Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_search_objectives()

Tests if this user can perform Objectives searches.

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 PermissionDenied. This is intended as a hint to an application that may opt not to offer search operations to unauthorized users.

Returns:false if search methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.use_federated_objective_bank_view()

Federates the view for methods in this session.

A federated view will include proficiencies in objective banks which are children of this objective bank in the obective bank hierarchy.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_isolated_objective_bank_view()

Isolates the view for methods in this session.

An isolated view restricts lookups to this objective bank only.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.objective_query

Gets an objective query.

Returns:the objective query
Return type:osid.learning.ObjectiveQuery

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objectives_by_query(objective_query)

Gets a list of Objectives matching the given objective query.

Parameters:objective_query (osid.learning.ObjectiveQuery) – the objective query
Returns:the returned ObjectiveList
Return type:osid.learning.ObjectiveList
Raise:NullArgumentobjective_query is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedobjective_query is not of this service

compliance: mandatory – This method must be implemented.

Objective Admin Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_create_objectives()

Tests if this user can create Objectives.

A return of true does not guarantee successful authorization. A return of false indicates that it is known creating an Objective will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer create operations to an unauthorized user.

Returns:false if Objective creation is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_create_objective_with_record_types(objective_record_types)

Tests if this user can create a single Objective using the desired record types.

While LearningManager.getObjectiveRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific Objective. Providing an empty array tests if an Objective can be created with no records.

Parameters:objective_record_types (osid.type.Type[]) – array of objective record types
Returns:true if Objective creation using the specified record Types is supported, false otherwise
Return type:boolean
Raise:NullArgumentobjective_record_types is null

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objective_form_for_create(objective_record_types)

Gets the objective form for creating new objectives.

A new form should be requested for each create transaction.

Parameters:objective_record_types (osid.type.Type[]) – array of objective record types
Returns:the objective form
Return type:osid.learning.ObjectiveForm
Raise:NullArgumentobjective_record_types is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupported – unable to get form for requested record types

compliance: mandatory – This method must be implemented.

ObjectiveBank.create_objective(objective_form)

Creates a new Objective.

Parameters:objective_form (osid.learning.ObjectiveForm) – the form for this Objective
Returns:the new Objective
Return type:osid.learning.Objective
Raise:IllegalStateobjective_form already used in a create transaction
Raise:InvalidArgument – one or more of the form elements is invalid
Raise:NullArgumentobjective_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedobjective_form did not originate from get_objective_form_for_create()

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_update_objectives()

Tests if this user can update Objectives.

A return of true does not guarantee successful authorization. A return of false indicates that it is known updating an Objective will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer update operations to an unauthorized user.

Returns:false if objective modification is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objective_form_for_update(objective_id)

Gets the objective form for updating an existing objective.

A new objective form should be requested for each update transaction.

Parameters:objective_id (osid.id.Id) – the Id of the Objective
Returns:the objective form
Return type:osid.learning.ObjectiveForm
Raise:NotFoundobjective_id is not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.update_objective(objective_form)

Updates an existing objective.

Parameters:objective_form (osid.learning.ObjectiveForm) – the form containing the elements to be updated
Raise:IllegalStateobjective_form already used in an update transaction
Raise:InvalidArgument – the form contains an invalid value
Raise:NullArgumentobjective_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedobjective_form did not originate from get_objective_form_for_update()

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_delete_objectives()

Tests if this user can delete Objectives.

A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting an Objective will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer delete operations to an unauthorized user.

Returns:false if Objective deletion is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.delete_objective(objective_id)

Deletes the Objective identified by the given Id.

Parameters:objective_id (osid.id.Id) – the Id of the Objective to delete
Raise:NotFound – an Objective was not found identified by the given Id
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_manage_objective_aliases()

Tests if this user can manage Id aliases for Objectives.

A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.

Returns:false if Objective aliasing is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.alias_objective(objective_id, alias_id)

Adds an Id to an Objective for the purpose of creating compatibility.

The primary Id of the Objective is determined by the provider. The new Id performs as an alias to the primary Id. If the alias is a pointer to another objective, it is reassigned to the given objective Id.

Parameters:
  • objective_id (osid.id.Id) – the Id of an Objective
  • alias_id (osid.id.Id) – the alias Id
Raise:

AlreadyExistsalias_id is already assigned

Raise:

NotFoundobjective_id not found

Raise:

NullArgumentobjective_id or alias_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Objective Hierarchy Methods

ObjectiveBank.objective_hierarchy_id

Gets the hierarchy Id associated with this session.

Returns:the hierarchy Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_hierarchy

Gets the hierarchy associated with this session.

Returns:the hierarchy associated with this session
Return type:osid.hierarchy.Hierarchy
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_access_objective_hierarchy()

Tests if this user can perform hierarchy queries.

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 PermissionDenied. This is intended as a hint to an an application that may not offer traversal functions to unauthorized users.

Returns:false if hierarchy traversal methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.use_comparative_objective_view()

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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_plenary_objective_view()

A complete view of the Objective 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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.root_objective_ids

Gets the root objective Ids in this hierarchy.

Returns:the root objective Ids
Return type:osid.id.IdList
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.root_objectives

Gets the root objective in this objective hierarchy.

Returns:the root objective
Return type:osid.learning.ObjectiveList
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

ObjectiveBank.has_parent_objectives(objective_id)

Tests if the Objective has any parents.

Parameters:objective_id (osid.id.Id) – the Id of an objective
Returns:true if the objective has parents, false otherwise
Return type:boolean
Raise:NotFoundobjective_id is not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.is_parent_of_objective(id_, objective_id)

Tests if an Id is a direct parent of an objective.

Parameters:
  • id (osid.id.Id) – an Id
  • objective_id (osid.id.Id) – the Id of an objective
Returns:

true if this id is a parent of objective_id, false otherwise

Return type:

boolean

Raise:

NotFoundobjective_id is not found

Raise:

NullArgumentid or objective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented. implementation notes: If id not found return false.

ObjectiveBank.get_parent_objective_ids(objective_id)

Gets the parent Ids of the given objective.

Parameters:objective_id (osid.id.Id) – the Id of an objective
Returns:the parent Ids of the objective
Return type:osid.id.IdList
Raise:NotFoundobjective_id is not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_parent_objectives(objective_id)

Gets the parents of the given objective.

Parameters:objective_id (osid.id.Id) – the Id of an objective
Returns:the parents of the objective
Return type:osid.learning.ObjectiveList
Raise:NotFoundobjective_id is not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.is_ancestor_of_objective(id_, objective_id)

Tests if an Id is an ancestor of an objective.

Parameters:
  • id (osid.id.Id) – an Id
  • objective_id (osid.id.Id) – the Id of an objective
Returns:

true if this id is an ancestor of objective_id, false otherwise

Return type:

boolean

Raise:

NotFoundobjective_id is not found

Raise:

NullArgumentid or objective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented. implementation notes: If id not found return false.

ObjectiveBank.has_child_objectives(objective_id)

Tests if an objective has any children.

Parameters:objective_id (osid.id.Id) – the Id of an objective
Returns:true if the objective_id has children, false otherwise
Return type:boolean
Raise:NotFoundobjective_id is not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.is_child_of_objective(id_, objective_id)

Tests if an objective is a direct child of another.

Parameters:
  • id (osid.id.Id) – an Id
  • objective_id (osid.id.Id) – the Id of an objective
Returns:

true if the id is a child of objective_id, false otherwise

Return type:

boolean

Raise:

NotFoundobjective_id is not found

Raise:

NullArgumentid or objective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented. implementation notes: If id not found return false.

ObjectiveBank.get_child_objective_ids(objective_id)

Gets the child Ids of the given objective.

Parameters:objective_id (osid.id.Id) – the Id to query
Returns:the children of the objective
Return type:osid.id.IdList
Raise:NotFoundobjective_id is not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_child_objectives(objective_id)

Gets the children of the given objective.

Parameters:objective_id (osid.id.Id) – the Id to query
Returns:the children of the objective
Return type:osid.learning.ObjectiveList
Raise:NotFoundobjective_id is not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.is_descendant_of_objective(id_, objective_id)

Tests if an Id is a descendant of an objective.

Parameters:
  • id (osid.id.Id) – an Id
  • objective_id (osid.id.Id) – the Id of an objective
Returns:

true if the id is a descendant of the objective_id, false otherwise

Return type:

boolean

Raise:

NotFoundobjective_id is not found

Raise:

NullArgumentid or objective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented. implementation notes: If id is not found return false.

ObjectiveBank.get_objective_node_ids(objective_id, ancestor_levels, descendant_levels, include_siblings)

Gets a portion of the hierarchy for the given objective.

Parameters:
  • objective_id (osid.id.Id) – the Id to query
  • ancestor_levels (cardinal) – the maximum number of ancestor levels to include. A value of 0 returns no parents in the node.
  • descendant_levels (cardinal) – the maximum number of descendant levels to include. A value of 0 returns no children in the node.
  • include_siblings (boolean) – true to include the siblings of the given node, false to omit the siblings
Returns:

a catalog node

Return type:

osid.hierarchy.Node

Raise:

NotFoundobjective_id not found

Raise:

NullArgumentobjective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objective_nodes(objective_id, ancestor_levels, descendant_levels, include_siblings)

Gets a portion of the hierarchy for the given objective.

Parameters:
  • objective_id (osid.id.Id) – the Id to query
  • ancestor_levels (cardinal) – the maximum number of ancestor levels to include. A value of 0 returns no parents in the node.
  • descendant_levels (cardinal) – the maximum number of descendant levels to include. A value of 0 returns no children in the node.
  • include_siblings (boolean) – true to include the siblings of the given node, false to omit the siblings
Returns:

an objective node

Return type:

osid.learning.ObjectiveNode

Raise:

NotFoundobjective_id not found

Raise:

NullArgumentobjective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Objective Hierarchy Design Methods

ObjectiveBank.objective_hierarchy_id

Gets the hierarchy Id associated with this session.

Returns:the hierarchy Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_hierarchy

Gets the hierarchy associated with this session.

Returns:the hierarchy associated with this session
Return type:osid.hierarchy.Hierarchy
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_modify_objective_hierarchy()

Tests if this user can change the hierarchy.

A return of true does not guarantee successful authorization. A return of false indicates that it is known performing any update will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer these operations to an unauthorized user.

Returns:false if changing this hierarchy is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.add_root_objective(objective_id)

Adds a root objective.

Parameters:objective_id (osid.id.Id) – the Id of an objective
Raise:AlreadyExistsobjective_id is already in hierarchy
Raise:NotFoundobjective_id not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.remove_root_objective(objective_id)

Removes a root objective.

Parameters:objective_id (osid.id.Id) – the Id of an objective
Raise:NotFoundobjective_id not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.add_child_objective(objective_id, child_id)

Adds a child to an objective.

Parameters:
  • objective_id (osid.id.Id) – the Id of an objective
  • child_id (osid.id.Id) – the Id of the new child
Raise:

AlreadyExistsobjective_id is already a parent of child_id

Raise:

NotFoundobjective_id or child_id not found

Raise:

NullArgumentobjective_id or child_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.remove_child_objective(objective_id, child_id)

Removes a child from an objective.

Parameters:
  • objective_id (osid.id.Id) – the Id of an objective
  • child_id (osid.id.Id) – the Id of the new child
Raise:

NotFoundobjective_id not a parent of child_id

Raise:

NullArgumentobjective_id or child_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.remove_child_objectives(objective_id)

Removes all children from an objective.

Parameters:objective_id (osid.id.Id) – the Id of an objective
Raise:NotFoundobjective_id not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Objective Sequencing Methods

ObjectiveBank.objective_hierarchy_id

Gets the hierarchy Id associated with this session.

Returns:the hierarchy Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_hierarchy

Gets the hierarchy associated with this session.

Returns:the hierarchy associated with this session
Return type:osid.hierarchy.Hierarchy
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_sequence_objectives()

Tests if this user can sequence objectives.

A return of true does not guarantee successful authorization. A return of false indicates that it is known performing any update will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer these operations to an unauthorized user.

Returns:false if sequencing objectives is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.move_objective_ahead(parent_objective_id, reference_objective_id, objective_id)

Moves an objective ahead of a refrence objective under the given parent.

Parameters:
  • parent_objective_id (osid.id.Id) – the Id of the parent objective
  • reference_objective_id (osid.id.Id) – the Id of the objective
  • objective_id (osid.id.Id) – the Id of the objective to move ahead of reference_objective_id
Raise:

NotFoundparent_objective_id, reference_objective_id, or objective_id not found, or reference_objective_id or objective_id is not a child of parent_objective_id

Raise:

NullArgumentparent_objective_id, reference_objective_id, or id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.move_objective_behind(parent_objective_id, reference_objective_id, objective_id)

Moves an objective behind a refrence objective under the given parent.

Parameters:
  • parent_objective_id (osid.id.Id) – the Id of the parent objective
  • reference_objective_id (osid.id.Id) – the Id of the objective
  • objective_id (osid.id.Id) – the Id of the objective to move behind reference_objective_id
Raise:

NotFoundparent_objective_id, reference_objective_id, or objective_id not found, or reference_objective_id or objective_id is not a child of parent_objective_id

Raise:

NullArgumentparent_objective_id, reference_objective_id, or id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.sequence_objectives(parent_objective_id, objective_ids)

Sequences a set of objectives under a parent.

Parameters:
  • parent_objective_id (osid.id.Id) – the Id of the parent objective
  • objective_ids (osid.id.Id[]) – the Id of the objectives
Raise:

NotFoundparent_id or an objective_id not found, or an objective_id is not a child of parent_objective_id

Raise:

NullArgumentparen_objectivet_id or objective_ids is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Objective Objective Bank Methods

ObjectiveBank.can_lookup_objective_objective_bank_mappings()

Tests if this user can perform lookups of objective/objective bank mappings.

A return of true does not guarantee successful authorization. A return of false indicates that it is known lookup methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

Returns:false if looking up mappings is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.use_comparative_objective_bank_view()

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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_plenary_objective_bank_view()

A complete view of the Activity and ObjectiveBank 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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_objective_ids_by_objective_bank(objective_bank_id)

Gets the list of Objective Ids associated with an ObjectiveBank.

Parameters:objective_bank_id (osid.id.Id) – Id of the ObjectiveBank
Returns:list of related objectives
Return type:osid.id.IdList
Raise:NotFoundobjective_bank_id is not found
Raise:NullArgumentobjective_bank_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objectives_by_objective_bank(objective_bank_id)

Gets the list of Objectives associated with an ObjectiveBank.

Parameters:objective_bank_id (osid.id.Id) – Id of the ObjectiveBank
Returns:list of related objective Ids
Return type:osid.learning.ObjectiveList
Raise:NotFoundobjective_bank_id is not found
Raise:NullArgumentobjective_bank_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objective_ids_by_objective_banks(objective_bank_ids)

Gets the list of Objective Ids corresponding to a list of ObjectiveBanks.

Parameters:objective_bank_ids (osid.id.IdList) – list of objective bank Ids
Returns:list of objective Ids
Return type:osid.id.IdList
Raise:NullArgumentobjective_bank_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objectives_by_objective_banks(objective_bank_ids)

Gets the list of Objectives corresponding to a list of ObjectiveBanks.

Parameters:objective_bank_ids (osid.id.IdList) – list of objective bank Ids
Returns:list of objectives
Return type:osid.learning.ObjectiveList
Raise:NullArgumentobjective_bank_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objective_bank_ids_by_objective(objective_id)

Gets the list of ObjectiveBank Ids mapped to an Objective.

Parameters:objective_id (osid.id.Id) – Id of an Objective
Returns:list of objective bank Ids
Return type:osid.id.IdList
Raise:NotFoundobjective_id is not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objective_banks_by_objective(objective_id)

Gets the list of ObjectiveBanks mapped to an Objective.

Parameters:objective_id (osid.id.Id) – Id of an Objective
Returns:list of objective banks
Return type:osid.learning.ObjectiveBankList
Raise:NotFoundobjective_id is not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Objective Objective Bank Assignment Methods

ObjectiveBank.can_assign_objectives()

Tests if this user can alter objective/objective bank mappings.

A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.

Returns:false if mapping is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_assign_objectives_to_objective_bank(objective_bank_id)

Tests if this user can alter objective/objective bank mappings.

A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.

Parameters:objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
Returns:false if mapping is not authorized, true otherwise
Return type:boolean
Raise:NullArgumentobjective_bank_id is null

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_assignable_objective_bank_ids(objective_bank_id)

Gets a list of objective banks including and under the given objective bank node in which any activity can be assigned.

Parameters:objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
Returns:list of assignable objective bank Ids
Return type:osid.id.IdList
Raise:NullArgumentobjective_bank_id is null
Raise:OperationFailed – unable to complete request

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_assignable_objective_bank_ids_for_objective(objective_bank_id, objective_id)

Gets a list of objective banks including and under the given objective bank node in which a specific objective can be assigned.

Parameters:
  • objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
  • objective_id (osid.id.Id) – the Id of the Objective
Returns:

list of assignable objective bank Ids

Return type:

osid.id.IdList

Raise:

NullArgumentobjective_id or objective_bank_id is null

Raise:

OperationFailed – unable to complete request

compliance: mandatory – This method must be implemented.

ObjectiveBank.assign_objective_to_objective_bank(objective_id, objective_bank_id)

Adds an existing Objective to an ObjectiveBank.

Parameters:
  • objective_id (osid.id.Id) – the Id of the Objective
  • objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
Raise:

AlreadyExistsobjective_id already mapped to objective_bank_id

Raise:

NotFoundobjective_id or objective_bank_id not found

Raise:

NullArgumentobjective_id or objective_bank_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.unassign_objective_from_objective_bank(objective_id, objective_bank_id)

Removes an Objective from an ObjectiveBank.

Parameters:
  • objective_id (osid.id.Id) – the Id of the Objective
  • objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
Raise:

NotFoundobjective_id or objective_bank_id not found or objective_id not mapped to objective_bank_id

Raise:

NullArgumentobjective_id or objective_bank_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.reassign_proficiency_to_objective_bank(objective_id, from_objective_bank_id, to_objective_bank_id)

Moves an Objective from one ObjectiveBank to another.

Mappings to other ObjectiveBanks are unaffected.

Parameters:
  • objective_id (osid.id.Id) – the Id of the Objective
  • from_objective_bank_id (osid.id.Id) – the Id of the current ObjectiveBank
  • to_objective_bank_id (osid.id.Id) – the Id of the destination ObjectiveBank
Raise:

NotFoundobjective_id, from_objective_bank_id, or to_objective_bank_id not found or objective_id not mapped to from_objective_bank_id

Raise:

NullArgumentobjective_id, from_objective_bank_id, or to_objective_bank_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Objective Requisite Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_lookup_objective_prerequisites()

Tests if this user can perform Objective 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 PermissionDenied. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

Returns:false if lookup methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.use_comparative_objective_view()

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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_plenary_objective_view()

A complete view of the Objective 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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_federated_objective_bank_view()

Federates the view for methods in this session.

A federated view will include proficiencies in objective banks which are children of this objective bank in the obective bank hierarchy.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_isolated_objective_bank_view()

Isolates the view for methods in this session.

An isolated view restricts lookups to this objective bank only.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_requisite_objectives(objective_id)

Gets a list of Objectives that are the immediate requisites for the given Objective.

In plenary mode, the returned list contains all of the immediate requisites, or an error results if an Objective is not found or inaccessible. Otherwise, inaccessible Objectives may be omitted from the list and may present the elements in any order including returning a unique set.

Parameters:objective_id (osid.id.Id) – Id of the Objective
Returns:the returned requisite Objectives
Return type:osid.learning.ObjectiveList
Raise:NotFoundobjective_id not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_all_requisite_objectives(objective_id)

Gets a list of Objectives that are the requisites for the given Objective including the requistes of the requisites, and so on.

In plenary mode, the returned list contains all of the immediate requisites, or an error results if an Objective is not found or inaccessible. Otherwise, inaccessible Objectives may be omitted from the list and may present the elements in any order including returning a unique set.

Parameters:objective_id (osid.id.Id) – Id of the Objective
Returns:the returned Objective list
Return type:osid.learning.ObjectiveList
Raise:NotFoundobjective_id not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_dependent_objectives(objective_id)

Gets a list of Objectives that require the given Objective.

In plenary mode, the returned list contains all of the immediate requisites, or an error results if an Objective is not found or inaccessible. Otherwise, inaccessible Objectives may be omitted from the list and may present the elements in any order including returning a unique set.

Parameters:objective_id (osid.id.Id) – Id of the Objective
Returns:the returned Objective list
Return type:osid.learning.ObjectiveList
Raise:NotFoundobjective_id not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.is_objective_required(objective_id, required_objective_id)

Tests if an objective is required before proceeding with an objective.

One objective may indirectly depend on another objective by way of one or more other objectives.

Parameters:
  • objective_id (osid.id.Id) – Id of the dependent Objective
  • required_objective_id (osid.id.Id) – Id of the required Objective
Returns:

true if objective_id depends on required_objective_id, false otherwise

Return type:

boolean

Raise:

NotFoundobjective_id not found

Raise:

NullArgumentobjective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_equivalent_objectives(objective_id)

Gets a list of Objectives that are equivalent to the given Objective for the purpose of requisites.

An equivalent objective can satisfy the given objective. In plenary mode, the returned list contains all of the equivalent requisites, or an error results if an Objective is not found or inaccessible. Otherwise, inaccessible Objectives may be omitted from the list and may present the elements in any order including returning a unique set.

Parameters:objective_id (osid.id.Id) – Id of the Objective
Returns:the returned Objective list
Return type:osid.learning.ObjectiveList
Raise:NotFoundobjective_id not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Objective Requisite Assignment Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_assign_requisites()

Tests if this user can manage objective requisites.

A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.

Returns:false if mapping is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.assign_objective_requisite(objective_id, requisite_objective_id)

Creates a requirement dependency between two Objectives.

Parameters:
  • objective_id (osid.id.Id) – the Id of the dependent Objective
  • requisite_objective_id (osid.id.Id) – the Id of the required Objective
Raise:

AlreadyExistsobjective_id already mapped to requisite_objective_id

Raise:

NotFoundobjective_id or requisite_objective_id not found

Raise:

NullArgumentobjective_id or requisite_objective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.unassign_objective_requisite(objective_id, requisite_objective_id)

Removes an Objective requisite from an Objective.

Parameters:
  • objective_id (osid.id.Id) – the Id of the Objective
  • requisite_objective_id (osid.id.Id) – the Id of the required Objective
Raise:

NotFoundobjective_id or requisite_objective_id not found or objective_id not mapped to requisite_objective_id

Raise:

NullArgumentobjective_id or requisite_objective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.assign_equivalent_objective(objective_id, equivalent_objective_id)

Makes an objective equivalent to another objective for the purposes of satisfying a requisite.

Parameters:
  • objective_id (osid.id.Id) – the Id of the principal Objective
  • equivalent_objective_id (osid.id.Id) – the Id of the equivalent Objective
Raise:

AlreadyExistsobjective_id already mapped to equiavelnt_objective_id

Raise:

NotFoundobjective_id or equivalent_objective_id not found

Raise:

NullArgumentobjective_id or equivalent_objective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.unassign_equivalent_objective(objective_id, equivalent_objective_id)

Removes an Objective requisite from an Objective.

Parameters:
  • objective_id (osid.id.Id) – the Id of the principal Objective
  • equivalent_objective_id (osid.id.Id) – the Id of the equivalent Objective
Raise:

NotFoundobjective_id or equivalent_objective_id not found or objective_id is already equivalent to equivalent_objective_id

Raise:

NullArgumentobjective_id or equivalent_objective_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Activity Lookup Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_lookup_activities()

Tests if this user can perform Activity 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 PermissionDenied. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

Returns:false if lookup methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.use_comparative_activity_view()

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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_plenary_activity_view()

A complete view of the Activity 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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_federated_objective_bank_view()

Federates the view for methods in this session.

A federated view will include proficiencies in objective banks which are children of this objective bank in the obective bank hierarchy.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_isolated_objective_bank_view()

Isolates the view for methods in this session.

An isolated view restricts lookups to this objective bank only.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_activity(activity_id)

Gets the Activity specified by its Id.

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

Parameters:activity_id (osid.id.Id) – Id of the Activity
Returns:the activity
Return type:osid.learning.Activity
Raise:NotFoundactivity_id not found
Raise:NullArgumentactivity_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_activities_by_ids(activity_ids)

Gets an ActivityList corresponding to the given IdList.

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

Parameters:activity_ids (osid.id.IdList) – the list of Ids to retrieve
Returns:the returned Activity list
Return type:osid.learning.ActivityList
Raise:NotFound – an Id was not found
Raise:NullArgumentactivity_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_activities_by_genus_type(activity_genus_type)

Gets an ActivityList corresponding to the given activity genus Type which does not include activities of genus types derived from the specified Type.

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

Parameters:activity_genus_type (osid.type.Type) – an activity genus type
Returns:the returned Activity list
Return type:osid.learning.ActivityList
Raise:NullArgumentactivity_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_activities_by_parent_genus_type(activity_genus_type)

Gets an ActivityList corresponding to the given activity genus Type and include any additional activity with genus types derived from the specified Type.

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

Parameters:activity_genus_type (osid.type.Type) – an activity genus type
Returns:the returned Activity list
Return type:osid.learning.ActivityList
Raise:NullArgumentactivity_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_activities_by_record_type(activity_record_type)

Gets a ActivityList containing the given activity record Type.

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

Parameters:activity_record_type (osid.type.Type) – an activity record type
Returns:the returned Activity list
Return type:osid.learning.ActivityList
Raise:NullArgumentactivity_record_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_activities_for_objective(objective_id)

Gets the activities for the given objective.

In plenary mode, the returned list contains all of the activities mapped to the objective Id or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Activities may be omitted from the list and may present the elements in any order including returning a unique set.

Parameters:objective_id (osid.id.Id) – Id of the Objective
Returns:list of enrollments
Return type:osid.learning.ActivityList
Raise:NotFoundobjective_id not found
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_activities_for_objectives(objective_ids)

Gets the activities for the given objectives.

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

Parameters:objective_ids (osid.id.IdList) – list of objective Ids
Returns:list of activities
Return type:osid.learning.ActivityList
Raise:NotFound – an objective_id not found
Raise:NullArgumentobjective_id_list is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_activities_by_asset(asset_id)

Gets the activities for the given asset.

In plenary mode, the returned list contains all of the activities mapped to the asset Id or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Activities may be omitted from the list and may present the elements in any order including returning a unique set.

Parameters:asset_id (osid.id.Id) – Id of an Asset
Returns:list of activities
Return type:osid.learning.ActivityList
Raise:NotFoundasset_id not found
Raise:NullArgumentasset_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_activities_by_assets(asset_ids)

Gets the activities for the given asset.

In plenary mode, the returned list contains all of the activities mapped to the asset Id or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Activities may be omitted from the list and may present the elements in any order including returning a unique set.

Parameters:asset_ids (osid.id.IdList) – Ids of Assets
Returns:list of activities
Return type:osid.learning.ActivityList
Raise:NotFound – an asset_id not found
Raise:NullArgumentasset_id_list is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method is must be implemented.

ObjectiveBank.activities

Gets all Activities.

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

Returns:a ActivityList
Return type:osid.learning.ActivityList
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Activity Admin Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_create_activities()

Tests if this user can create Activities.

A return of true does not guarantee successful authorization. A return of false indicates that it is known creating an Activity will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer create operations to an unauthorized user.

Returns:false if Activity creation is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_create_activity_with_record_types(activity_record_types)

Tests if this user can create a single Activity using the desired record types.

While LearningManager.getActivityRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific Activity. Providing an empty array tests if an Activity can be created with no records.

Parameters:activity_record_types (osid.type.Type[]) – array of activity record types
Returns:true if Activity creation using the specified record Types is supported, false otherwise
Return type:boolean
Raise:NullArgumentactivity_record_types is null

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_activity_form_for_create(objective_id, activity_record_types)

Gets the activity form for creating new activities.

A new form should be requested for each create transaction.

Parameters:
  • objective_id (osid.id.Id) – the Id of the Objective
  • activity_record_types (osid.type.Type[]) – array of activity record types
Returns:

the activity form

Return type:

osid.learning.ActivityForm

Raise:

NotFoundobjective_id is not found

Raise:

NullArgumentobjective_id or activity_record_types is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

Raise:

Unsupported – unable to get form for requested record types

compliance: mandatory – This method must be implemented.

ObjectiveBank.create_activity(activity_form)

Creates a new Activity.

Parameters:activity_form (osid.learning.ActivityForm) – the form for this Activity
Returns:the new Activity
Return type:osid.learning.Activity
Raise:IllegalStateactivity_form already used in a create transaction
Raise:InvalidArgument – one or more of the form elements is invalid
Raise:NullArgumentactivity_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedactivity_form did not originate from get_activity_form_for_create()

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_update_activities()

Tests if this user can update Activities.

A return of true does not guarantee successful authorization. A return of false indicates that it is known updating an Activity will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer update operations to an unauthorized user.

Returns:false if activity modification is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_activity_form_for_update(activity_id)

Gets the activity form for updating an existing activity.

A new activity form should be requested for each update transaction.

Parameters:activity_id (osid.id.Id) – the Id of the Activity
Returns:the activity form
Return type:osid.learning.ActivityForm
Raise:NotFoundactivity_id is not found
Raise:NullArgumentactivity_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.update_activity(activity_form)

Updates an existing activity,.

Parameters:activity_form (osid.learning.ActivityForm) – the form containing the elements to be updated
Raise:IllegalStateactivity_form already used in an update transaction
Raise:InvalidArgument – the form contains an invalid value
Raise:NullArgumentactivity_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedactivity_form did not originate from get_activity_form_for_update()

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_delete_activities()

Tests if this user can delete Activities.

A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting an Activity will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer delete operations to an unauthorized user.

Returns:false if Activity deletion is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.delete_activity(activity_id)

Deletes the Activity identified by the given Id.

Parameters:activity_id (osid.id.Id) – the Id of the Activity to delete
Raise:NotFound – an Activity was not found identified by the given Id
Raise:NullArgumentactivity_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_manage_activity_aliases()

Tests if this user can manage Id aliases for activities.

A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.

Returns:false if Activity aliasing is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.alias_activity(activity_id, alias_id)

Adds an Id to an Activity for the purpose of creating compatibility.

The primary Id of the Activity is determined by the provider. The new Id performs as an alias to the primary Id. If the alias is a pointer to another activity, it is reassigned to the given activity Id.

Parameters:
  • activity_id (osid.id.Id) – the Id of an Activity
  • alias_id (osid.id.Id) – the alias Id
Raise:

AlreadyExistsalias_id is already assigned

Raise:

NotFoundactivity_id not found

Raise:

NullArgumentactivity_id or alias_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Activity Objective Bank Methods

ObjectiveBank.can_lookup_activity_objective_bank_mappings()

Tests if this user can perform lookups of activity/objective bank mappings.

A return of true does not guarantee successful authorization. A return of false indicates that it is known lookup methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

Returns:false if looking up mappings is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.use_comparative_objective_bank_view()

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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_plenary_objective_bank_view()

A complete view of the Activity and ObjectiveBank 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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_activity_ids_by_objective_bank(objective_bank_id)

Gets the list of Activity Ids associated with an ObjectiveBank.

Parameters:objective_bank_id (osid.id.Id) – Id of the ObjectiveBank
Returns:list of related activity Ids
Return type:osid.id.IdList
Raise:NotFoundobjective_bank_id is not found
Raise:NullArgumentobjective_bank_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_activities_by_objective_bank(objective_bank_id)

Gets the list of Activities associated with an ObjectiveBank.

Parameters:objective_bank_id (osid.id.Id) – Id of the ObjectiveBank
Returns:list of related activities
Return type:osid.learning.ActivityList
Raise:NotFoundobjective_bank_id is not found
Raise:NullArgumentobjective_bank_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_activity_ids_by_objective_banks(objective_bank_ids)

Gets the list of Activity Ids corresponding to a list of ObjectiveBanks.

Parameters:objective_bank_ids (osid.id.IdList) – list of objective bank Ids
Returns:list of activity Ids
Return type:osid.id.IdList
Raise:NullArgumentobjective_bank_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_activities_by_objective_banks(objective_bank_ids)

Gets the list of Activities corresponding to a list of ObjectiveBanks.

Parameters:objective_bank_ids (osid.id.IdList) – list of objective bank Ids
Returns:list of activities
Return type:osid.learning.ActivityList
Raise:NullArgumentobjective_bank_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objective_bank_ids_by_activity(activity_id)

Gets the list of ObjectiveBank Ids mapped to a Activity.

Parameters:activity_id (osid.id.Id) – Id of a Activity
Returns:list of objective bank Ids
Return type:osid.id.IdList
Raise:NotFoundactivity_id is not found
Raise:NullArgumentactivity_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_objective_banks_by_activity(activity_id)

Gets the list of ObjectiveBanks mapped to a Activity.

Parameters:activity_id (osid.id.Id) – Id of a Activity
Returns:list of objective bank Ids
Return type:osid.learning.ObjectiveBankList
Raise:NotFoundactivity_id is not found
Raise:NullArgumentactivity_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Activity Objective Bank Assignment Methods

ObjectiveBank.can_assign_activities()

Tests if this user can alter activity/objective bank mappings.

A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.

Returns:false if mapping is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_assign_activities_to_objective_bank(objective_bank_id)

Tests if this user can alter activity/objective bank mappings.

A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping methods in this session will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.

Parameters:objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
Returns:false if mapping is not authorized, true otherwise
Return type:boolean
Raise:NullArgumentobjective_bank_id is null

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_assignable_objective_bank_ids(objective_bank_id)

Gets a list of objective banks including and under the given objective bank node in which any activity can be assigned.

Parameters:objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
Returns:list of assignable objective bank Ids
Return type:osid.id.IdList
Raise:NullArgumentobjective_bank_id is null
Raise:OperationFailed – unable to complete request

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_assignable_objective_bank_ids_for_activity(objective_bank_id, activity_id)

Gets a list of objective banks including and under the given objective bank node in which a specific activity can be assigned.

Parameters:
  • objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
  • activity_id (osid.id.Id) – the Id of the Activity
Returns:

list of assignable objective bank Ids

Return type:

osid.id.IdList

Raise:

NullArgumentactivity_id or objective_bank_id is null

Raise:

OperationFailed – unable to complete request

compliance: mandatory – This method must be implemented.

ObjectiveBank.assign_activity_to_objective_bank(activity_id, objective_bank_id)

Adds an existing Activity to a ObjectiveBank.

Parameters:
  • activity_id (osid.id.Id) – the Id of the Activity
  • objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
Raise:

AlreadyExistsactivity_id already mapped to objective_bank_id

Raise:

NotFoundactivity_id or objective_bank_id not found

Raise:

NullArgumentactivity_id or objective_bank_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.unassign_activity_from_objective_bank(activity_id, objective_bank_id)

Removes a Activity from a ObjectiveBank.

Parameters:
  • activity_id (osid.id.Id) – the Id of the Activity
  • objective_bank_id (osid.id.Id) – the Id of the ObjectiveBank
Raise:

NotFoundactivity_id or objective_bank_id not found or activity_id not mapped to objective_bank_id

Raise:

NullArgumentactivity_id or objective_bank_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.reassign_activity_to_objective_bank(activity_id, from_objective_bank_id, to_objective_bank_id)

Moves an Activity from one ObjectiveBank to another.

Mappings to other ObjectiveBanks are unaffected.

Parameters:
  • activity_id (osid.id.Id) – the Id of the Activity
  • from_objective_bank_id (osid.id.Id) – the Id of the current ObjectiveBank
  • to_objective_bank_id (osid.id.Id) – the Id of the destination ObjectiveBank
Raise:

NotFoundactivity_id, from_objective_bank_id, or to_objective_bank_id not found or activity_id not mapped to from_objective_bank_id

Raise:

NullArgumentactivity_id, from_objective_bank_id, or to_objective_bank_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Proficiency Lookup Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_lookup_proficiencies()

Tests if this user can perform Proficiency 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 PermissionDenied. This is intended as a hint to an application that may not offer lookup operations to unauthorized users.

Returns:false if lookup methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.use_comparative_proficiency_view()

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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_plenary_proficiency_view()

A complete view of the Proficiency 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.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_federated_objective_bank_view()

Federates the view for methods in this session.

A federated view will include proficiencies in objective banks which are children of this objective bank in the obective bank hierarchy.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_isolated_objective_bank_view()

Isolates the view for methods in this session.

An isolated view restricts lookups to this objective bank only.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_effective_proficiency_view()

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

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_any_effective_proficiency_view()

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

compliance: mandatory – This method is must be implemented.

ObjectiveBank.get_proficiency(proficiency_id)

Gets the Proficiency specified by its Id.

Parameters:proficiency_id (osid.id.Id) – the Id of the Proficiency to retrieve
Returns:the returned Proficiency
Return type:osid.learning.Proficiency
Raise:NotFound – no Proficiency found with the given Id
Raise:NullArgumentproficiency_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_ids(proficiency_ids)

Gets a ProficiencyList corresponding to the given IdList.

Parameters:proficiency_ids (osid.id.IdList) – the list of Ids to retrieve
Returns:the returned Proficiency list
Return type:osid.learning.ProficiencyList
Raise:NotFound – an Id was not found
Raise:NullArgumentproficiency_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_genus_type(proficiency_genus_type)

Gets a ProficiencyList corresponding to the given proficiency genus Type which does not include proficiencies of types derived from the specified Type.

Parameters:proficiency_genus_type (osid.type.Type) – a proficiency genus type
Returns:the returned Proficiency list
Return type:osid.learning.ProficiencyList
Raise:NullArgumentproficiency_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_parent_genus_type(proficiency_genus_type)

Gets a ProficiencyList corresponding to the given proficiency genus Type and include any additional proficiencies with genus types derived from the specified Type.

Parameters:proficiency_genus_type (osid.type.Type) – a proficiency genus type
Returns:the returned Proficiency list
Return type:osid.learning.ProficiencyList
Raise:NullArgumentproficiency_genus_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_record_type(proficiency_record_type)

Gets a ProficiencyList containing the given proficiency record Type.

Parameters:proficiency_record_type (osid.type.Type) – a proficiency record type
Returns:the returned Proficiency list
Return type:osid.learning.ProficiencyList
Raise:NullArgumentproficiency_record_type is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_on_date(from_, to)

Gets a ProficiencyList effecyive during the entire given date range inclusive but not confined to the date range.

Parameters:
  • from (osid.calendaring.DateTime) – starting date
  • to (osid.calendaring.DateTime) – ending date
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

InvalidArgumentfrom is greater than to

Raise:

NullArgumentfrom or to is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_genus_type_on_date(proficiency_genus_type, from_, to)

Gets a ProficiencyList of the given proficiency genus type effective during the entire given date range inclusive but not confined to the date range.

Parameters:
  • proficiency_genus_type (osid.type.Type) – a proficiency genus type
  • from (osid.calendaring.DateTime) – starting date
  • to (osid.calendaring.DateTime) – ending date
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

InvalidArgumentfrom is greater than to

Raise:

NullArgumentproficiency_genus_type, from, or to is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_for_objective(objective_id)

Gets a ProficiencyList relating to the given objective.

Parameters:objective_id (osid.id.Id) – an objective Id
Returns:the returned Proficiency list
Return type:osid.learning.ProficiencyList
Raise:NullArgumentobjective_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_for_objective_on_date(objective_id, from_, to)

Gets a ProficiencyList relating to the given objective effective during the entire given date range inclusive but not confined to the date range.

Parameters:
  • objective_id (osid.id.Id) – an objective Id
  • from (osid.calendaring.DateTime) – starting date
  • to (osid.calendaring.DateTime) – ending date
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

InvalidArgumentfrom is greater than to

Raise:

NullArgumentobjective_id, from or to is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_genus_type_for_objective(objective_id, proficiency_genus_type)

Gets a ProficiencyList relating to the given objective and proficiency genus Type.

Parameters:
  • objective_id (osid.id.Id) – an objective Id
  • proficiency_genus_type (osid.type.Type) – a proficiency genus type
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

NullArgumentobjective_id or proficiency_genus_type is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_genus_type_for_objective_on_date(objective_id, proficiency_genus_type, from_, to)

Gets a ProficiencyList of the given proficiency genus type relating to the given objective effective during the entire given date range inclusive but not confined to the date range.

Parameters:
  • objective_id (osid.id.Id) – an objective Id
  • proficiency_genus_type (osid.type.Type) – a proficiency genus type
  • from (osid.calendaring.DateTime) – starting date
  • to (osid.calendaring.DateTime) – ending date
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

InvalidArgumentfrom is greater than to

Raise:

NullArgumentobjective_id, proficiency_genus_type, from, or to is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_for_objectives(objective_ids)

Gets a ProficiencyList relating to the given objectives.

Parameters:objective_ids (osid.id.IdList) – the objective Ids
Returns:the returned Proficiency list
Return type:osid.learning.ProficiencyList
Raise:NullArgumentobjective_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_for_resource(resource_id)

Gets a ProficiencyList relating to the given resource.

Parameters:resource_id (osid.id.Id) – a resource Id
Returns:the returned Proficiency list
Return type:osid.learning.ProficiencyList
Raise:NullArgumentresource_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_for_resource_on_date(resource_id, from_, to)

Gets a ProficiencyList relating to the given resource effective during the entire given date range inclusive but not confined to the date range.

Parameters:
  • resource_id (osid.id.Id) – a resource Id
  • from (osid.calendaring.DateTime) – starting date
  • to (osid.calendaring.DateTime) – ending date
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

InvalidArgumentfrom is greater than to

Raise:

NullArgumentresource_id, from or to is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_genus_type_for_resource(resource_id, proficiency_genus_type)

Gets a ProficiencyList relating to the given resource and proficiency genus Type.

Parameters:
  • resource_id (osid.id.Id) – a resource Id
  • proficiency_genus_type (osid.type.Type) – a proficiency genus type
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

NullArgumentresource_id or proficiency_genus_type is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_genus_type_for_resource_on_date(resource_id, proficiency_genus_type, from_, to)

Gets a ProficiencyList of the given proficiency genus type relating to the given resource effective during the entire given date range inclusive but not confined to the date range.

Parameters:
  • resource_id (osid.id.Id) – a resource Id
  • proficiency_genus_type (osid.type.Type) – a proficiency genus type
  • from (osid.calendaring.DateTime) – starting date
  • to (osid.calendaring.DateTime) – ending date
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

InvalidArgumentfrom is greater than to

Raise:

NullArgumentresource_id, proficiency_genus_type, from or to is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_for_resources(resource_ids)

Gets a ProficiencyList relating to the given resources.

Parameters:resource_ids (osid.id.IdList) – the resource Ids
Returns:the returned Proficiency list
Return type:osid.learning.ProficiencyList
Raise:NullArgumentresource_ids is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_for_objective_and_resource(objective_id, resource_id)

Gets a ProficiencyList relating to the given objective and resource ````.

Parameters:
  • objective_id (osid.id.Id) – an objective Id
  • resource_id (osid.id.Id) – a resource Id
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

NullArgumentobjective_id or resource_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_for_objective_and_resource_on_date(objective_id, resource_id, from_, to)

Gets a ProficiencyList relating to the given resource and objective effective during the entire given date range inclusive but not confined to the date range.

Parameters:
  • objective_id (osid.id.Id) – an objective Id
  • resource_id (osid.id.Id) – a resource Id
  • from (osid.calendaring.DateTime) – starting date
  • to (osid.calendaring.DateTime) – ending date
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

InvalidArgumentfrom is greater than to

Raise:

NullArgumentobjective_id, resource_id, from or to is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_genus_type_for_objective_and_resource(objective_id, resource_id, proficiency_genus_type)

Gets a ProficiencyList of the given genus type relating to the given objective and resource ````.

Parameters:
  • objective_id (osid.id.Id) – an objective Id
  • resource_id (osid.id.Id) – a resource Id
  • proficiency_genus_type (osid.type.Type) – a proficiency genus type
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

NullArgumentobjective_id, resource_id or proficiency_genus_type is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_genus_type_for_objective_and_resource_on_date(objective_id, resource_id, proficiency_genus_type, from_, to)

Gets a ProficiencyList of the given genus type relating to the given resource and objective effective during the entire given date range inclusive but not confined to the date range.

Parameters:
  • objective_id (osid.id.Id) – an objective Id
  • resource_id (osid.id.Id) – a resource Id
  • proficiency_genus_type (osid.type.Type) – a proficiency genus type
  • from (osid.calendaring.DateTime) – starting date
  • to (osid.calendaring.DateTime) – ending date
Returns:

the returned Proficiency list

Return type:

osid.learning.ProficiencyList

Raise:

InvalidArgumentfrom is greater than to

Raise:

NullArgumentobjective_id, resource_id, proficiency_genus_type, from or to is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.proficiencies

Gets all Proficiencies.

Returns:a list of Proficiencies
Return type:osid.learning.ProficiencyList
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

Proficiency Query Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_search_proficiencies()

Tests if this user can perform Proficiency 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 PermissionDenied. This is intended as a hint to an application that may not offer lookup operations to unauthorized users.

Returns:false if search methods are not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.use_federated_objective_bank_view()

Federates the view for methods in this session.

A federated view will include proficiencies in objective banks which are children of this objective bank in the obective bank hierarchy.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.use_isolated_objective_bank_view()

Isolates the view for methods in this session.

An isolated view restricts lookups to this objective bank only.

compliance: mandatory – This method is must be implemented.

ObjectiveBank.proficiency_query

Gets a proficiency query.

Returns:the proficiency query
Return type:osid.learning.ProficiencyQuery

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiencies_by_query(proficiency_query)

Gets a list of Proficiencies matching the given proficiency query.

Parameters:proficiency_query (osid.learning.ProficiencyQuery) – the proficiency query
Returns:the returned ProficiencyList
Return type:osid.learning.ProficiencyList
Raise:NullArgumentproficiency_query is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedproficiency_query is not of this service

compliance: mandatory – This method must be implemented.

Proficiency Admin Methods

ObjectiveBank.objective_bank_id

Gets the ObjectiveBank Id associated with this session.

Returns:the ObjectiveBank Id associated with this session
Return type:osid.id.Id

compliance: mandatory – This method must be implemented.

ObjectiveBank.objective_bank

Gets the ObjectiveBank associated with this session.

Returns:the obective bank
Return type:osid.learning.ObjectiveBank
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_create_proficiencies()

Tests if this user can create Proficiencies.

A return of true does not guarantee successful authorization. A return of false indicates that it is known creating a Proficiency will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer create operations to an unauthorized user.

Returns:false if Proficiency creation is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_create_proficiency_with_record_types(proficiency_record_types)

Tests if this user can create a single Proficiency using the desired record types.

While LearningManager.getProficiencyRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific Proficiency. Providing an empty array tests if a Proficiency can be created with no records.

Parameters:proficiency_record_types (osid.type.Type[]) – array of proficiency record types
Returns:true if Proficiency creation using the specified record Types is supported, false otherwise
Return type:boolean
Raise:NullArgumentproficiency_record_types is null

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiency_form_for_create(objective_id, resource_id, proficiency_record_types)

Gets the proficiency form for creating new proficiencies.

A new form should be requested for each create transaction.

Parameters:
  • objective_id (osid.id.Id) – the Id of the Objective
  • resource_id (osid.id.Id) – the Id of the Resource
  • proficiency_record_types (osid.type.Type[]) – array of proficiency record types
Returns:

the proficiency form

Return type:

osid.learning.ProficiencyForm

Raise:

NotFoundobjective_id or resource_id is not found

Raise:

NullArgumentobjective_id, resource_id, or proficieny_record_types is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

Raise:

Unsupported – unable to get form for requested record types

compliance: mandatory – This method must be implemented.

ObjectiveBank.create_proficiency(proficiency_form)

Creates a new Proficiency.

A new form should be requested for each create transaction.

Parameters:proficiency_form (osid.learning.ProficiencyForm) – the form for this Proficiency
Returns:the new Proficiency
Return type:osid.learning.Proficiency
Raise:IllegalStateproficiency_form already used in a create transaction
Raise:InvalidArgument – one or more of the form elements is invalid
Raise:NullArgumentproficiency_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedproficiency_form did not originate from get_proficiency_form_for_create()

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_update_proficiencies()

Tests if this user can update Proficiencies.

A return of true does not guarantee successful authorization. A return of false indicates that it is known updating a Proficiency will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer update operations to an unauthorized user.

Returns:false if Proficiency modification is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.get_proficiency_form_for_update(proficiency_id)

Gets the proficiency form for updating an existing proficiency.

Parameters:proficiency_id (osid.id.Id) – the Id of the Proficiency
Returns:the proficiency form
Return type:osid.learning.ProficiencyForm
Raise:NotFoundproficiency_id is not found
Raise:NullArgumentproficiency_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.update_proficiency(proficiency_form)

Updates an existing proficiency.

Parameters:proficiency_form (osid.learning.ProficiencyForm) – the form containing the elements to be updated
Raise:IllegalStateproficiency_form already used in an update transaction
Raise:InvalidArgument – the form contains an invalid value
Raise:NullArgumentproficiency_form is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure
Raise:Unsupportedproficiency_form did not originate from get_proficiency_form_for_update()

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_delete_proficiencies()

Tests if this user can delete Proficiencies.

A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting a Proficiency will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer delete operations to an unauthorized user.

Returns:false if Proficiency deletion is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.delete_proficiency(proficiency_id)

Deletes a Proficiency.

Parameters:proficiency_id (osid.id.Id) – the Id of the Proficiency to remove
Raise:NotFoundproficiency_id not found
Raise:NullArgumentproficiency_id is null
Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.delete_proficiencies()

Deletes all proficiencies in this ObjectiveBank.

Raise:OperationFailed – unable to complete request
Raise:PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.

ObjectiveBank.can_manage_proficiency_aliases()

Tests if this user can manage Id aliases for proficiency entries.

A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in a PermissionDenied. This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.

Returns:false if Proficiency aliasing is not authorized, true otherwise
Return type:boolean

compliance: mandatory – This method must be implemented.

ObjectiveBank.alias_proficiency(proficiency_id, alias_id)

Adds an Id to a Proficiency for the purpose of creating compatibility.

The primary Id of the Proficiency is determined by the provider. The new Id performs as an alias to the primary Id. If the alias is a pointer to another proficiency, it is reassigned to the given proficiency Id.

Parameters:
  • proficiency_id (osid.id.Id) – the Id of a Proficiency
  • alias_id (osid.id.Id) – the alias Id
Raise:

AlreadyExistsalias_id is already assigned

Raise:

NotFoundproficiency_id not found

Raise:

NullArgumentproficiency_id or alias_id is null

Raise:

OperationFailed – unable to complete request

Raise:

PermissionDenied – authorization failure

compliance: mandatory – This method must be implemented.