|  | 
Create a new DOFObjectID by augmenting an existing DOFObjectID with specified Attribute type and a DOFObjectID.  Resource Management:This function allocates resources that must later be freed by calling DOFObjectID_Destroy. 
 NoteThis function stores Attributes in increasing numerical order by type, as required by the protocol specification. 
 Parameters
  
    | self | The original DOFObjectID, which remains unchanged. This should not be NULL. |  | type | The ID of the new Attribute. See DOFObjectIDAttributeType. Valid numeric range is 0 <= type <= 127. |  | objectID | The new Attribute's data as a DOFObjectID. This should not be NULL, and the total length of the object ID (in byte form, see DOFObjectID_GetBytesSize) should be 255 bytes or less. The data must be appropriate for the given attribute type. | 
 ReturnsThe new DOFObjectID. 
 Exceptions
  
    | NULL | is returned if 
an invalid parameter is detected; orthe existing objectID already contains an Attribute with the same type; orinsufficient resources exist to create the DOFObjectID.  | 
 |