Interface CatalogHierarchySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface CatalogHierarchySession extends OsidSession

This session defines methods for traversing a hierarchy of Catalogs . Each node in the hierarchy is a unique Catalog . The hierarchy may be traversed recursively to establish the tree structure through getParentCatalogs() and getChildCatalogs() . To relate these Ids to another OSID, getCatalogNodes() can be used for retrievals that can be used for bulk lookups in other OSIDs. Any Catalog available in the Catalog OSID is known to this hierarchy but does not appear in the hierarchy traversal until added as a root node or a child of another node.

A user may not be authorized to traverse the entire hierarchy. Parts of the hierarchy may be made invisible through omission from the returns of getParentCatalogs() or getChildCatalogs() in lieu of a PERMISSION_DENIED error that may disrupt the traversal through authorized pathways.

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

  • comparative view: catalog elements may be silently omitted or re-ordered
  • plenary view: provides a complete set or is an error condition