If the object id is calculable we use it instead of creating a random uuid