W3C – Exposing device capabilities to web applications – great move ..

This is a very significant development from W3C. Definately one to watch. I like the pragmatic approach – the security is the key here .. the capability to extend the browser to access device capabilities is most welcome!

There is huge potential for mobile web applications that can access device capabilities from client-side scripts. There has been a lot of work on J2ME APIs for Java based applications, but we lack standards for exposing local device capabilities to applications running in web browsers. The time has surely come for W3C to bring interested parties together to work on fixing this as a matter of priority.

Properties like location, with privacy and associated legal issues, will clearly be more complicated to deal with, as we will need to address the security and trust models involved. But other properties like battery level, signal strength, light and vibration control, should be much easier to progress.

The Device Description WG is defining APIs for access to properties of classes of devices, and the OMA is defining a protocol and server-side API for access to dynamic properties (DPE) that will enable servers to dynamically adapt media streams to match device orientation and bandwidth. The UWA WG has recently moved DCCI to CR and published the first draft WD for an ontology for the delivery context, where the ontology is decoupled from the APIs that it models. DCCI is a client-side framework, but doesn’t itself define any properties. With a little work, DCCI could be used for:

* dynamic content adaptation on client

* checking battery level, signal strength

* controlling the display brightness

* turning the phone’s vibrator on and off

* checking screen orientation and size

* checking available free memory

The following will need work on trust models and could be part of a second wave, following a security workshop planned for late 2008.

* implementing location-based services

* interface to on-phone applications (PIM)

including calendar and contacts

* allowing web page scripts to initiate phone calls

It seems timely for the W3C Mobile Web Initiative to create a roadmap for building concensus on client-side access to device capabilities. This seems like something W3C should be taking a leadership position on given the opportunities for third party developers to stimulate mobile data traffic if we succeed in standardizing the APIs. Without such action there is a risk of fragmentation as multiple APIs appear and developers have to choose between them.

What’s the best way to bring together the relevant stake holders? For instance, browser vendors, device vendors, network operators and application developers?



  1. Ajit,
    We already have a perfectly good standard to achieve the above – it’s called the HTTP protocol and everything outlined above can co-exist with it right now without a single change.
    You don’t need to fragment anything – all your existing mobile API’s work perfectly well – all you have to do is add the necessary data to the HTTP protocol. Even FireFox has an API to do that.
    The only issue that remains is security and that’s easily solved. Simply let the user chose what he/she wants to share.
    It’s already right in front of you – all you have to do is look.