Usually you should allow the Repository to assign object identifiers for your information model type definition objects. You can do this by setting the input parameter for the object identifier to OBJID_NULL on any of the Create methods.
If you are populating a new Repository with an information model that has been defined in an existing Repository, you should assign specific object identifiers. For each type definition object that you copy to the new Repository, you should use the object identifier that was assigned to that object in the existing Repository. This will ensure that the type definition has the same identity in all repositories.