The ObjectARX documentation (arxdoc.chm) explains this under the "AcDbDatabase::wblockCloneObjects" method :
I quote :
"When the objects to be cloned do not all have the same owner, then it is necessary to make up individual AcDbObjectIdArray entities, each one containing all the objects with the same owner. The wblockCloneObjects() method is then called once for each array, with the deferXlation argument set to true for all but the last call, so that ID translation will be done to complete the cloning."
So, when you are using the wblockCloneObjects to clone objects that do not belong to the same owner, then it is better to defer the translation until all the grouped objects (belonging to the same owner) have been clones by separate calls to "wblockCloneObjects". The last call to the wblockCloneObjects will then set the "deferTranslation" to false to carry out the translation phase. During the translation phase, new objectId is provided for each of the clone objects and the IdMap becomes useful.