Update: Credit where credit is due. From Mike Champions comments below, we discover,
Uhh, this really wasn’t my doing. Nithya is the XSLT Program Manger and has worked hard to make the case for XSLT2, Soumitra Sengupta was the Product Unit Manger who made the hard call to pull the plug on XQuery in .NET 2.0, and Anders is the one who laid down the party line that XLinq will not even try to compete with XSLT for loosely-structured doc scenarios that XSLT handles well.
Thanks for the info, Mike! And thanks to each one of these folks who have helped bring ALL of this into reality. It is MUCH appreciated :)
mikechampion’s weblog : Why does the world need another XML API?
XSLT definitely won’t go away. The Microsoft XML team was promoting XQuery as a “better XSLT than XSLT 2.0″ a few years ago (before I came, don’t hurt me!), and got set straight by the large and vocal XSLT user community on why this is not going to fly. While it may be true in some abstract way that XQuery or XLinq might logically be able to do everything that XSLT does, as a practical matter it won’t. Most obviously, XSLT a “real” standard and supported on most platforms; if you need to write XML processing code with a high confidence that it can be made to work on the client and the server, on Windows, OS X, Linux, etc., and easily co-exist with application logic written in C , C#, Java, or a scripting languge, then XSLT is probably just the ticket. Even if you are committed to the .NET platform and could take an XLinq dependency, there are jobs that are simply easier to do in XSLT than XLinq, especially when the XML data being processed is loosely structured and deeply nested. XSLT’s recursive template matching paradigm is very well suited for that kind of data, and XLinq has not been designed with that type of data in mind
I’ve emphasized and made bold a portion of the above text *NOT* as a form of gloating (although, it brings a smile to my face to know that I was and am a part of the mentioned “large and vocal XSLT user community on why this is not going to fly” :D) and instead as a focal point to help bring focus to the fact that in the space of less than 2 years, the presence of Mike Champion on Microsoft campus has created an enourmous impact on the support and development of XML technologies that the community is desirous of, finding ways to get the “message” into the hands that matter most… e.g. The one’s making the decisions as to the ultimate technical direction and underlying technologies that will be supported, and those that will not.
Back in December of 2004, when I first learned that Mike had taken a job at MS, I realized that this could mean something big in terms of finding support for XSLT 2.0 in the future offerings at MS, adding the following bit to the end of a blog entry regarding this topic,
This is exciting to think about from the standpoint of XSLT as someone like Mike Champion could have a serious impact in regards to the future of XSLT support at Microsoft. Definitely something to keep an eye on.
I’m not attempting to pull a “See, I told you so” as its not like I was alone in my belief, nor was it something that wasn’t obvious to the rest of the community as well.
What I am attempting to “pull” is the fact that what seemed like a VERY REAL possiblity to us all back then, has turned VERY MUCH into a reality, and then some.
So for what its worth, thanks Mike!
That said, I don’t want to trash talk, or bad mouth any of the folks that came before Mike.
There have been a TON of changes over the last two years that have enabled the community to communicate more directly with Microsoft e.g. Blogs; a direct result of this is that Mike and company have had more direct developer feedback than the folks prior to his arrival. I don’t think this simple fact can be overlooked. When the communication lines are open, its easier to understand the things that folks have to say for the simple fact that they can now say it, where as before they could not (or at least, not anywhere near as easily as they/we can now.)
There’s one other point from Mike’s above LINQ’ed (TO MY ADORING FANS: Still no plans for Saturday Night Standup. You’re welcome :D) post that I think is significant and needs to be highlighted,
Finally, we believe that the overall LINQ story is going to have a pretty profound impact on data programmability, and we want to make sure that LINQ has a good story for XML.
There are some folks who understanding things for the way they truly are. In other words, there are those who just “get it.”
The folks behind the future direction of XML at Microsoft get it.
Thanks MS! :D