In 2008-2010, MPEG has been working on a new standard, officially called ISO/IEC 23007, whose short name is MPEG-U. This standard is dedicated to Widgets, adressing issues like widget communications with other widgets or with remote services (e.g. UPnP, DLNA services); or widget mobility or transfer with persistence of the widget status across deactivation and transfers.
This activity was started and a call for proposal was issued in October 2008. Part 1 of this standard (the specification) was issued as a first Working Draft in April 2009. The Committee Draft was issued in July 2009 and the final Committee Draft issued in October 2009. The standard has become Final Draft International Standard in April 2010 and published by ISO as an official standard in October 2010. Part 3 of the standard describes the reference software and conformance aspects and is still an ongoing work.
Contents
MPEG-U Part 1 specification (PDF): here.
MPEG-U Part 1
Part 1 of MPEG- U defines XML languages and the associate processing for the exchange, the control and the communication of widgets with other entities. It references “The W3C Widget 1.0 Family of Specifications” including “Widgets 1.0: Packaging and Configuration“, “Widgets 1.0: The widget Interface” in a normative manner but also defines extensions to these specifications. It is believed that the extensions are backward compatible, in the sense that a conformant MPEG Widget is by default a W3C conformant widget and that a conformant MPEG Widget Manager is a fully compliant W3C Widget User Agent. A W3C conformant User Agent will ignore the elements and attributes defined in the MPEG Widget namespace and will not provide the associated feature (e.g. communication, context). If this is not the case, I would be happy to discuss it and propose modification to the standard.
Some of the key features of MPEG-U are:
- the ability to design communicating widgets without caring about IP addresses or protocol;
- the ability to migrate widgets between devices while keeping their context;
- the ability to design communicating widgets using Javascript or using only declarative structures;
- and, the ability for a widget to load sub-widgets.
MPEG-U Part 3
Part 3 of MPEG-U specifies conformance aspects (including how to check that an implementation is correct and providing conformance sequences) and reference software (describing the reference software architecture and how to check that a widget is conformant).
Implementation
Telecom ParisTech is working on an implementation of MPEG-U as part of its Open Source project called GPAC. The MPEG-U specification is already implemented, enabling widgets exchange and communications with UPnP (see related page for more details). We also want to test MPEG-U widgets exchange and communications on top of other protocols (such as Bonjour, or Bluetooth) and widget communications with Web Services.
The code is released in the GPAC SVN. This implementation was demoed already in several places including at the SVG Open Conference 2009 (slides), where an SVG Widget User Agent and several SVG Widgets were shown.
Related Publications
You can also find several related scientific papers around this topic:
- Concolato, C., Le Feuvre, J., and Dufourd, J. 2009. Declarative interfaces for dynamic widgets communications. In Proceedings of the 9th ACM Symposium on Document Engineering (Munich, Germany, September 16 – 18, 2009). DocEng ’09. ACM, New York, NY, 241-244. DOI= http://doi.acm.org/10.1145/1600193.1600245
- Le Feuvre, J., Concolato, C., and Dufourd, J. 2009. Widgets Mobility. In Proceedings of the International Conference on Mobile Technology, Applications and Systems (Nice, France, September 2-4, 2009). Mobility 09.
- Dufourd, J., Concolato, C., and Le Feuvre, J. 2009. SVG Communicating Widgets. In Proceedings of the 7th International Conference on Scalable Vector Graphics (Mountain View, CA, USA, October 2-4, 2009). SVGOpen09.