# CE-HTML

CE-HTML is an XHTML-based standard for designing webpages with remote user interfaces for consumer electronic devices on Universal Plug and Play networks. The standard is intended for defining user interfaces that can gracefully scale on a variety of screen sizes and geometries, including those of mobile devices to high definition television sets.
CE-HTML is part of the CEA-2014 standard (also referred to as "Web4CE" which is short for Web for Consumer Electronics), defined within the Consumer Electronics Association (CEA).

## Features

CE-HTML consists of the following internet languages:
* ECMAScript 262, 3rd edition
* XHTML 1.0 transitional/strict
* CSS TV Profile 1.0
* XMLHttpRequest object
* DOM level 2.0 (Core, Style, Events, HTML)
* a number of specific extensions for CE devices.
CE-HTML can both be used in-home through UPnP as via the Internet. It allows the content creator to use the common and known languages in the web to define a user interface that can be controlled on a CE device. A CE-HTML client typically consists of a web browser adapted for the CE-HTML standard running on a consumer electronics device. CE-HTML offers specific extensions for these browsers such as :
* Multi-tap or other CE-specific alpha-numeric input support, by making use of the CSS3 input-format tag.
* Media (audio/video) playout through the use of an audio/video scripting object.
* Operation via remote control (spatial navigation) using the up, down, left, right and OK keys
* Client capability matching – to match the client capabilities to the user interfaces that the server offers. For this purpose, each CE-HTML compliant client is making use of a capability profile. This profile, placed in the user-agent string of the client, lets the server know what part of CE-HTML is supported by the client. The server in turn transmits its capabilities in a so-called "XML UI Listing" so the client can choose between the various CE-HTML user interfaces the server offers.
* User interface profiles for usage on CE devices such as a television. These are predefined capability profiles on which a CE-HTML client can base its capabilities. They define e.g. the fonts supported, screen-size of the device and the media that is supported by the a/v scripting object in the device. All profiles are based on a 10-foot user interface.
* Third-party notifications which allow a client to poll for messages from an external server, and display these to the user regardless of the currently displayed user interface.
* A specific new MIME-type for CE-HTML content: "application/ce-html+xml".
Typical CE-HTML code looks like this:

## History

CE-HTML was developed within the Consumer Electronics Association R7WG9 working group – consisting of a number of CE-manufacturers – to formulate an answer to the problem of displaying HTML (web) content on a device that does not possess the characteristics of a typical personal computer. CE devices have problems displaying regular web pages because these pages make use of:
* small fonts and images, not readable from a distance as when experienced from a TV or set-top box
* only mouse or keyboard based navigation, not navigable using remote control
* no highlight on the navigable elements so a user cannot see the element they navigate
* many non-portable browser specific extensions (DOM level 0/legacy DOM)
* no standard audio/video object implementation
* the use of proprietary – not CE-compatible – extensions such as Adobe Flash
Further difficulties with using a CE device to display web content are caused by the fact that CE devices typically have different capabilities such as different resolutions, remote controls and audio/video codecs.

## Use

CE-HTML is increasingly used within other standards, such as the Open IPTV Forum, the Digital Living Network Alliance (as of version 2) and HbbTV. Some research suggests that CEA-2014 (of which CE-HTML is an important part) will be one of the key technologies in the living room internet experience. There are currently a number of browser vendors and solution providers that claim to have a CE-HTML capable browser, such as Oregan developed by Oregan Networks Ltd and the Wedison project which is based on WebKit.
Philips released the first devices which support the CE-HTML standard through the Net TV feature in Europe in April, 2009, which in 2010 expanded to include Sharp and Loewe platforms.
Smart TV (sometimes referred to as Connected TV or Hybrid TV) devices are also being released by Samsung, Panasonic and Sony, although these base their work on many other programming languages.