Create a new DOFObjectID by augmenting an existing DOFObjectID with specified Attribute type and a string. 
- Resource Management:
 - This function allocates resources that must later be freed by calling DOFObjectID_Destroy. 
 
- Note
 - This 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.  | 
    | attributeString | The new Attribute's data as a C string. This should not be NULL, and its C string length should be 255 characters or less. The data must be appropriate for the given attribute type.  | 
  
   
- Returns
 - The new DOFObjectID. 
 
- Exceptions
 - 
  
    | NULL | is returned if
- an invalid parameter is detected; or
 
- the existing objectID already contains an Attribute with the same type; or
 
- insufficient resources exist to create the DOFObjectID. 
 
 
 |