the rasx() context

I preach these Blues, then choose my seat and sit down.

XSLT in the .NET Framework: Data Binding and Control Creation at the Same Time

Buy this book at Amazon.com!Until I am capable of finding myself incorrect, I maintain that Microsoft pushes so hard away from XSLT alternatives to data binding and control creation for ASP.NET Web applications and the “smart client” because most Microsoft developers see no advantage in XSLT-related .NET technologies over binding to controls. Most Microsoft developers are historically and irretrievably devoted to binding to controls. Indeed, I have enjoyed this rich tradition since Access 97. But when the Internet came, I embraced the teachings of the W3C. This means that finding standards-based, platform-independent solutions is a real and present priority. With this W3C “wrench” thrown into the works these ideas pop out:

  • Almost all of the user interface elements of a Windows Forms 2.0 “smart client” can be rendered in the WebBrowser. This investment is designed to be platform independent and can be reused in a server-side Web application.
  • XML representations of data are first-class citizens. There really shouldn’t be any sentence following up as a defense of the previous one. Many .NET developers simply do not “like” XML.
  • JavaScript plays a major role in client-side business logic. This sentence is laughable for many .NET Windows Forms developers—and we can probably get a chuckle from the hordes of ASP.NET developers who avoid writing JavaScript by using the great features in ASP.NET controls.

The promise here is that an XSLT-based “smart client” is almost a client-side web application. A “real” server-side Web application is only needed to serve fresh REST or SOAP data for our ‘first-class’ XML.

A Prelude to XAML

Most Microsoft developers are historically and irretrievably devoted to binding to controls procedurally at “design-time” in a visual IDE… However, the power of developing a User Interface declaratively is not ignored by the vast material and intellectual resources of Microsoft. The Windows Presentation Foundation of Windows Vista is the Microsoft vision of this future.

So I hear Microsoft saying XAML is the platform-specific alternative to XForms. I think I hear Microsoft saying that InfoPath (which is not based on XForms—it is a COM heap of XHTML and XSL) is only a temporary stopgap measure until XAML gets going…

Share and Enjoy:
  • del.icio.us
  • Facebook
  • Technorati
  • Digg
  • Slashdot
  • Google Bookmarks

This entry was posted on Tuesday, March 7th, 2006 at 10:30 am and is filed under .NET related, Data Management Solutions, Design Diary, Digital Media Production, root. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

4 Responses to “XSLT in the .NET Framework: Data Binding and Control Creation at the Same Time”

  1. Eric Richards Says:
    March 7th, 2006 at 4:27 pm

    Disclosure: I work on InfoPath.

    InfoPath is by no means a stop-gap measure awaiting XAML. In some ways, it’s too bad that Microsoft has so many different technologies for doing similar things (e.g., forms) but it’s better than coming up with the uber-form package that probably is so complicated and full of comprises that it pleases no one.

    InfoPath is super-appropriate for the Enterprise environment, especially for people already with the Office Pro Enterprise license. It’s in there.

    With Office 2007, we have the Forms Server for filling out forms in IE or Firefox. And the InfoPath rich-client control is now hostable (yay COM!) showing up in more and more products like Word, Excel, and PowerPoint. And we have a fantastic Outlook integration story.

    XAML and Office? That’s not on my radar. But right now I’m focused on getting InfoPath 2007 wrapped up, polished, and exploding out of the door.

  2. the rasx() context » Blog Archive » Rolling My Own Small Bits of InfoPath Says:
    March 13th, 2006 at 2:01 pm

    [...] An earlier entry sketched out the role XSLT plays in declaring a user interface—performing data binding and “control” or “widget” creation simultaneously. Well, I forgot to add data validation to the mix. In fact, it is only now that I consciously recognize that InfoPath validates data with schema. This means that an XML-based user interface uses XSL for data binding and “control creation”—and it uses XSD for data validation. [...]

  3. the rasx() context » Blog Archive » Ever More .NET Links Mostly about New Stuff in .NET 2.0 Says:
    March 30th, 2006 at 9:15 am

    [...] Currently I prefer to use XML based solutions for “data binding” however, I still need to know a little bit about prepping data objects for “traditional” Windows Forms. “Interfaces Related to Data Binding” serves as an overview. “How to: Implement the INotifyPropertyChanged Interface” scratches the surface. [...]

  4. the rasx() context » Blog Archive » Show Notes for Carl Franklin Says:
    January 26th, 2009 at 8:35 am

    [...] Why I think XSLT is disrespected in the .NET framework—see “XSLT in the .NET Framework: Data Binding and Control Creation at the Same Time.” [...]

Leave a Reply

Please leave a comment. Comments are encouraged but they must contain relevant details. These details are very helpful when they refer to exactly what the author has written. Any appeals to “common sense” with usage of phrases like, “this is stupid” or “you are so ignorant” will be ignored. Also, any quick blurbs like, “this is great” or “good job” will be reluctantly suppressed. See you later… without blindness.

the rasx() context is proudly powered by WordPress
Entries (RSS) and Comments (RSS).