Re: Yahoo! introduces mobile XForms

I've just had my attention drawn to this:

Pretty cool:

"Declarative vs. Imperative

Much of Blueprint's philosophy and syntax comes from XForms. We opted for  
a full declarative language because it was the only way we could  
effectively run on the wide range of devices out there, some of which have  
no scripting at all. By using declarative syntax, we can encapsulate and  
hide the scripting specifics. In some cases, the code could run on the  
phone, in other case, such as XHTML, we can put the logic on our servers.  
It's the perfect way to deal with the various environments and their  

Phase One

The first version of Blueprint starts with this Developer Preview. It does  
not have the full data-binding and MVC aspects of XForms. This is simply a  
time-to-market choice so we can start getting developers up and running  
sooner rather than later.

In this first phase, since the controller is not yet expressed in the  
language, the language acts as simple markup like XHTML. It also requires  
your content to be served remotely, since the logic of your widget needs  
to live somewhere. Typically you would use PHP or whatever your favorite  
server-side language is and serve up Blueprint markup for your Widget or  
Snippet content. You can even use cookies to store per-client persistent  

There are many things that will be added to the language to flesh out  
Phase One over the coming weeks: paginators, switching controls, etc.  
Virtually everything you see in the Yahoo! home page will be available for  
you to use as well. You will use the same constructs we do—nothing will be  
held back.

Phase Two

In our second release of the Blueprint language you'll be able to take  
full advantage of the power of XForms-style MVC programming and be able to  
run your Widget directly on all of our supported devices. You will be  
amazed at how much you can do with such little code. We won't lie—XForms  
take a bit of getting used to, but if our experience is any indication,  
you will really come to appreciate the power it provides.

Not only will Phase Two give you more power in the language, but it will  
also give you access to superior high-performance controls, such as our  
full-featured map and list controls that we use ourselves in Yahoo! Go.

Our map control will allow you to do all kinds of interesting things with  
it. You'll also be able to get at a device's more interesting  
capabilities, such as location-based services. We have some very cool  
stuff planned around that feature. Stay tuned.

Another advantage that comes with running the code on the devices is that  
it can cache data in local models or other local storage, this means less  
network round-trips, which aids your Widget's performance.


Received on Tuesday, 15 January 2008 17:18:45 UTC