More on XAML mini-languages
Another problem with the gradient and transform mini-languages is that they are redundant. Anything you can express in them can also be done in the long version. You thus have to support both. Worse...much worse if you are trying to do source preservation...the mini-languages in some cases lacked the full expressiveness of the XAML version. So you could end up in a situation where you are editing your mini-language representation of a gradient, decide to add one more feature and whoa! you have to switch to the alternate rep, re-writing everything you've already started just as I did when we dropped the old format.
Just after I finished my last post I remembered we used to have two general representations in XAML, which in the case of something like gradient meant three actual syntaxes. I wrote about the dual representations over a year ago, asking if we should drop the compact form (which we did):
https://blogs.msdn.com/johngossman/archive/2005/01/25/360224.aspx