Maybe the best solution then would be not to have shapes (which are really
just a structureless SVG drawing plus some metadata), but the ability to
insert a whole ("template") drawing. For instance, you start your UML
diagram; you want to add a visitor ?
File...Insert Template...select visitor.dia... pooof ! one group
appears, with the contents of visitor.dia inside.
now move, ungroup and rename as fit.
I think this could be quite easy to implement, compared to adding the
ability to have shapes be fully structured dia drawings ?
(thinking about it, in fact, what I describe above *could* in fact be
packaged into the shapes toolbox; what's important is to build the feature)