Object Linking (OL) is used for better (automatic) interaction between different programs. If, for example, in a vector graphics program in a document (vector graphics) any object (here e.g. a raster graphic) is displayed and this object - assuming a multitasking environment - is changed by another program (here a raster graphics program) while both programs are running, the raster graphic would automatically be re-displayed in the vector graphic after the change (i.e. saving).
Such an OL is quite easy to accomplish, but in order for any program to work compatibly with any objects, a somewhat more comprehensive protocol is required, which is now available with the OLE (used for initialization) and OLGA protocol (responsible for the actual object linking).
OLGA is document-centred, i.e. the protocol is prepared for one application to manage several documents (possibly even with completely different data types).