OSID Logo
OSID Specifications
ontology package
Version 3.0.0
Interfaceosid.ontology.SubjectHierarchyDesignSession
Implementsosid.OsidSession
Used Byosid.ontology.OntologyManager
osid.ontology.OntologyProxyManager
Description

This session defines methods for managing a hierarchy of Subject objects. Each node in the hierarchy is a unique Subject .

MethodgetSubjectHierarchyId
Description

Gets the hierarchy Id associated with this session.

Returnosid.id.Idthe hierarchy Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetSubjectHierarchy
Description

Gets the hierarchy associated with this session.

Returnosid.hierarchy.Hierarchythe hierarchy associated with this session
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanModifySubjectHierarchy
Description

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

Returnbooleanfalse if changing this hierarchy is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodaddRootSubject
Description

Adds a root subject.

Parametersosid.id.IdsubjectIdthe Id of a subject
ErrorsALREADY_EXISTSsubjectId is already in hierarchy
NOT_FOUNDsubjectId not found
NULL_ARGUMENTsubjectId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveRootSubject
Description

Removes a root subject.

Parametersosid.id.IdsubjectIdthe Id of a subject
ErrorsNOT_FOUNDsubjectId not found
NULL_ARGUMENTsubjectId is null
OPERATION_FAILEDthe root subjects
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodaddChildSubject
Description

Adds a child to a subject.

Parametersosid.id.IdsubjectIdthe Id of a subject
osid.id.IdchildIdthe Id of the new child
ErrorsALREADY_EXISTSsubjectId is already a parent of childId
NOT_FOUNDsubjectId or childId not found
NULL_ARGUMENTsubjectId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildSubject
Description

Removes a child from a subject.

Parametersosid.id.IdsubjectIdthe Id of a subject
osid.id.IdchildIdthe Id of the new child
ErrorsNOT_FOUNDsubjectId not a parent of childId
NULL_ARGUMENTsubjectId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildSubjects
Description

Removes all children from a subject.

Parametersosid.id.IdsubjectIdthe Id of a subject
ErrorsNOT_FOUNDsubjectId not found
NULL_ARGUMENTsubjectId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.