W3C

Ubiquitous Web Applications Working Group Charter

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 and delivery contexts by the former DIWG, together with new work on remote eventing, device coordination and intent-based events.

Join the Ubiquitous Web Applications Working Group.

End date 31 March 2009
Confidentiality Proceedings are Member-only
Initial Chair Dave Raggett W3C Fellow, Volantis (FTE: 50%)
Initial Team Contact Stéphane Boyera (FTE: 20%)
Usual Meeting Schedule Teleconferences: Weekly
Face-to-face: 3-4 per year

Scope

This section sets out the scope of proposed work items, starting with a summary. The Working Group will try to:

The scope for each of these is explained in the following subsections. Please note that this charter defines a number of concrete short term work items together with longer term objectives, which will be approached through the organization of the appropriate workshops as a basis for setting the direction of future work.

Success Criteria

The success of the UWA WG will be measured in the short term by progress on planned work items, and in the long term by their impact on enabling distributed Web applications and the range of devices involved. Success will enable the Web of everything as illustrated below:

many different devices

Web of Everything

  • Incorporates a very wide range of devices
  • Physical world of sensors and effectors
  • Access to local and remote capabilities
  • Autonomous agents that act upon behalf of their users

Success in achieving this long term objective can be evaluated in terms of:

The objectives will only be achieved through cooperation with other Working Groups and not in isolation. Coordination is therefore key to the success of the UWA WG.

Complete existing DIWG work items

The intention is to progress existing work items on DIAL, DISelect, DCI and CC/PP along the W3C Recommendation track.

Work on a second version of DIAL with support for SVG, SMIL and XBL

Demand for richer interaction with Web applications can be met through increased use of scripting and through combining XHTML with other markup languages. SVG offers resolution independent graphics and animation, SMIL provides for rich coordination of multimedia, and XBL provides a means to add custom user interface controls defined in terms of SVG, CSS and ECMAScript.

This work item will develop a second version of DIAL that incorporates support for SVG, SMIL and XBL, building upon specifications defined by the SVG, SYMM and WAF Working Groups, and the WICD profiles developed by the CDF Working Group. Native support for SVG and SMIL is increasingly common on mobile devices. Including support for these languages within DIAL will give developers the means to support a wide range of such devices, insulating developers from variations in device capabilities and adherence to standards (such variations are taken care of as part of the content adaptation process).

With the demand for richer interaction with Web applications, XBL provides DIAL with a device independent means to bind to rich Web controls. The process of content adaptation can then select the appropriate implementations of these controls to match the delivery context.

A related work item on policy-based layout may be started after the Workshop on declarative models of Web applications. This would build upon the DIWG's advanced layout work item, and preliminary discussions together with the CSS Working Group.

Leverage the DCI for work on enabling use of device capabilities, remote eventing and device coordination

The aim of DCI is to enable Web applications to dynamically adapt to user preferences, device capabilities and environmental conditions. The DCI specification defines platform and language neutral interfaces for a hierarchy of properties expressed in terms of DOM nodes. These properties can be static or changeable, for example, screen size and orientation, battery level, wireless connectivity and field strength. Properties may be both readable and writable, for example, the audio output level. Properties may raise events to notify changes, for example, low battery alerts and loss of network connectivity. The DCI can also be used to expose remote properties, for example, the geographic location of a mobile device, where this is provided by a network-based service.

The DCI defines a framework and not specific properties. Work is now needed on defining an ontology of such properties in cooperation with other groups, both internal and external to the W3C. The resources exposed as DCI properties may themselves change over time as they are bound or unbound. See the following sub-section on device coordination for more details. The DCI may be implemented natively by the markup language interpreter or by extensions implemented as plugins. Note that not all devices will host a Web browser, and may instead support a markup interpreter for an event-driven state machine such as SCXML in combination with the DCI, which provides the means to control other devices via an exchange of events. These include simple sensors and effectors whose behavior is defined in firmware, for example, a remotely controllable air conditioning unit. Event interchange may be based upon REX or other means as appropriate to the device and networking technology.

The DCI can provide a means to respond to external requests. For this purpose, a "server" resource is bound into the DCI that raises an event whenever a request is received. This is useful for agent like applications. The DCI can also be used in situations where a subscribe/notify mechanism is needed. An example, is where the DCI is used to bind to a remote printer. The implementation of the corresponding DCI node subscribes to events from the printer, such as job completed, or out of paper. The messaging mechanisms involved are hidden from the user of the DCI.

Enabling use of Device Capabilities

To enable new classes of Web applications, the UWA WG will consider the development of platform and language neutral interfaces for a range of device capabilities. For instance, there is interest in providing mobile applications with safe and secure access to capabilities such as: local storage, audio settings, imaging sensors, and device based applications such as the address book and calendar. These would be exposed via the DCI using the resource binding mechanisms described below. There is also interest in Web page interfaces for controlling the presentation of streaming media, e.g. for use in applications involving home media appliances. The work will be done in cooperation with other groups, both internal and external to the W3C, for example, the W3C Web API Working Group, the OMA for requirements relating to applications involving mobile devices, and the DLNA and the Peer-to-Peer Universal Computing Consortium (PUCC) for applications involving network appliances.

Remote Eventing

Web page scripts are event driven. The UWA WG seeks to extend this to allow Web applications to respond to externally sourced events delivered via the DCI, and to target events at DCI-based DOM nodes that act as proxies for remote services. Remote events for XML (REX) is an extensible XML grammar for events that forms a basis for passing events between components in a distributed Web application. REX can be used to support remote event listeners and remote event dispatch. This can be applied, amongst other things, to provide remote user interfaces to devices, for example, enabling the use of a mobile phone for controlling the air conditioning and lighting in a meeting room. This work started as a joint product of the Web API and SVG Working Groups. The UWA WG will complete this work and extend it to cover a wide range of DOM3 events and other event sets. Additional work is anticipated on mechanisms to support asynchronous dispatch of remotely sourced events delivered via the DCI, and bindings to suitable transport mechanisms in cooperation with other groups.

Device Coordination

Ubiquitous Web applications require access to a wide variety of resources, both local and remote. To simplify authoring, such resources are exposed as objects in the document object model and accessible from web-page scripts. The challenge is to provide Web authors with a simple means to identify the resource they want, and to bind it into the session as a DOM node within the DCI framework. Once bound the node can raise events and be the target of events. The author is thereby shielded from the details of how the resource is realized and the communication mechanisms used to support it. The following diagram indicates how DOM objects can act as proxies for local or remote services as part of distributed Web applications.

DOM proxies for resources

Resources can be identified by naming them or by providing a description, either directly, or indirectly by a link to the description. A platform and language neutral interface will be defined for binding resources and returning the corresponding DOM object. The binding request may involve a reference to a named binding service. This enables the use of Web servers as part of the binding process. The binding mechanism may also be layered on top of existing device coordination services. When resources are bound, this is signalled by a DOM event, and similarly, another event will be raised when the resource is unbound.

Resource binding takes place in the context of a session, which itself is a resource. Sessions may be temporary, for example, only lasting for the lifetime of a Web page, or permanent, such as for meeting rooms, which applications can join and leave. Attention will be given to the trust, identity, privacy and security issues associated with access to resources, in cooperation with other groups, starting with the workshop planned for early 2007.

Facilitate device and modality independent authoring with work on intent based events

User interfaces for Web applications need to provide users with information about the current context such as where am I, what is there and what can I do? To enable accessibility interfaces and to support device independence, it is valuable to be able to describe this in terms that abstract away from particular user interface gestures that depend on the device capabilities and the modes of interaction available to the user. A work item on intent-based events is proposed to define an ontology of actions and associated events. This has been initiated as an outcome of W3C Backplane Workshop held in November 2006. It is anticipated that this work will be carried forward in a joint task force involving several W3C Working Groups, with the Ubiquitous Web Applications Working Group having the responsibility for driving the work along the W3C Recommendations Track.

W3C Workshops on declarative models of distributed Web applications

The Working Group plans to organize two W3C Workshops as a basis for guiding future W3C work:

The following provides a tentative look at the subject areas for discussion at these Workshops. The scope would be refined by the programme committees formed for each Workshop:

Declarative Models of Distributed Web Applications

This Workshop is scheduled to take place in Dublin, Ireland on 5 -6 June 2007, hosted by MobileAware with the support of the Irish State Development Agency, Enterprise Ireland, and co-chaired by Dave Raggett (Volantis Systems) and Kevin Smith (Vodafone).

The variations in capabilities and conformance to standards across devices pose considerable challenges to application developers. Declarative models of Web applications can support device and modality independent representations that reduce the cost of developing individual applications. The adaptation process can be customized via policies that select the content, presentation and behavior appropriate to specific delivery contexts. Preliminary requirements discussions on device-aware layout have already taken place between the Device Independence and CSS Working Groups as part of the DIWG's Advanced Layout work item, but there are opportunities for broader kinds of policies, and an increasing role for protocol independent metadata. for devices and services as a basis for enhanced interoperablity.

DIAL is part of the tradition of model-based user interface design languages. There are opportunities to combine model-based approaches with other techniques, such as dialogue-based formalisms. Such approaches can be applied to describing Ubiquitous Web applications as a whole rather than the portions that run on particular devices. There is considerable potential for advanced content management tools.

Another consideration for the Workshop are the challenges raised in dealing with trust, identity, privacy and security. The current sandbox model for browsers involves the same site restriction on sending HTTP requests via XMLHttpRequest. This is inadequate for applications involving multiple devices, e.g. a browser, a remote printer and a web server, where you want to be able to exchange events with the printer. The sandbox is also a problem for richer access to device capabilities - something that is critical for Ubiquitous Web applications. One approach is to ask the user whenever the Web page wants to break out of the sandbox. This gets tedious upon repetition, and permission may be needed in advance for applications that are run in response to events, when the user may not be around to ask. Such markup may, for example, be run on a Web server rather than on a Web browser.

To avoid asking the user each time, there needs to be some means to check that the application hasn't been tampered with. This runs into problems with versioning and with pages with customized content such as the news headlines or the latest weather. Another approach is when the page is signed by an organization that the user trusts. The user can then be asked whether she always trusts applications signed by that organization. This tends to raise additional challenges, such as applying the notion of identity to Web pages, to groups of pages acting as a Web application, to devices, and to users and groups of users. A distributed framework for making assertions and making inferences on them would be valuable, and should cover trust, identity, privacy and security. Users should be aware of what they are being asked to commit to, for example, what device capabilities or sensitive information the application is seeking access to. This in itself presents significant usability challenges to avoid overloading the user, with the risk of inappropriate decisions.

There are also major usability concerns with asking the user to make trust related decisions for devices with small screens for which the entire display may be under application control and therefore at risk from spoofing attacks. One way around this is to utilize authentication mechanisms that renders spoofing attacks unprofitable, for example, by exploiting SIM-based security services that rely on the physical presence of the SIM card. Another concern is how to associate devices when they are introduced into home or office environments. For example, when using a wireless connection for printing, the printer with the strongest signal may be in an adjoining apartment, or in the office of the company located on the floor above. The usability issues for managing home networks are particularly challenging and this impacts upon security.

Autonomous Web Agents

With the ability to respond to external events, and to access local and remote resources, Web pages are no longer acting merely as clients in the client-server model, but take on the role of agents. Such agents can be driven directly by end-users, or indirectly as autonomous Web Agents (or wbots) that act on behalf of, and are controlled by users. Such agents can be represented as a combination of markup and scripts. Markup languages for event-driven state machines such as SCXML (based on UML's Harel state tables) look especially suitable for use in describing agent behavior, leveraging widespread experience with UML.

Agents will be useful on a wide range of devices, including mobile devices and big websites, and can act on behalf of users at all times of the day or night, whether or not the user is working, relaxing, asleep or busy, or out of range of network communications. Agents are also expected to play a role in coordinating distributed Web applications, for example, an interaction manager that runs on a network server and which coordinates remote user interface components. Agents may be situated on large websites or on devices hidden behind firewalls or NAT. In such cases, agents accessible via public URIs (e.g. on public websites) can act as proxies for agents that are either hidden or turned off or otherwise unreachable.

Deliverables

The milestones suggested below are subject to the resources available to the Working Group and may be reprioritized accordingly. In addition to Recommendation Track specifications, the Working Group expects to publish Notes on requirements, use cases and primers, following the precedent of the Device Independence Working Group. Examples include the DIAL Primer and Content Selection Primer for DISelect. For each of the two workshops, the Working Group will publish summary reports.

Milestones

The following table includes milestones that have already been realized for work items that are continued from previous Working Groups. The group will document significant changes from this initial schedule on the group home page.

Recommendation Track Milestones
Specification FPWD LC CR PR Rec
DIAL v1 May 2006 Sep 2007 Feb 2008 Jun 2008 Jul 2008
DIAL v2 Mar 2008 Sep 2008 tbd tbd tbd
DISelect Jun 2004 Oct 2006 Apr 2007 Mar 2008 Apr 2008
DISelect XAF Jun 2004 Oct 2006 Apr 2007 Mar 2008 Apr 2008
Policy Based Layout Sep 2007 Feb 2008 Dec 2008 tbd tbd
DCI Jul 2004 Nov 2005 Oct 2006 Nov 2007 Dec 2007
CC/PP 2.0 Dec 2006 Apr 2007 Jul 2007 Nov 2007 Dec 2007
REX v2 Jun 2007 Mar 2008 Sep 2008 tbd tbd
Intent Based Events Mar 2008 Sep 2008 tbd tbd tbd
Device Coordination Sep 2007 Feb 2008 Dec 2008 tbd tbd
Enabling Use of Device Capabilities Sep 2007 Feb 2008 Dec 2008 tbd tbd

Notes

Although there are 11 work items listed in the table, 5 are significantly advanced with one in CR and two about to exit LC, furthermore DIAL v2 is just a continuation of v1. Some items have lower priority, for example, policy based layout, which is expected to be based upon Member submissions.

Dependencies

This section indicates dependences on other groups, and groups which may be interested in reviewing UWA specifications.

W3C Groups

Compound Document Formats
For guidance on how to make use of SVG and SMIL from within DIAL
CSS
Coordination on device aware layout
Forms
Reliance on XForms for use within DIAL
Hypertext Coordination Group
For general coordination across W3C activities
HTML
The UWA WG will review HTML WG specifications with relevance to the DCI, e.g. APIs exposing device capabilities
Internationalization Activity
For the applicabilty of UWA specifications in different languages
Multimodal Interaction
For the MMI Architecture as a basis for loose coupling of modality components and interaction managers. In particular, MMI may be interested in the use of remote eventing mechanisms based upon REX, whilst UWA may be interested in the potential role of MMI life cycle events in device coordination
MWI Device Descriptions
Coordination on device capabilities and delivery context interfaces
Scalable Vector Graphics
For the use of SVG within DIAL and coordination on REX
Semantic Web Coordination Group
For advice on the use of Semantic Web technologies in the context of work on leveraging the DCI
Synchronized Multimedia (SYMM)
Coordination on Web page APIs for media control in relation to SMIL
Voice Browser
For SCXML as a markup language for event-driven state machines
WAI Protocols and Formats Working Group
To ensure the accessibility of applications using UWA specifications
Web APIs
For DOM3 Events, collaboration on the DCI and coordination on REX
Web Application Formats
For the XML Binding Language (XBL)
Web Security Context
For advice on security related specification issues
XHTML
Reliance on XHTML for use within DIAL
XML Security Specifications Maintenance Working Group
For advice on security related specification issues

External Groups

Other groups may be added during the course of the Charter. The relationships may range from formal liaisons, to informal exchanges of information and cross participation by individuals, as appropriate to the underlying need.

3GPP
Remote eventing and other work of a mutual interest
DLNA
Remote eventing, device coordination, and other work of a mutual interest, potentially including Web page APIs for media control
FIPA
FIPA is is an IEEE Computer Society standards organization focusing on agent-based technology
HGI
For coordination on the role of Web technologies for devices acting as home gateways
IETF
Remote eventing and other work of a mutual interest
OMA
Coordination on topics relevant to the mobile application environment, e.g. remote eventing, device coordination, delivery context interfaces, ontologies for device characteristics, and safe and secure access to device capabilities
PUCC
For coordination on device and service metadata for network appliances

Participation

To facilitate broader involvement in this work, it is proposed that regional subgroups may hold face to face meetings and teleconferences in local languages, with meeting summaries and specifications in English. This is expected to be of particular value to work on home media appliances, office equipment and other kinds of network appliances. Such subgroups would report to the full Working Group as a basis for coordinating work across different geographical regions. 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.

To be successful, the Ubiquitous Web Applications Working Group is expected to have 8 or more active participants for its duration. Effective participation to Ubiquitous Web Applications Working Group is expected to consume one work day per week for each participant; and up to two days per week for editors. The Ubiquitous Web Applications Working Group will allocate also the necessary resources for building Test Suites for each specification.

Participants are reminded of the Good Standing requirements of the W3C Process.

The first face to face meeting is scheduled for 7 - 8 June 2007 in Dublin, Ireland, and hosted by MobileAware.

Communication

In the interest of greater public involvement, it is expected that technical discussion will primarily take place in public through a number of channels, although any member has the right to keep any information or discussion to member-only channels.

A public, archived mailing list <public-uwa@w3.org> is used to conduct technical discussions, publish approved minutes of group meetings, track issues relating to material previously made public, distribute public versions of documents, conduct public discussion on published documents, and for other public communications.

A member-only, archived mailing list <member-uwa> is used to distribute member-only versions of documents, for member-only discussion on them, and for other member-only communications.

Information about the group (deliverables, participants, face-to-face meetings, teleconferences, etc.) is available from the Ubiquitous Web Applications Working Group home page.

Decision Policy

As explained in the Process Document (section 3.3), this group will seek to make decisions when there is consensus. When the Chair puts a question and observes dissent, after due consideration of different opinions, the Chair should record a decision (possibly after a formal vote) and any objections, and move on. This charter is written in accordance with Section 3.4, Votes of the W3C Process Document and includes no voting procedures beyond what the Process Document requires.

Patent Policy

This Working Group operates 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.

For more information about disclosure obligations for this group, please see the W3C Patent Policy Implementation.

About this Charter

This charter for the Ubiquitous Web Applications Working Group has been created according to section 6.2 of the Process Document. In the event of a conflict between this document or the provisions of any charter and the W3C Process, the W3C Process shall take precedence.


Dave Raggett, and Stéphane Boyera

$Date: 2007/07/27 14:37:21 $