Generating and Manipulating Identifiers for Heterogeneous, Distributed Objects

Systems that manipulate heterogeneous, distributed objects must provide origin-and location-transparent object identifiers. The problem is particularly difficult for systems that deal with “foreign” objects, i.e., objects that originate outside of the system or are manipulated by procedures that are external to the system. Such objects already have externally-assigned identifiers on which clients and application programs depend to access the objects. We describe an approach to providing system-processible identifiers for such objects that preserves the use of their externally-assigned identifiers.