Un nome di oggetto UML valido deve iniziare con una lettera minuscola dalla a alla z, una lettera maiuscola dalla A alla Z o un trattino basso (_). I caratteri successivi del nome valido possono essere una lettera minuscola o maiuscola dalla a alla z o un numero da 0 a 9. Inoltre, è possibile utilizzare i due punti (:) nel nome di un'operazione per immettere nomi proprie delle funzioni.
La trasformazione aggiunge un prefisso a ciascun nome che inizia con un numero oltre a sostituire tutti i caratteri non validi con un trattino basso (_).
La trasformazione verifica l'unicità dei nomi in uno spazio dei nomi rilevante. Gli spazi dei nomi possono essere impliciti (ad esempio, una classe per gli attributi della classe stessa) o espliciti (definiti dallo stereotipo cpp_namespace).
Se la trasformazione rileva un nome uguale, al nome duplicato viene applicato il suffisso "_<number>".
Se la trasformazione rileva un nome non valido, viene visualizzata l'avvertenza di seguito riportata:
L'elemento "..." è stato ridenominato in "..."
Quando la trasformazione genera un codice corretto per tali elementi, è necessario modificare nel modello UML eventuali nomi non validi rilevati dalla trasformazione per migliorare la leggibilità del codice e ridurre le differenze tra il modello UML e il codice generato.