I have been using OxygenXML Enterprise for a while now, and it's surprisingly powerful for the cost. It's written in Java so it is very cross-platform capable, too. They offer upgrades from Dreamweaver, etc. http://www.oxygenxml.com/

It does just about everything but generate code. If you need to generate code to process XML, Altova (http://www.altova.com/) makes some pretty powerful utilities.

You can get a "community" edition of LiquidXML for free from http://www.liquid-technologies.com/

Have fun!

jdb