Hi Thomas,
Thanks, I know you take this approach. I've considered it several times, well here are my thoughts.
I have to support many languages (4 or 5), and user customization for a team of users (possibly will be quite large eventually). I found that the existing system can work very powerfully and easily, as long as you understand how to work with it, not against it.
For instance, some information wants to be expressed as a stereotype, while other wants to be in a tag. And you need to elaborate the right information at the right point in the transformation. Such as generate linked attributes at code gen time, not MDA transformation time.
This is all fine, with some EXEC_ADD_IN help the system seems to work quite powerfully, with lots of flexibility and giving the users the ability to tweak. But - and I don't understand why this hasn't een found before (maybe I'm doing something wrong) - this requires that tags propagate from MDA transform to another for operations! The docs say that that all information is copied, but I don't see tags.
Without them I can't give the proper hints from a top level MDA xfrm to the code generation engine.
Anyhow, if I rolled my own I would have to replicate all of the functionality which already exists. And with some small Add-In help nearly everything can be handled. Even this, I suspect I can manually copy all the tags in the intermediate transformations, but that rather defeats the purpose doesn't it?
I simply started writing my own code generation and transformation using the automation interface. That gave me the flexibility to act on tags as I like it. Quite some initial work but it pays off if you are using it often.