In the past, I wrote a little note about XML.com's article on svg tree drawing.
Currently, the way most people seem to go if they want to add a structural drawing of their DTDs is to use XmlSpy, open the DTD, convert to XML Schema and let XmlSpy draw the diagram. XmlSpy can then export the drawing as png, or one can do a screenshot and save it in another pixelized format. The result is really good looking:
It seems that there are also other tools on the market like Tibco TurboXML that can produce drawings of DTDs (and the Tibco one seems to be able to export them even as SVG, as JBoss had some html-versions of their DTD in SVG done with some Tibco tool).
While this is good for graphics on the web or just visualisation of complex structures, this is of no real use when you have to scale the graphics to include it in some printed work. So I started to write my own converter. With the help of the batik toolkit, this is working quite well. The current state looks like this:
(The respective svg looks like this).
Obviously not yet as good as the XmlSpy version, but I can just run the conversion on command line and do not need a XmlSpy-license :-)
I will update this page when there is more available.