22 December 2011

HTML5 - C. Sathiya Priya, III B.Tech IT 'A'

HTML5

HTML5 is a language for structuring and presenting content for the
World Wide Web, and is a core technology of the Internet originally
proposed by Opera Software. It is the fifth revision of the HTML
standard (created in 1990 and standardized as HTML4 as of 1997) and as
of November 2011 is still under development. Its core aims have been
to improve the language with support for the latest multimedia while
keeping it easily readable by humans and consistently understood by
computers and devices (web browsers, parsers, etc.). HTML5 is intended
to subsume not only HTML 4, but XHTML 1 and DOM2HTML (particularly
JavaScript) as well.

Following its immediate predecessors HTML 4.01 and XHTML
1.1, HTML5 is a response to the observation that the HTML and XHTML in
common use on the World Wide Web are a mixture of features introduced
by various specifications, along with those introduced by software
products such as web browsers, those established by common practice,
and the many syntax errors in existing web documents. It is also an
attempt to define a single markup language that can be written in
either HTML or XHTML syntax. It includes detailed processing models to
encourage more interoperable implementations; it extends, improves and
rationalises the markup available for documents, and introduces markup
and application programming interfaces (APIs) for complex web
applications. For the same reasons, HTML5 is also a potential
candidate for cross-platform mobile applications. Many features of
HTML5 have been built with the consideration of being able to run on
low-powered devices such as smartphones and tablets.
In December 2011 research firm Strategy Analytics forecast
sales of HTML5 compatible phones will top 1 billion in 2013. In
particular, HTML5 adds many new syntactical features. These include
the <video>, <audio>, <header> and <canvas> elements, as well as the
integration of SVG content that replaces the uses of generic <object>
tags. These features are designed to make it easy to include and
handle multimedia and graphical content on the web without having to
resort to proprietary plugins and APIs. Other new elements, such as
<section>, <article>, <header> and <nav>, are designed to enrich the
semantic content of documents. New attributes have been introduced for
the same purpose, while some elements and attributes have been
removed. Some elements, such as <a>, <cite> and <menu> have been
changed, redefined or standardized. The APIs and document object model
(DOM) are no longer afterthoughts, but are fundamental parts of the
HTML5 specification. HTML5 also defines in some detail the required
processing for invalid documents so that syntax errors will be treated
uniformly by all conforming browsers and other user agents.

History

The Web Hypertext Application Technology Working Group
(WHATWG) began work on the new standard in 2004, when the World Wide
Web Consortium (W3C) was focusing future developments on XHTML 2.0,
and HTML 4.01 had not been updated since 2000. In 2009, the W3C
allowed the XHTML 2.0 Working Group's charter to expire and decided
not to renew it. W3C and WHATWG are currently working together on the
development of HTML5.
Even though HTML5 has been well known among web developers
for years, it became the topic of mainstream media in April 2010 after
Apple Inc's then-CEO Steve Jobs issued a public letter titled
"Thoughts on Flash" where he concludes that Adobe "Flash is no longer
necessary to watch video or consume any kind of web content" and that
"new open standards created in the mobile era, such as HTML5, will
win". This sparked a debate in web development circles where some
suggested that while HTML5 provides enhanced functionality, developers
must consider the varying browser support of the different parts of
the standard as well as other functionality differences between HTML5
and Flash. In early November 2011 Adobe announced that it will
discontinue development of Flash for mobile devices and reorient its
efforts in developing tools utilizing HTML 5.

W3C standardization process

WHATWG started work on the specification in June 2004 under
the name Web Applications 1.0. As of January 2011, the specification
is in the Draft Standard state at the WHATWG, and in Working Draft
state at the W3C. Ian Hickson of Google is the editor of HTML5.
The HTML5 specification was adopted as the starting point of
the work of the new HTML working group of the World Wide Web
Consortium (W3C) in 2007. This working group published the First
Public Working Draft of the specification on 22 January 2008. The
specification is an ongoing work, and is expected to remain so for
many years, although parts of HTML5 are going to be finished and
implemented in browsers before the whole specification reaches final
Recommendation status.
According to the W3C timetable, it was estimated that HTML5
would reach W3C Recommendation by late 2010. However, the First Public
Working Draft estimate was missed by eight months, and Last Call and
Candidate Recommendation were expected to be reached in 2008, but as
of January 2011 HTML5 was still at Working Draft stage in the W3C.
HTML5 has been at Last Call in the WHATWG since October 2009.
Ian Hickson, editor of the HTML5 specification, expects the
specification to reach the Candidate Recommendation stage during 2012.
The criterion for the specification becoming a W3C Recommendation is
"two 100% complete and fully interoperable implementations". In an
interview with TechRepublic, Hickson guessed that this would occur in
the year 2022 or later. However, many parts of the specification are
stable and may be implemented in products:
In December 2009, WHATWG switched to an unversioned development
model for the HTML5 specification. W3C will still continue with
publishing a snapshot of the HTML5 specification.
On 14 February 2011, the W3C extended the charter of its HTML
Working Group with clear milestones for HTML5. The Working Group is
expected to advance HTML5 to "Last Call", an invitation to communities
inside and outside W3C to confirm the technical soundness of the
specification, in May 2011. The group will then shift focus to
gathering implementation experience. W3C is also developing a
comprehensive test suite to achieve broad interoperability for the
full specification by 2014, which is now the target date for
Recommendation.

Even as innovation continues, advancing HTML5 to Recommendation
provides the entire Web ecosystem with a stable, tested, interoperable
standard. The decision to schedule the HTML5 Last Call for May 2011
was an important step in setting industry expectations. Today we take
the next step, announcing 2014 as the target for Recommendation.
— Jeff Jaffe, Chief Executive Officer,

Markup:
HTML5 introduces a number of new elements and attributes
that reflect typical usage on modern websites. Some of them are
semantic replacements for common uses of generic block (<div>) and
inline (<span>) elements, for example <nav> (website navigation
block), <footer> (usually referring to bottom of web page or to last
lines of HTML code), or <audio> and <video> instead of <object>. Some
deprecated elements from HTML 4.01 have been dropped, including purely
presentational elements such as <font> and <center>, whose effects are
achieved using Cascading Style Sheets. There is also a renewed
emphasis on the importance of DOM scripting (e.g., JavaScript) in Web
behavior.
The HTML5 syntax is no longer based on SGML despite the
similarity of its markup. It has, however, been designed to be
backward compatible with common parsing of older versions of HTML. It
comes with a new introductory line that looks like an SGML document
type declaration, <!DOCTYPE html>, which triggers the
standards-compliant rendering mode. As of 5 January 2009, HTML5 also
includes Web Forms 2.0, a previously separate WHATWG specification.
New APIs
In addition to specifying markup, HTML5 specifies scripting
application programming interfaces (APIs). Existing document object
model (DOM) interfaces are extended and de facto features documented.
There are also new APIs, such as:

• The canvas element for immediate mode2D drawing. See Canvas 2D API
Specification 1.0 specification
• Timed media playback
• Offline storage database(offline web applications) Document editing
• Drag-and-drop
• Browser history management
• MIME typeand protocol handler registration
• Microdata


Not all of the above technologies are included in the W3C
HTML5 specification, though they are in the WHATWG HTML specification.
Some related technologies, which are not part of either the W3C HTML5
or the WHATWG HTML specification, are as follows. The W3C publishes
specifications for these separately.
• Geolocation
• Web SQL Database, a local SQL Database (no longer maintained).
• The Indexed Database API, an indexed hierarchical key-value store
(formerly WebSimpleDB).
• Web Storage, a key-value pair storage framework that provides
enhanced behaviour similar to Cookiesbut with larger storage capacity
and improved API. • File API, Handle file uploads and file
manipulation.
• Directories and System. This API is intended to satisfy
client-side-storage use cases not well served by databases.
• File Writer. An API for writing to files from web applications.

A common misconception is that HTML5 can provide
animation within web pages, which is untrue. Either JavaScript or CSS3
is necessary for animating HTML elements. Animation is also possible
using JavaScript and HTML 4, and within SVG elements through SMIL,
although browser support of the latter remains uneven as of 2011.

XHTML5
XHTML5 is the XML serialization of HTML5. XML documents
must be served with an XML Internet media type such as
application/xhtml+xml or application/xml. XHTML5 requires XML's
strict, well-formed syntax. The choice between HTML5 and XHTML5 boils
down to the choice of a MIME/content type: the media type one chooses
determines what type of document should be used. In XHTML5 the HTML5
doctype html is optional and may simply be omitted. HTML that has been
written to conform to both the HTML and XHTML specifications—and which
will therefore produce the same DOM tree whether parsed as HTML or
XML—is termed "polyglot markup".

Error handling
An HTML5 (text/html) browser will be flexible in handling
incorrect syntax. HTML5 is designed so that old browsers can safely
ignore new HTML5 constructs. In contrast to HTML 4.01, the HTML5
specification gives detailed rules for lexing and parsing, with the
intent that different compliant browsers will produce the same result
in the case of incorrect syntax. Although HTML5 now defines a
consistent behavior for "tag soup" documents, those documents are not
regarded as conforming to the HTML5 standard.

Popularity
According to a report released on 30 September 2011, 34
of the world's top 100 Web sites were using HTML5 – the adaptation led
by search engines and social networks.

Differences from HTML 4.01 and XHTML 1.x
The following is a cursory list of differences and some
specific examples.
• New parsingrules: oriented towards flexible parsing and
compatibility; not based on SGML
• Ability to use inline SVGand MathMLin text/html
• New elements: article, aside, audio, bdo, canvas, command, datalist,
details, embed, figcaption, figure, footer, header, hgroup, keygen,
mark, meter, nav, output, progress, rp, rt, ruby, section, source,
summary, time, video, wbr
• New types of form controls: dates and times, email, url, search,
number, range, tel, color
• New attributes: charset(on meta), async(on script)
• Global attributes (that can be applied for every element): id,
tabindex, hidden, data-(custom data attributes)
• Deprecated elements will be dropped altogether: acronym, applet,
basefont, big, center, dir, font, frame, frameset, isindex, noframes,
strike, tt

The HTML5 logo
On 18 January 2011, the W3C introduced a logo to represent
the use of or interest in HTML5. Unlike other badges previously issued
by the W3C, it does not imply validity or conformance to a certain
standard. As of 1 April 2011, this logo is official.hen initially
presenting it to the public, the W3C announced the HTML5 logo as a
"general-purpose visual identity for a broad set of open web
technologies, including HTML5, CSS, SVG, WOFF, and others". Some web
standard advocates, including The Web Standards Project, criticised
that definition of "HTML5" as an umbrella term, pointing out the
blurring of terminology and the potential for miscommunication. Three
days later, the W3C responded to community feedback and changed the
logo's definition, dropping the enumeration of related technologies.
The W3C then said the logo "represents HTML5, the cornerstone for
modern Web applications".