1 Keith is very smart.
2 Keith and his team are defining what MS is doing in this space and they really understand modelling better than anyone else (IMHO)
3 Keith is a Brit and a really nice guy.
So the discussion is around UML 1x and 2.0 as modelling languages. I think that 1x is an excellent language for capturing high level architectural constructs (UML as a sketchpad). I don’t think that one language can fit all and so the idea that it can also be used as a “programming” or behaviour language won’t hold water; hence UML 2.0 is flawed, it’s just too simplistic. I do think you can do high level modelling above a DSL using UML (as a sketchpad) but then you can do that with UML 1.x so what’s the point of 2.0?