W3C

Ubiquitous Web Applications Activity Proposal

Introduction

More and more devices have some kind of networking capability, and there are many opportunities for creating distributed applications with these devices, but the challenge is how to do so. Web technologies such as markup and event-based scripting offer an effective solution, and promise reduced costs and a greatly expanded pool of developers compared to approaches based upon traditional programming languages. W3C now proposes to launch new standards work in this area.

The Ubiquitous Web Applications Working Group seeks to simplify the creation of distributed Web applications involving a wide diversity of devices, including desktop computers, office equipment, home media appliances, mobile devices (phones), physical sensors and effectors (including RFID and barcodes). This will be achieved by building upon existing work on device independent authoring (DIAL) and delivery contexts (DISelect and DCI) by the former DIWG, that is aimed at enabling content adaptation, together with new work on remote eventing, device coordination and intent-based events. For more information on proposed work items, see the Charter.

Commercial Drivers

Setting the direction for the short and long term

The proposed Working Group continues with the work items from the Device Independence Working Group under a new name which reflects its broadened scope encompassing network appliances. The proposed Charter defines a number of concrete short term work items together with longer term objectives, which will be addressed through holding W3C Workshops as a basis for setting the direction of future work, starting with a workshop on declarative models of Web applications in Spring 2007.

Ubiquitous Web Applications

The Ubiquitous Web and network appliances

The Ubiquitous Web focuses on applications and services involving network appliances. These are devices that for the most part serve limited purposes, and which are connected via a multiplicity of local and remote networking technologies. Such devices are increasingly ubiquitous in homes and offices. Web technologies such as markup and event-based scripting will make it easy to create applications involving devices with a wide range of capabilities.

Networking brings new opportunities

In the home, opportunities abound for applications involving health, security and environmental systems, for example, heart monitors, cameras, door locks, motion detectors, smoke detectors, lighting, air conditioning, ovens, refrigerators, and so on. The promise of greater security, greater safety and greater energy efficiency will drive the development of new applications.

Home media systems are evolving into network appliances. For example, handheld controllers, wall mounted screens, printers, cameras, and hard disk based media servers for videos, music and photos. Home gateways provide a means to bridge different networking technologies in the home, together with broadband access to streaming media, program guides, and news feeds, etc. as well as providing a means to share personal content with friends and family.

In offices, projectors and screens used for presentations will become network appliances, avoiding the need for video cables. Printers, scanners and other devices will be integrated into Web-based applications, exposing their state and allowing them to be controlled through Web-based interfaces. The Web will also facilitate meetings with off-site colleagues with support for distributed presentations, minute taking, and meeting management.

Mobile devices are gaining increasingly sophisticated capabilities taking them beyond the realm of mere phones. These capabilities including location, cashless purchases, the ability to scan RFID tags and 2D bar codes, and support for an ever evolving mix of local and remote networking technologies.

Network appliances bring new opportunities for home and business use, but the problem is the cost of developing these applications. Web technologies can greatly reduce the cost and dramatically expand the pool of developers compared with that available for applications developed in traditional languages such as Java and C++, etc.

Richer access to device capabilities

Ubiquitous Web applications involve linking up multiple network appliances plus much richer access to device capabilities. This requires a much more flexible approach than has been the case for PC-based browsers. This problem will be addressed through a framework for exposing device capabilities and for device coordination. This builds upon existing W3C work on the Delivery Context Interfaces (DCI) as a framework for dynamic access to user preferences, device capabilities and environmental conditions as a hierarchy of DOM nodes.

New work is needed on the definitions of basic categories, terms and relationships. These definitions are needed, for example, for device characteristics, roles, and policies etc. Such definitions are required to prevent confusion. This work needs to be done by the companies working on the different kinds of network appliance. This can be done within subgroups (of the Ubiquitous Web Applications Working Group) composed of the relevant companies and in co-operation with external groups such as OMA, DLNA, HGI, and the PUCC, etc.

Improved ways of working

Many of the network appliance companies are based in Asia. Subgroup members could meet face to face at convenient regional locations. There would be a number of separate specifications that comply with the overall framework. Subgroup meetings could be held using the language most convenient to subgroup members, but meeting summaries and specifications would be in English. The subgroups report back to the main Working Group, and this would enable coordination at a world-wide level. It is anticipated that this may lead to the chartering of new Working Groups as appropriate, for instance, a Working Group that focuses specifically on exposing security services based on device SIM cards.

Device Coordination

The framework for device coordination focuses on simplifying the development of Ubiquitous Web applications. Resources are identified by name (a URI) or by an explicit description or link to an external description. The messaging layer and associated protocols are hidden from the application developer. This enables the use of many different technologies, including UPnP Binding can also be managed by a web server and exploit Semantic Web technologies in the back-end.

Resources are exposed as DOM objects in the DCI. Events can be targeted at these objects, and event listeners can be attached to them. These objects thus act as proxies for the associated resources. Using events in this way reduces costs compared with current approaches based upon Ajax. A generic eventing framework is based upon an extensible XML grammar for events that is independent of the transport medium. Event transport can be via HTTP, SIP, or de facto protocols, e.g. PictBridge for communications between cameras and printers.

New ways to describe behavior

The markup for interpretation by network appliances depends on whether or not the appliance has a local user interface. SCXML is a W3C XML language for event driven state machines compatible with UML. You can also use XHTML, SVG, SMIL, etc. as appropriate to the local user interface capabilities of the device. For really constrained devices, the markup can be interpreted remotely, and coupled to the device via an eventing mechanism.

Continuing role for content adaptation

Web pages developed for PC-based browsers tend to provide a poor user experience on mobile devices which vary considerably in their capabilities. Mobile browsers can mitigate this by providing a desktop mode or fit-to-screen mode, but devices with limited memory may fail to load desktop content. Content adaptation can be applied anywhere along the delivery path, providing a means to offer a harmonized user experience despite variations in device capabilities, software versions and conformance to standards.

Device and modality independent authoring languages can help to reduce the costs of developing applications given the considerable challenges in dealing with a wide variety of delivery contexts. DIAL is part of the tradition of model-based user interface definition languages. It combines XHTML, XForms and DISelect into a markup language aimed at content adaptation. The process of adaptation can be controlled through policies (rules) that determine what content, behavior and presentation is most appropriate to a given delivery context.

There are limits to what can be done when adaptation starts with a single web page, even when it is defined in a device independent markup language, and the time has now come to look at ways for describing how applications flow through a sequence of pages. This brings with it a content-management mindset that helps to reduce the cost of developing and maintaining applications.

Relationship to Web Services

Ubiquitous Web applications can take advantage of a variety of messaging technologies including Web Services. The stack of Web Services specifications are primarily concerned with messaging and don't address the issue of how applications are developed. The Ubiquitous Web instead focuses on technologies familiar to web page developers—markup, event-based scripting, and the document object model.

Proposal for Membership Consideration

Activities and Groups

One Activity is proposed with one Working Group charter:

Ubiquitous Web Applications Activity
Ubiquitous Web Applications Working Group Charter

Resource Statement

The resource requirements for this Activity includes:

  • commitment by Members to participate in the proposed Working Group;
  • one Working Group Chair;
  • one Working Group Team Contact;
  • one Activity Lead.

A total of 0.7 FTE of Team resources (0.2 Stéphane Boyera, 0.5 Dave Raggett) will be allocated to this Activity at this point. It should be noted that Dave Raggett is a W3C Fellow on assignment from Volantis Systems, and would act as initial Chair and Activity Lead, and Stéphane Boyera would act as a second Team contact.

Patent Policy

The Working Group chartered under this Activity will operate under the W3C Patent Policy (5 February 2004 version). To promote the widest adoption of Web standards, W3C seeks to issue Recommendations that can be implemented, according to this policy, on a Royalty-Free basis.

Duration

The Ubiquitous Web Application Activity is proposed to be chartered until 31 March 2009.


Dave Raggett and Stéphane Boyera

$Date: 2007/03/21 08:45:06 $