In an object based data processing system having a plurality of object managers for performing operations with respect to typed objects, each object manager including means for performing at least one operation with respect to at least one corresponding type of object, the means for performing at least one operation being responsive to a request to perform an operation of the at least one operation with respect to an identified object of the corresponding type for performing the requested operation with respect to the identified object, each object manager including a means for identifying in a first, corresponding type of object a reference to a second object and means responsive to the identification of a reference to a second object for generating a request for an operation with respect to the second object, each request including an identification of the second object and an operation to be performed with respect to the second object, an application manager comprising:
- (A) means for receiving from a requesting object manager an identification of a second object and an identification of an operation to be performed with respect to the second object,
- (B) means for using the received object and operation identification to identify an object manager that includes means for performing the identified operation on objects of the type of the identified second object, and
- (C) means for invoking the identified object manager, and
- (D) means for communicating to the identified object manager a request to perform the identified operation on the identified second object,
- wherein an object manager can through operation of the application manager both request invocation of other object managers and itself be invoked by other object managers.