Learning Open Service Interface Definitions learning version 3.0.0
The Learning OSID manages learning objectives. A learning Objective
describes measurable learning goals.
Objectives
Objectives describe measurable learning goals. A learning objective
may be measured by a related Assesment. Objectives may be
mapped to levels, A level is represented by a Grade which is used to
indicate a grade level or level of difficulty.
Objectives are hierarchical. An Objective with children
represents an objective that is inclusive of all its children. For
example, an Objective that represents learning in arithmetic may be
composed of objectives that represent learning in both addition and
subtraction.
Objectives may also have requisites. A requisite objective is one
that should be achieved before an objective is attempted.
Activities
An Activity describes actions that one can do to meet a learning
objective. An Activity includes a list of Assets to read or
watch, or a list of Courses to take, or a list of learning
Assessments to practice. An Activity may also represent other
learning activities such as taking a course or practicing an instrument.
An Activity is specific to an Objective where the reusability is
achieved based on what the Activity relates.
Proficiencies
A Proficiency is an OsidRelationship measuring the competence of
a Resource with respect to an Objective.
Objective Bank Cataloging
Objectives, Activities, and Proficiencies can be organized into
hierarchical ObjectiveBanks for the purposes of categorization and
federation.
Concept Mapping
A concept can be modeled as a learning Objective without any related
Assessment or Activities. In this scenario, an Objective
looks much like the simpler Subject in the Ontology OSID. The
Ontology OSID is constrained to qualifying concepts while the relations
found in an Objective allow for the quantification of the learning
concept and providing paths to self-learning.
The Topology OSID may also be used to construct and view a concept map.
While a Topology OSID Provider may be adapted from a Learning OSID or an
Ontology OSID, the topology for either would be interpreted from a
multi-parented hierarchy of the Objectives and Subjects
respectively.
Courses
The Learning OSID may be used in conjunction with the Course OSID to identify dsired learning oitcomes from a course or to align the course activities and syllabus with stated learning objectives. The Course OSID describes learning from a structured curriculum management point of view where the Learning OSID and allows for various objectives to be combined and related without any regard to a prescribed curriculum.
Sub Packages
The Learning OSID contains a Learning Batch OSID for bulk management of
Objectives, Activities, and Proficiencies .
Service Managers¶
Learning Manager¶
-
class
dlkit.services.learning.LearningManager¶ Bases:
dlkit.osid.managers.OsidManager,dlkit.osid.sessions.OsidSession,dlkit.services.learning.LearningProfile-
learning_batch_manager¶ Gets a
LearningBatchManager.Returns: a LearningBatchManagerReturn type: osid.learning.batch.LearningBatchManagerRaise: OperationFailed– unable to complete requestRaise: Unimplemented–supports_learning_batch() is false
-
Learning Profile Methods¶
LearningManager.supports_objective_lookup()¶Tests if an objective lookup service is supported. An objective lookup service defines methods to access objectives.
Returns: true if objective lookup is supported, false otherwise Return type: boolean
LearningManager.supports_objective_admin()¶Tests if an objective administrative service is supported.
Returns: trueif objective admin is supported,falseotherwiseReturn type: boolean
LearningManager.supports_objective_hierarchy()¶Tests if an objective hierarchy traversal is supported.
Returns: trueif an objective hierarchy traversal is supported,falseotherwiseReturn type: boolean
LearningManager.supports_objective_hierarchy_design()¶Tests if an objective hierarchy design is supported.
Returns: trueif an objective hierarchy design is supported,falseotherwiseReturn type: boolean
LearningManager.supports_objective_sequencing()¶Tests if an objective sequencing design is supported.
Returns: trueif objective sequencing is supported,falseotherwiseReturn type: boolean
LearningManager.supports_objective_requisite()¶Tests if an objective requisite service is supported.
Returns: trueif objective requisite service is supported,falseotherwiseReturn type: boolean
LearningManager.supports_objective_requisite_assignment()¶Tests if an objective requisite assignment service is supported.
Returns: trueif objective requisite assignment service is supported,falseotherwiseReturn type: boolean
LearningManager.supports_activity_lookup()¶Tests if an activity lookup service is supported.
Returns: trueif activity lookup is supported,falseotherwiseReturn type: boolean
LearningManager.supports_activity_admin()¶Tests if an activity administrative service is supported.
Returns: trueif activity admin is supported,falseotherwiseReturn type: boolean
LearningManager.supports_objective_bank_lookup()¶Tests if an objective bank lookup service is supported.
Returns: trueif objective bank lookup is supported,falseotherwiseReturn type: boolean
LearningManager.supports_objective_bank_admin()¶Tests if an objective bank administrative service is supported.
Returns: trueif objective bank admin is supported,falseotherwiseReturn type: boolean
LearningManager.supports_objective_bank_hierarchy()¶Tests if an objective bank hierarchy traversal is supported.
Returns: trueif an objective bank hierarchy traversal is supported,falseotherwiseReturn type: boolean
LearningManager.supports_objective_bank_hierarchy_design()¶Tests if objective bank hierarchy design is supported.
Returns: trueif an objective bank hierarchy design is supported,falseotherwiseReturn type: boolean
LearningManager.objective_record_types¶Gets the supported
Objectiverecord types.
Returns: a list containing the supported Objectiverecord typesReturn type: osid.type.TypeList
LearningManager.objective_search_record_types¶Gets the supported
Objectivesearch record types.
Returns: a list containing the supported Objectivesearch record typesReturn type: osid.type.TypeList
LearningManager.activity_record_types¶Gets the supported
Activityrecord types.
Returns: a list containing the supported Activityrecord typesReturn type: osid.type.TypeList
LearningManager.activity_search_record_types¶Gets the supported
Activitysearch record types.
Returns: a list containing the supported Activitysearch record typesReturn type: osid.type.TypeList
LearningManager.proficiency_record_types¶Gets the supported
Proficiencyrecord types.
Returns: a list containing the supported Proficiencyrecord typesReturn type: osid.type.TypeList
LearningManager.proficiency_search_record_types¶Gets the supported
Proficiencysearch types.
Returns: a list containing the supported Proficiencysearch typesReturn type: osid.type.TypeList
LearningManager.objective_bank_record_types¶Gets the supported
ObjectiveBankrecord types.
Returns: a list containing the supported ObjectiveBankrecord typesReturn type: osid.type.TypeList
LearningManager.objective_bank_search_record_types¶Gets the supported objective bank search record types.
Returns: a list containing the supported ObjectiveBanksearch record typesReturn type: osid.type.TypeList
Objective Bank Lookup Methods¶
LearningManager.can_lookup_objective_banks()¶Tests if this user can perform
ObjectiveBanklookups. 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 aPermissionDenied. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.
Returns: falseif lookup methods are not authorized,trueotherwiseReturn type: boolean
LearningManager.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.
LearningManager.use_plenary_objective_bank_view()¶A complete view of the
ObjectiveBankreturns 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.
LearningManager.get_objective_banks_by_ids(objective_bank_ids)¶Gets a
ObjectiveBankListcorresponding to the givenIdList. In plenary mode, the returned list contains all of the objective banks specified in theIdlist, in the order of the list, including duplicates, or an error results if anIdin the supplied list is not found or inaccessible. Otherwise, inaccessibleObjectiveBankobjects may be omitted from the list and may present the elements in any order including returning a unique set.
Parameters: objective_bank_ids ( osid.id.IdList) – the list ofIdsto retrieveReturns: the returned ObjectiveBanklistReturn type: osid.learning.ObjectiveBankListRaise: NotFound– anId wasnot foundRaise: NullArgument–objective_bank_idsisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.get_objective_banks_by_genus_type(objective_bank_genus_type)¶Gets a
ObjectiveBankListcorresponding to the given objective bank genusTypewhich does not include objective banks of types derived from the specifiedType. In plenary mode, the returned list contains all known objective banks or an error results. Otherwise, the returned list may contain only those objective banks that are accessible through this session.
Parameters: objective_bank_genus_type ( osid.type.Type) – an objective bank genus typeReturns: the returned ObjectiveBanklistReturn type: osid.learning.ObjectiveBankListRaise: NullArgument–objective_bank_genus_typeisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.get_objective_banks_by_parent_genus_type(objective_bank_genus_type)¶Gets a
ObjectiveBankListcorresponding to the given objective bank genusTypeand include any additional objective banks with genus types derived from the specifiedType. In plenary mode, the returned list contains all known objective banks or an error results. Otherwise, the returned list may contain only those objective banks that are accessible through this session.
Parameters: objective_bank_genus_type ( osid.type.Type) – an objective bank genus typeReturns: the returned ObjectiveBanklistReturn type: osid.learning.ObjectiveBankListRaise: NullArgument–objective_bank_genus_typeisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.get_objective_banks_by_record_type(objective_bank_record_type)¶Gets a
ObjectiveBankListcontaining the given objective bank recordType. In plenary mode, the returned list contains all known objective banks or an error results. Otherwise, the returned list may contain only those objective banks that are accessible through this session.
Parameters: objective_bank_record_type ( osid.type.Type) – an objective bank record typeReturns: the returned ObjectiveBanklistReturn type: osid.learning.ObjectiveBankListRaise: NullArgument–objective_bank_record_typeisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.get_objective_banks_by_provider(resource_id)¶Gets a
ObjectiveBankListfor the given provider. In plenary mode, the returned list contains all known objective banks or an error results. Otherwise, the returned list may contain only those objective banks that are accessible through this session.
Parameters: resource_id ( osid.id.Id) – a resourceIdReturns: the returned ObjectiveBanklistReturn type: osid.learning.ObjectiveBankListRaise: NullArgument–resource_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.objective_banks¶Gets all
ObjectiveBanks. In plenary mode, the returned list contains all known objective banks or an error results. Otherwise, the returned list may contain only those objective banks that are accessible through this session.
Returns: a ObjectiveBankListReturn type: osid.learning.ObjectiveBankListRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
Objective Bank Admin Methods¶
LearningManager.can_create_objective_banks()¶Tests if this user can create
ObjectiveBanks. A return of true does not guarantee successful authorization. A return of false indicates that it is known creating anObjectiveBankwill result in aPermissionDenied. This is intended as a hint to an application that may not wish to offer create operations to unauthorized users.
Returns: falseifObjectiveBankcreation is not authorized,trueotherwiseReturn type: boolean
LearningManager.can_create_objective_bank_with_record_types(objective_bank_record_types)¶Tests if this user can create a single
ObjectiveBankusing the desired record types. WhileLearningManager.getObjectiveBankRecordTypes()can be used to examine which records are supported, this method tests which record(s) are required for creating a specificObjectiveBank. Providing an empty array tests if anObjectiveBankcan be created with no records.
Parameters: objective_bank_record_types ( osid.type.Type[]) – array of objective bank record typesReturns: trueifObjectiveBankcreation using the specifiedTypesis supported,falseotherwiseReturn type: booleanRaise: NullArgument–objective_bank_record_typesisnull
LearningManager.get_objective_bank_form_for_create(objective_bank_record_types)¶Gets the objective bank form for creating new objective banks. A new form should be requested for each create transaction.
Parameters: objective_bank_record_types ( osid.type.Type[]) – array of objective bank record typesReturns: the objective bank form Return type: osid.learning.ObjectiveBankFormRaise: NullArgument–objective_bank_record_typesisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failureRaise: Unsupported– unable to get form for requested record types.
LearningManager.create_objective_bank(objective_bank_form)¶Creates a new
ObjectiveBank.
Parameters: objective_bank_form ( osid.learning.ObjectiveBankForm) – the form for thisObjectiveBankReturns: the new ObjectiveBankReturn type: osid.learning.ObjectiveBankRaise: IllegalState–objective_bank_formalready used in a create transactionRaise: InvalidArgument– one or more of the form elements is invalidRaise: NullArgument–objective_bank_formisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failureRaise: Unsupported–objective_bank_formdid not originate fromget_objective_bank_form_for_create()
LearningManager.can_update_objective_banks()¶Tests if this user can update
ObjectiveBanks. A return of true does not guarantee successful authorization. A return of false indicates that it is known updating anObjectiveBankwill result in aPermissionDenied. This is intended as a hint to an application that may not wish to offer update operations to unauthorized users.
Returns: falseifObjectiveBankmodification is not authorized,trueotherwiseReturn type: boolean
LearningManager.get_objective_bank_form_for_update(objective_bank_id)¶Gets the objective bank form for updating an existing objective bank. A new objective bank form should be requested for each update transaction.
Parameters: objective_bank_id ( osid.id.Id) – theIdof theObjectiveBankReturns: the objective bank form Return type: osid.learning.ObjectiveBankFormRaise: NotFound–objective_bank_idis not foundRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.update_objective_bank(objective_bank_form)¶Updates an existing objective bank.
Parameters: objective_bank_form ( osid.learning.ObjectiveBankForm) – the form containing the elements to be updatedRaise: IllegalState–objective_bank_formalready used in an update transactionRaise: InvalidArgument– the form contains an invalid valueRaise: NullArgument–objective_bank_formisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failureRaise: Unsupported–objective_bank_form did not originate from get_objective_bank_form_for_update()
LearningManager.can_delete_objective_banks()¶Tests if this user can delete objective banks. A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting an
ObjectiveBankwill result in aPermissionDenied. This is intended as a hint to an application that may not wish to offer delete operations to unauthorized users.
Returns: falseifObjectiveBankdeletion is not authorized,trueotherwiseReturn type: boolean
LearningManager.delete_objective_bank(objective_bank_id)¶Deletes an
ObjectiveBank.
Parameters: objective_bank_id ( osid.id.Id) – theIdof theObjectiveBankto removeRaise: NotFound–objective_bank_idnot foundRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.can_manage_objective_bank_aliases()¶Tests if this user can manage
Idaliases forObjectiveBanks. A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in aPermissionDenied. This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.
Returns: falseifObjectiveBankaliasing is not authorized,trueotherwiseReturn type: boolean
LearningManager.alias_objective_bank(objective_bank_id, alias_id)¶Adds an
Idto anObjectiveBankfor the purpose of creating compatibility. The primaryIdof theObjectiveBankis determined by the provider. The newIdperforms as an alias to the primaryId. If the alias is a pointer to another objective bank, it is reassigned to the given objective bankId.
Parameters:
- objective_bank_id (
osid.id.Id) – theIdof anObjectiveBank- alias_id (
osid.id.Id) – the aliasIdRaise:
AlreadyExists–alias_idis already assignedRaise:
NotFound–objective_bank_idnot foundRaise:
NullArgument–objective_bank_idoralias_idisnullRaise:
OperationFailed– unable to complete requestRaise:
PermissionDenied– authorization failure
Objective Bank Hierarchy Methods¶
LearningManager.objective_bank_hierarchy_id¶Gets the hierarchy
Idassociated with this session.
Returns: the hierarchy Idassociated with this sessionReturn type: osid.id.Id
LearningManager.objective_bank_hierarchy¶Gets the hierarchy associated with this session.
Returns: the hierarchy associated with this session Return type: osid.hierarchy.HierarchyRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.can_access_objective_bank_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: falseif hierarchy traversal methods are not authorized,trueotherwiseReturn type: boolean
LearningManager.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.
LearningManager.use_plenary_objective_bank_view()A complete view of the
ObjectiveBankreturns 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.
LearningManager.root_objective_bank_ids¶Gets the root objective bank
Idsin this hierarchy.
Returns: the root objective bank IdsReturn type: osid.id.IdListRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.root_objective_banks¶Gets the root objective banks in this objective bank hierarchy.
Returns: the root objective banks Return type: osid.learning.ObjectiveBankListRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.has_parent_objective_banks(objective_bank_id)¶Tests if the
ObjectiveBankhas any parents.
Parameters: objective_bank_id ( osid.id.Id) – theIdof an objective bankReturns: trueif the objective bank has parents,falseotherwiseReturn type: booleanRaise: NotFound–objective_bank_idis not foundRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.is_parent_of_objective_bank(id_, objective_bank_id)¶Tests if an
Idis a direct parent of an objective bank.
Parameters:
- id (
osid.id.Id) – anId- objective_bank_id (
osid.id.Id) – theIdof an objective bankReturns:
trueif thisidis a parent ofobjective_bank_id,falseotherwiseReturn type:
booleanRaise:
NotFound–objective_bank_idis not foundRaise:
NullArgument–idorobjective_bank_idisnullRaise:
OperationFailed– unable to complete requestRaise:
PermissionDenied– authorization failure
LearningManager.get_parent_objective_bank_ids(objective_bank_id)¶Gets the parent
Idsof the given objective bank.
Parameters: objective_bank_id ( osid.id.Id) – theIdof an objective bankReturns: the parent Idsof the objective bankReturn type: osid.id.IdListRaise: NotFound–objective_bank_idis not foundRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.get_parent_objective_banks(objective_bank_id)¶Gets the parents of the given objective bank.
Parameters: objective_bank_id ( osid.id.Id) – theIdof an objective bankReturns: the parents of the objective bank Return type: osid.learning.ObjectiveBankListRaise: NotFound–objective_bank_idis not foundRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.is_ancestor_of_objective_bank(id_, objective_bank_id)¶Tests if an
Idis an ancestor of an objective bank.
Parameters:
- id (
osid.id.Id) – anId- objective_bank_id (
osid.id.Id) – theIdof an objective bankReturns:
trueif thisidis an ancestor ofobjective_bank_id,falseotherwiseReturn type:
booleanRaise:
NotFound–objective_bank_idis not foundRaise:
NullArgument–idorobjective_bank_idisnullRaise:
OperationFailed– unable to complete requestRaise:
PermissionDenied– authorization failure
LearningManager.has_child_objective_banks(objective_bank_id)¶Tests if an objective bank has any children.
Parameters: objective_bank_id ( osid.id.Id) – theIdof an objective bankReturns: trueif theobjective_bank_idhas children,falseotherwiseReturn type: booleanRaise: NotFound–objective_bank_idis not foundRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.is_child_of_objective_bank(id_, objective_bank_id)¶Tests if an objective bank is a direct child of another.
Parameters:
- id (
osid.id.Id) – anId- objective_bank_id (
osid.id.Id) – theIdof an objective bankReturns:
trueif theidis a child ofobjective_bank_id,falseotherwiseReturn type:
booleanRaise:
NotFound–objective_bank_idis not foundRaise:
NullArgument–idorobjective_bank_idisnullRaise:
OperationFailed– unable to complete requestRaise:
PermissionDenied– authorization failure
LearningManager.get_child_objective_bank_ids(objective_bank_id)¶Gets the child
Idsof the given objective bank.
Parameters: objective_bank_id ( osid.id.Id) – theIdto queryReturns: the children of the objective bank Return type: osid.id.IdListRaise: NotFound–objective_bank_idis not foundRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.get_child_objective_banks(objective_bank_id)¶Gets the children of the given objective bank.
Parameters: objective_bank_id ( osid.id.Id) – theIdto queryReturns: the children of the objective bank Return type: osid.learning.ObjectiveBankListRaise: NotFound–objective_bank_idis not foundRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.is_descendant_of_objective_bank(id_, objective_bank_id)¶Tests if an
Idis a descendant of an objective bank.
Parameters:
- id (
osid.id.Id) – anId- objective_bank_id (
osid.id.Id) – theIdof an objective bankReturns:
trueif theidis a descendant of theobjective_bank_id,falseotherwiseReturn type:
booleanRaise:
NotFound–objective_bank_idis not foundRaise:
NullArgument–idorobjective_bank_idisnullRaise:
OperationFailed– unable to complete requestRaise:
PermissionDenied– authorization failure
LearningManager.get_objective_bank_node_ids(objective_bank_id, ancestor_levels, descendant_levels, include_siblings)¶Gets a portion of the hierarchy for the given objective bank.
Parameters:
- objective_bank_id (
osid.id.Id) – theIdto 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) –trueto include the siblings of the given node,falseto omit the siblingsReturns: a catalog node
Return type:
osid.hierarchy.NodeRaise:
NotFound–objective_bank_idnot foundRaise:
NullArgument–objective_bank_idisnullRaise:
OperationFailed– unable to complete requestRaise:
PermissionDenied– authorization failure
LearningManager.get_objective_bank_nodes(objective_bank_id, ancestor_levels, descendant_levels, include_siblings)¶Gets a portion of the hierarchy for the given objective bank.
Parameters:
- objective_bank_id (
osid.id.Id) – theIdto 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) –trueto include the siblings of the given node,falseto omit the siblingsReturns: an objective bank node
Return type:
osid.learning.ObjectiveBankNodeRaise:
NotFound–objective_bank_idnot foundRaise:
NullArgument–objective_bank_idisnullRaise:
OperationFailed– unable to complete requestRaise:
PermissionDenied– authorization failure
Objective Bank Hierarchy Design Methods¶
LearningManager.objective_bank_hierarchy_idGets the hierarchy
Idassociated with this session.
Returns: the hierarchy Idassociated with this sessionReturn type: osid.id.Id
LearningManager.objective_bank_hierarchyGets the hierarchy associated with this session.
Returns: the hierarchy associated with this session Return type: osid.hierarchy.HierarchyRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.can_modify_objective_bank_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: falseif changing this hierarchy is not authorized,trueotherwiseReturn type: boolean
LearningManager.add_root_objective_bank(objective_bank_id)¶Adds a root objective bank.
Parameters: objective_bank_id ( osid.id.Id) – theIdof an objective bankRaise: AlreadyExists–objective_bank_idis already in hierarchyRaise: NotFound–objective_bank_idnot foundRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.remove_root_objective_bank(objective_bank_id)¶Removes a root objective bank.
Parameters: objective_bank_id ( osid.id.Id) – theIdof an objective bankRaise: NotFound–objective_bank_idis not a rootRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure
LearningManager.add_child_objective_bank(objective_bank_id, child_id)¶Adds a child to an objective bank.
Parameters:
- objective_bank_id (
osid.id.Id) – theIdof an objective bank- child_id (
osid.id.Id) – theIdof the new childRaise:
AlreadyExists–objective_bank_idis already a parent ofchild_idRaise:
NotFound–objective_bank_idorchild_idnot foundRaise:
NullArgument–objective_bank_idorchild_idisnullRaise:
OperationFailed– unable to complete requestRaise:
PermissionDenied– authorization failure
LearningManager.remove_child_objective_bank(objective_bank_id, child_id)¶Removes a child from an objective bank.
Parameters:
- objective_bank_id (
osid.id.Id) – theIdof an objective bank- child_id (
osid.id.Id) – theIdof the childRaise:
NotFound–objective_bank_idnot a parent ofchild_idRaise:
NullArgument–objective_bank_idorchild_idisnullRaise:
OperationFailed– unable to complete requestRaise:
PermissionDenied– authorization failure
LearningManager.remove_child_objective_banks(objective_bank_id)¶Removes all children from an objective bank.
Parameters: objective_bank_id ( osid.id.Id) – theIdof an objective bankRaise: NotFound–objective_bank_idnot in hierarchyRaise: NullArgument–objective_bank_idisnullRaise: OperationFailed– unable to complete requestRaise: PermissionDenied– authorization failure