Object URLs are intended to provide a human-readable string form of an object reference. With a syntax similar to Internet URLs, they offer an easier way to specify an object than the string-modified interoperable object reference (IOR). Because URLs are "universal", an IOR sometimes might be considered an object URL. However, for the purposes of this discussion, an IOR is not an object URL. IORs are not easy for humans to read.
Object URLs are defined primarily in the context of enabling bootstrapping of the Naming Service, but can be used to reference any initial service. They also can be used to obtain an object by invoking the CORBA::string_to_object method.
The syntax of an object URL supports three basic formats: corbaloc, corbaname, and file. These formats are called URL schemes. The corbaloc URL scheme uses either IIOP or resolve_initial_references style addressing. The corbaname URL scheme extends the corbaloc format to specify an entry within a Naming Service. The file URL scheme identifies a file containing another object reference. For more detail on each scheme, see the following topics:
Unlike IOR object references, converting an object URL usually requires the client ORB to contact the server where the implementation (servant) object resides. The ORB must retrieve additional information from the server because object URLs are much simpler than IORs and contain insufficient information to fully describe the object.