A SERVICE OF

logo

28 Chapter 2: iTool System Architecture
iTool Object Identifiers iTool Developer’s Guide
iTool Object Identifiers
iTool object identifiers are simple strings that uniquely identify individual objects
within the hierarchy of iTool objects in much the same way that a computer file
system identifies files within a hierarchy of files. The object hierarchy (and, by
extension, the object identifiers) also describe where information about objects is
made visible in the iTool user interface; see “iTool Object Hierarchy” on page 31 for
additional discussion of the iTool hierarchy and the iTool system object.
Besides providing a familiar, user-readable way to identify objects in the iTool
system, object identifiers also allow iTool developers to refer to an object without
having to maintain an actual object reference to that object. This ability to use a
lightweight string object to refer to a potentially “heavy” object in the iTool system
makes it possible to maintain a very loose coupling between the objects that
implement an iTool’s functionality and those that implement its user interface. This
allows for object access that can cross process and machine boundaries, paving the
way for the use of the iTool system in more distributed environments.
Note
Object identifiers are not to be confused with object descriptors. See “Object
Descriptors” on page 30 for details.
Object identifier strings are assigned when an object class is registered with either an
individual iTool or with the iTool system object. See “Registering Components” on
page 38 for a discussion of the registration process.
Fully-Qualified vs. Relative Identifiers
Identifiers can either be fully qualified, meaning that they depict the entire path from
the root iTool system object to the object being identified, or relative, meaning they
depict the path from the root of the current iTool. Fully qualified identifiers begin
with the “/” character, and refer to objects that are accessible to all iTools that become
active during the lifetime of the iTool system object. Relative identifiers do not begin
with a “/” and refer to objects that are accessible only within a specified container
object.
For example, the identifier string
/DATA MANAGER/MY DATA
refers to an object named MY DATA, located in the system-level DATA MANAGER
container. Because the identifier is fully qualified, the MY DATA object is visible to
any iTool that is active during the iTool session.