You can also depict symbols like other symbols. To do this, you use the DEPICT LIKE clause in the symbol’s declaration. The symbol is drawn like the other symbol in all contexts (on the diagram workspace, in the Draw menu, and in the toolbox).
Syntax
SYMBOL symbol-type-name1 { ... DEPICT LIKE [SYMBOL] symbol-type-name2 [IN diagram-type-name] ... }
The brackets [ ] denote that the entry is optional. Do not type brackets in your USRPROPS.TXT entry.
[IN diagram-type-name] refers to the fact that symbols can be drawn differently depending what diagram they appear in. For example, the Class symbol is drawn differently in each of the diagrams that it appears in: the UML Class diagram, the Booch Class diagram, the OMT Class diagram, and so on.
You can also chain DEPICT LIKE clauses, as such:
SYMBOL A { DEPICT LIKE B } SYMBOL B { DEPICT LIKE C }
However, this chaining is not transitive: symbol A is not drawn like C because of the above statements. It is drawn the way B used to be drawn. To depict A like C, you have to add another statement, SYMBOL A DEPICT LIKE C. This interpretation gives you capabilities that could not be achieved with a transitive interpretation, and prevents any possible problems caused by recursion.