Thank you for your answer.
Now I spent some time on the Internet, mainly http://www.graphviz.org/. I tried to better understand the DOT language, espcially regarding the possibilities to control of the layout of UML-diagrams. My idea was to try to create a few of my diagrams with the DOT language. This way I would find out how valuable (to me) the various tricks are in praxis. (Haven't done that yet.)
The problem is that small changes in the dot-file may cause large changes in the layout. This "instability" is recognised and it is often discussed in the forum and the mail-list. I'm not the only one who is frustrated. Conclusion: DOT doesn't offer a good solution.
With DOT there is a bag of tricks to take control over the layout. It includes: the order, in which the nodes are introduced in the script; the weight of the edges; hidden nodes; hidden edges; direction of the edges; the rank of nodes (ranksep and rankdir); subgraph and cluster; nodesep and minlen; and maybe more. However, these tricks are not all that powerful and there are no strict rules on how to use them.
The program NEATO (undirected graphs) allows constraining positions of nodes; attribute "pos". With NEATO my proposal, FreezeLayout, might be possible, but with DOT it is not.
Not all the tricks in the bag are possible to use with PlantUML?
-
layout_new_line in 8009beta3 is that an interface to the attribute, "rank=same", of DOT? Yes, I think that would be useful. I'm not sure about the use of "rank=min", "rank=max","rank=source" and "rank=sink".
-
the attribute, weight, would be possible to implement, e.g. "-[weight=100]->"