VERSIONED_OBJECT<T> has a 'uid' attribute that is meant to represent a unique identifier for all versions of this object - so kind of like the master identifier for this document set. It is of type HIER_OBJECT_ID
VERSION<T> is a particular instance of a document version - so many VERSION<T> documents may be part of one overall VERSIONED_OBJECT (amendments etc). It also has a 'uid' attribute of type OBJECT_VERSION_ID.
A OBJECT_VERSION_ID consists of object_id, version_tree_id and creating_system_id. Section 6.3.3 says that the object_id part is a copy of the uid attribute of VERSIONED_OBJECT. However, this doesn't really work because VERSIONED_OBJECT has a uid which is a HIER_OBJECT_ID (could be in the form 184.108.40.206.6.4::abcd), whereas object_id can only be a plain UID (i.e. 220.127.116.11.6.4).
See for slightly different description.