Real World Computing
Embrace, enhance, eclipse?
Of course, to be a truly open standard XAML mustn't be tied to Windows and this is where Microsoft has made perhaps the most important decision. While it would be relatively simple to add full XAML support to IE - in fact, on WPF systems it already exists - Microsoft has learned the benefit of player rather than browser-based delivery. This is a far harder route for the company to take because every WPF-based XAML control has to be rewritten for its all-important Silverlight player. However, this approach provides two unbeatable advantages. First, it means XAML isn't tied to Windows/WPF or to IE, but can claim to be a true cross-device (PC, Mac and Linux) and cross-browser (IE, Firefox, Safari, Opera) platform. Second, it means Silverlight, like Flash, should be spared the problems of incompatible browser implementations that have so hampered HTML and every other open web standard.
Only integrate
So far so good, but if Flash already provides the same design-rich cross-platform capabilities as Silverlight, why not use Flash? After all, Flash has near-total browser penetration, while Silverlight must start from scratch. What does Silverlight offer that Flash doesn't? The final lesson Microsoft learned is the important advantages a text-based markup language provides in the web context. Silverlight's potential killer feature is that XAML isn't a binary format such as JPEG or SWF, but a text-based markup language like HTML itself.
This offers important benefits. First, as a tag-based markup language, XAML becomes a seamless part of the XHTML/CSS/Ajax markup for the whole page. Moreover, with built-in support for the Document Object Model and browser-based JavaScripting, all page elements are able to fully interact with each other. By comparison, Flash SWF elements are more like embedded JPEGs, sealed binary black boxes that have no communication with each other or their containing page.
The benefit conferred by markup-based integration is stronger still when it comes to authoring. To add a Flash SWF to a Dreamweaver page, you must first create your FLA file in Flash Professional, publish it to SWF, then embed this into your page. To make future changes, you have to find, edit and republish this original FLA file. How much simpler life could be with Silverlight and Expression Web, whose toolbox already offers ASP.NET controls that you can drag on to your page, customise in the properties panel or code-edit directly. Whenever you need design power beyond the capabilities of HTML/CSS/Ajax, just drag on and customise the relevant Silverlight control in a similar way, whether design-rich forms, media player, navigation bars, tabs or calendars, knowing that all will be rendered as intended across all browsers. This is the FrontPage WebBot reinvented as universally accessible and infinitely extensible.
Best of all, as a markup language that requires no external compilation, it should be simple to integrate XAML with ASP.NET and PHP to create design-rich, automated, database-driven dynamic publishing applications. This could be Expression Web's winning card, delivering that rich web-design platform that Adobe first attempted with GoLive and now approximates with its Dreamweaver/Flash combination. There are major caveats - especially concerning how quickly and successfully Microsoft can develop and spread Silverlight technology - but imagine Microsoft pulls it off.
Once a critical mass is achieved, the web authoring picture could change suddenly: if web authors can assume their end users have the Silverlight player installed, as they do now with Flash, then why not push XAML further? Rather than using Silverlight controls alongside XHTML, CSS, Ajax and SWF, why not use XAML to replace them all and author the whole page? Imagine using ASP.NET or PHP to customise the content an end user receives and then automatically flowing the resulting XML into a typographically rich, XAML-based text control that intelligently adapts the number of columns and size of images and text to the current screen. Take a look at the RIA readers currently available for the New York Times and Daily Mail, or if you have Vista or .NET 3 installed, visit www.sneath.org/tim/chocolate.xaml using IE 7 to see what XAML already offers under WPF. Now imagine similar design power being made available to every web designer for every web page through Silverlight.
