I think you've hit the nail on the head with this one. Any project that is going to involve a separate graphics person/department is not going to to want to be tied down to some subset of (X)HTML that you have chosen to represent in your mini language. Whether this mini-language is meta-data or objects themselves, you will have to recreate the full complexity of (X)HTML.
Although sometimes more tedious, having a set of templates that look just like HTML with a few extra tags, or expressions is the best way to go to keep designers happy and to make it easier to maintain in the long run.