This (I hope) will be unique within the scope of the trace, and the combination of thread ID and random number should afford you uniqueness across multiple JVMs.
Established trace relationships allow enhanced merging between the target and source elements when the transformation is rerun. (the enhanced functionality is beyond the scope of this article.)