I've been on the lookout for a flexible tool to produce XML for a while, but hadn't come across anything I thought suitable.
Inbound XML was a big priority a few years back, when even fewer tools were available, so we ended up writing our own. It's not especially flexible, but it does the job and is still in daily use.
Outbound XML, until recently, hasn't been a priority. Happily the need and the solution coincided. I came across an article by Jon Paris (registration required - free) discussing using templates and CGIDEV. We've had CGIDEV2 for a while, but I didn't make the connection. Works a treat, saves me writing inflexible (& probably bad) programs with lots of hard-coding. No need for anything expensive or proprietary. What more could I want?
Doh! Just call me 'Homer'.