The Namespace interface contains specifications for namespace types and generic namespace traversal.
The namespace is a directed graph structure linking published objects within a distributed objects framework. Nodes in the graph are represented by contexts, and each context can contain any number of name bindings, which are the links to other distributed objects. Names are actually bound to object descriptors, which are string representations of an object's type and an opaque reference. Currently, since the distributed object system being used is ILU, object references are ILU String Binding Handles (SBHs). A descriptor is the minimum information necessary for a client to reconstitute the described surrogate object (e.g. by using ilu.ObjectOfSBH()).
Paths in the namespace are a string of non-empty component names separated by slashes ("/"). Paths do not start with a slash and unlike file names, there are no parent contexts so components such as "." and ".." are not treated specially. A component of a path cannot contain slashes and must be non-empty.
This interface defines the following non-
SEQUENCE OF String
RECORDrepresenting a distributed object linked into the namespace.
Descriptors have the following fields:
Stringcontaining the type of the distributed object, the format "Interface.Object" (or, in Python, read as: "Module.Class").
Stringcontaining the opaque reference to the object, currently an ILU SBH.
This interface defines the following exceptions:
These objects represent internal nodes which may be non-leaf nodes in the namespace graph.