<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.whatwg.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Utcursch</id>
	<title>WHATWG Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.whatwg.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Utcursch"/>
	<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/wiki/Special:Contributions/Utcursch"/>
	<updated>2026-05-13T12:07:21Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=RelExtensions&amp;diff=2656</id>
		<title>RelExtensions</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=RelExtensions&amp;diff=2656"/>
		<updated>2007-11-09T11:15:16Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: wikified the table&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page lists the allowed extension values for the rel=&amp;quot;&amp;quot; attribute in HTML5. You may add your own values to this list, which makes them legal HTML5 rel values. We ask that you try to avoid redundancy; if someone has already defined a value that does roughly what you want, please reuse it.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!  rowspan=2 | Keyword&lt;br /&gt;
!  colspan=2 | Effect on...&lt;br /&gt;
!  rowspan=2 | Brief description&lt;br /&gt;
!  rowspan=2 | Link to more details&lt;br /&gt;
!  rowspan=2 | Synonyms&lt;br /&gt;
!  rowspan=2 | Status&lt;br /&gt;
|- &lt;br /&gt;
! link&lt;br /&gt;
! a and area&lt;br /&gt;
|- &lt;br /&gt;
| script&lt;br /&gt;
| not allowed&lt;br /&gt;
| not allowed&lt;br /&gt;
| Was proposed to replace &amp;amp;lt;script&amp;gt;. Use &amp;amp;lt;script&amp;gt; instead.&lt;br /&gt;
| none&lt;br /&gt;
| &lt;br /&gt;
| Rejected&lt;br /&gt;
|- &lt;br /&gt;
| glossary&lt;br /&gt;
| Hyperlink&lt;br /&gt;
| Hyperlink&lt;br /&gt;
| Target document provides definitions for words in current document.&lt;br /&gt;
| [http://www.w3.org/TR/html4/types.html#h-6.12 HTML4]&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| chapter&lt;br /&gt;
| Hyperlink&lt;br /&gt;
| Hyperlink&lt;br /&gt;
| Target document is a subdocument of the current document.&lt;br /&gt;
| [http://www.w3.org/TR/html4/types.html#h-6.12 HTML4]&lt;br /&gt;
| section, subsection, appendix&lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| edit&lt;br /&gt;
| Hyperlink&lt;br /&gt;
| Hyperlink&lt;br /&gt;
| Target document is an editable version of the current document.&lt;br /&gt;
| [http://bitworking.org/projects/atom/draft-ietf-atompub-protocol-11.html#new-link-relation Atom Protocol]&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| openid.server&lt;br /&gt;
| external resource&lt;br /&gt;
| not allowed&lt;br /&gt;
| OpenID authentication delegation&lt;br /&gt;
| [http://openid.net/specs/openid-authentication-1_1.html#delegating_authentication OpenID specificaion]&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| openid.delegate&lt;br /&gt;
| external resource&lt;br /&gt;
| not allowed&lt;br /&gt;
| OpenID authentication delegation&lt;br /&gt;
| [http://openid.net/specs/openid-authentication-1_1.html#delegating_authentication OpenID specificaion]&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| widget&lt;br /&gt;
| Hyperlink&lt;br /&gt;
| Hyperlink&lt;br /&gt;
| Points to a widget.&lt;br /&gt;
| [http://dev.w3.org/2006/waf/widgets/Overview.html#autodiscovery Widgets 1.0 Editor&#039;s draft]&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| service&lt;br /&gt;
| Hyperlink&lt;br /&gt;
| not allowed&lt;br /&gt;
| Points to a resource describing a service API&lt;br /&gt;
| [[ServiceRelExtension]]&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Effect on... link&amp;quot; column must either say &amp;quot;not allowed&amp;quot; if the rel value is not allowed on &amp;amp;lt;link&amp;gt; elements, &amp;quot;hyperlink&amp;quot; if the rel value creates a hyperlink, or &amp;quot;external resource&amp;quot; if the rel value creates a link to an external resource.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Effect on... a and area&amp;quot; column must either say &amp;quot;not allowed&amp;quot; or &amp;quot;hyperlink&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
For the &amp;quot;Status&amp;quot; section to be changed to &amp;quot;Accepted&amp;quot;, the proposed keyword must have been through the [http://microformats.org/wiki/process Microformats process], and been approved by the Microformats community.&lt;br /&gt;
&lt;br /&gt;
For more details, see [http://whatwg.org/specs/web-apps/current-work/#linkTypes the HTML5 specification].&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=FAQ&amp;diff=2655</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=FAQ&amp;diff=2655"/>
		<updated>2007-11-09T11:01:28Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: m&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== What is the WHATWG? == &lt;br /&gt;
&lt;br /&gt;
The WHATWG is a growing community of people interested in evolving the Web. It focuses primarily on the development of HTML and APIs needed for Web applications.&lt;br /&gt;
&lt;br /&gt;
The WHATWG was founded by individuals of Apple, the Mozilla Foundation, and Opera Software in 2004, after a W3C workshop. Apple, Mozilla and Opera were becoming increasingly concerned about the W3C’s direction with XHTML, lack of interest in HTML and apparent disregard for the needs of real-world authors. So, in response, these organisations set out with a mission to address these concerns and the Web Hypertext Application Technology Working Group was born.&lt;br /&gt;
&lt;br /&gt;
== What does the acronym WHATWG stand for? == &lt;br /&gt;
&lt;br /&gt;
It stands for &amp;quot;Web Hypertext Application Technology Working Group&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== What is the WHATWG working on? == &lt;br /&gt;
&lt;br /&gt;
The WHATWG is working on HTML 5 (see below). In the past it has worked on Web Forms 2.0 and Web Controls 1.0 as well. Web Forms 2.0 (see below) has reached a stable stage and we&#039;re awaiting implementation experience. Web Controls 1.0 has been abandoned for now, awaiting what [http://www.w3.org/TR/xbl/ XBL 2.0] will bring us.&lt;br /&gt;
&lt;br /&gt;
== What is HTML 5? == &lt;br /&gt;
&lt;br /&gt;
[http://www.whatwg.org/specs/web-apps/current-work/ HTML 5] is the main focus of the WHATWG community and also that of the (new) W3C HTML Working Group. HTML 5 is a new version of HTML 4.01 and XHTML 1.0 addressing many of the issues of those specifications while at the same time enhancing (X)HTML to more adequately address Web applications. Besides defining a markup language that can be written in both HTML (HTML5) and XML (XHTML5) it also defines many APIs that form the basis of the Web architecture. These APIs are known to some as &amp;quot;DOM Level 0&amp;quot; and have never been documented. Yet they are extremely important for browser vendors to support existing Web content and for authors to be able to build Web applications.&lt;br /&gt;
&lt;br /&gt;
== What is Web Forms 2.0? ==&lt;br /&gt;
&lt;br /&gt;
[http://www.whatwg.org/specs/web-forms/current-work/ Web Forms 2.0] is an update to the forms chapters of HTML 4.01 and XHTML 1.0. The specification is informally declared feature complete and the WHATWG is awaiting implementation experience. This specification will in due course be folded into the HTML 5 specification when HTML 5 reaches a more stable state.&lt;br /&gt;
&lt;br /&gt;
== How can I get involved? == &lt;br /&gt;
&lt;br /&gt;
There are lots of ways you can get involved, take a look and see &#039;&#039;[[What you can do]]&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
== Is participation free? == &lt;br /&gt;
&lt;br /&gt;
Yes, everyone can contribute. There are no memberships fees involved, it&#039;s an open process. You may easily subscribe to the WHATWG [http://whatwg.org/mailing-list mailing lists]. You may also [http://blog.whatwg.org/w3c-restarts-html-effort join the the W3C&#039;s new HTMLWG] by going through the slightly longer application process.&lt;br /&gt;
&lt;br /&gt;
== Will (X)HTML 5 finally put an end the XHTML as &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; debate? == &lt;br /&gt;
&lt;br /&gt;
Yes. Unlike HTML 4.01 and XHTML 1.0, the choice of HTML or XHTML is solely dependent upon the choice of MIME type, rather than the DOCTYPE. See [[HTML vs. XHTML]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== What will the DOCTYPE be? == &lt;br /&gt;
&lt;br /&gt;
In HTML: &amp;lt;code&amp;gt;&amp;amp;lt;!doctype html&amp;amp;gt;&amp;lt;/code&amp;gt;. The only reason there is one for HTML is to trigger standards mode in browsers.&lt;br /&gt;
&lt;br /&gt;
In XHTML: no DOCTYPE. You may include one if you wish, though this is not recommended as they are only relevant when using a validating parser which web browsers do not have.&lt;br /&gt;
&lt;br /&gt;
== If there is no DTD, how can I validate my page? == &lt;br /&gt;
&lt;br /&gt;
With an [http://validator.whatwg.org/ HTML 5 validator].&lt;br /&gt;
&lt;br /&gt;
== What is an HTML Serialisation? == &lt;br /&gt;
&lt;br /&gt;
The HTML serialisation refers to the syntax of an HTML document defined in HTML5. The syntax is inspired by the SGML syntax from earlier versions of HTML, but it is defined to be more compatible with the way browsers actually handle HTML in reality.&lt;br /&gt;
&lt;br /&gt;
Any document whose MIME type is determined to be &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; is considered to be an HTML serialisation, even if the author has tried to use XML syntax.&lt;br /&gt;
&lt;br /&gt;
== What is an XML (or XHTML) Serialisation? == &lt;br /&gt;
&lt;br /&gt;
The XML Serialization refers to the syntax defined by XML 1.0 and Namespaces in XML 1.0. A resource that has an XML MIME type, such as &amp;lt;code&amp;gt;application/xhtml+xml&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;application/xml&amp;lt;/code&amp;gt;, is an XML document and if it uses elements in the HTML namespace, it contains XHTML. If the root element is &amp;amp;#8220;html&amp;amp;#8221; in the HTML namespace, the document is referred to as an XHTML document.&lt;br /&gt;
&lt;br /&gt;
== What MIME type does HTML5 use? == &lt;br /&gt;
&lt;br /&gt;
The HTML serialisation &#039;&#039;must&#039;&#039; be served using the &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; MIME type.&lt;br /&gt;
&lt;br /&gt;
The XHTML serialisation &#039;&#039;must&#039;&#039; be served using an XML MIME type, such as &amp;lt;code&amp;gt;application/xhtml+xml&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;application/xml&amp;lt;/code&amp;gt;. Unlike XHTML 1.0, XHTML 5 &#039;&#039;must not&#039;&#039; be served as &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Using the incorrect MIME type (&amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;) for XHTML will cause the document to be parsed according to parsing requirements for HTML. In other words, it will be treated as tag soup. Ensuring the use of an XML MIME type is the only way to ensure that browsers handle the document as XML.&lt;br /&gt;
&lt;br /&gt;
== What about Microsoft and Internet Explorer? == &lt;br /&gt;
&lt;br /&gt;
HTML 5 is being developed with IE compatibility in mind. Support for many features can be simulated using JavaScript.&lt;br /&gt;
&lt;br /&gt;
== When will we be able to start using these new features? == &lt;br /&gt;
&lt;br /&gt;
As soon as browsers begin to support them. You do not need to wait till HTML5 becomes a recommendation, because that can&amp;amp;#8217;t happen until after the implementations are completely finished. [Need to expand on this answer] &lt;br /&gt;
&lt;br /&gt;
== How can I keep track of changes to the spec? == &lt;br /&gt;
&lt;br /&gt;
The specification is available in the [http://svn.whatwg.org/ subversion repository]. You may use any svn client to check out the latest version and use your clients diff tools in order compare revisions and see what has been changed. You may also use the online [http://html5.org/tools/web-apps-tracker (X)HTML5 Tracker Tool]. The tool provides an online interface for selecting and comparing revisions of the spec.&lt;br /&gt;
&lt;br /&gt;
== When will HTML 5 be finished? == &lt;br /&gt;
&lt;br /&gt;
It is estimated that HTML5 will reach a W3C recommendation in the year 2022 or later. This will be approximately 18-20 years of development, since beginning in mid-2004.&lt;br /&gt;
&lt;br /&gt;
For a spec to become a REC, it requires two 100% complete and fully interoperable implementations, which is proven by each successfully passing literally thousands of test cases (20,000 tests for the whole spec would probably be a conservative estimate). When you consider how long it takes to write that many test cases and how long it takes to implement each feature, you&amp;amp;#8217;ll begin to understand why the time frame seems so long.&lt;br /&gt;
&lt;br /&gt;
However, the WHATWG recognises and understands the problem with this: different parts of the specification are at different maturity levels. Some sections are already relatively stable and there are implementations that are already quite close to completion, and those features can be used today (e.g. &amp;amp;lt;canvas&amp;amp;gt;). But other sections are still being actively worked on and changed regularly, or not even written yet.&lt;br /&gt;
&lt;br /&gt;
The details are still being worked out, but the plan is to indicate the maturity level on a per-section basis. Sections like the Link Types, which is relatively simple, isn&amp;amp;#8217;t going to take long to become interoperably implemented. In fact, Mozilla is already implementing the new autodiscovery features for Firefox 3.0, and it shouldn&amp;amp;#8217;t take long for places like Technorati, Bloglines, etc. to implement follow.&lt;br /&gt;
&lt;br /&gt;
Once a section is interoperably implemented, it&amp;amp;#8217;s quite stable and unlikely to change significantly. Any changes to such a section would most likely only be editorial in nature, particularly if the feature is already in widespread use (as autodiscovery already is today).&lt;br /&gt;
&lt;br /&gt;
The point to all this is that you shouldn&amp;amp;#8217;t place too much weight on the status of the specification as a whole. You need to consider the stability and maturity level of each section individually.&lt;br /&gt;
&lt;br /&gt;
== Should I close empty elements with &amp;lt;code&amp;gt;/&amp;amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;amp;gt;&amp;lt;/code&amp;gt;? == &lt;br /&gt;
&lt;br /&gt;
Void elements in HTML (the new name for empty elements) do not require a trailing slash. e.g. Instead of writing &amp;lt;code&amp;gt;&amp;amp;lt;br /&amp;amp;gt;&amp;lt;/code&amp;gt;, you only need to write &amp;lt;code&amp;gt;&amp;amp;lt;br&amp;amp;gt;&amp;lt;/code&amp;gt;. This applies to all void elements, including &amp;lt;code&amp;gt;img&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;input&amp;lt;/code&amp;gt;, etc.&lt;br /&gt;
&lt;br /&gt;
However, due to the widespread attempts to use XHTML 1.0, there are a significant number of pages using the trailing slash. Because of this, the syntax has been permitted (though it is not recommended) in order to ease migration from XHTML 1.0 to HTML5.&lt;br /&gt;
&lt;br /&gt;
It is important to realise that this syntax serves no purpose in HTML, it is just ignored by browsers. Despite the fact that it is based upon the XML syntax, it does not mean that HTML documents can be parsed with XML tools. HTML and XHTML are separate serialisations and they each must be processed using tools designed to handle each format.&lt;br /&gt;
&lt;br /&gt;
== If I&amp;amp;#8217;m careful with the syntax I use in my HTML document, can I process it with an XML parser? == &lt;br /&gt;
&lt;br /&gt;
No, HTML and XML have [#differences many significant differences], particularly parsing requirements, and you cannot process one using tools designed for the other. However, since HTML5 is defined in terms of the DOM, in most cases there are both HTML and XHTML serialisations available that can represent the same document. There are, however, a few differences explained later that make it impossible to represent some HTML documents accurately as XHTML and vice versa. &lt;br /&gt;
&lt;br /&gt;
If you wish to process an HTML document as XHTML, it requires that you and convert it into XHTML first; and vice versa for processing XHTML as HTML.&lt;br /&gt;
&lt;br /&gt;
== What is the namespace declaration? == &lt;br /&gt;
&lt;br /&gt;
In XHTML, you are required to specify the namespace. (need to find a simple explanation for what namespaces are for)&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
In HTML, the &amp;lt;code&amp;gt;xmlns&amp;lt;/code&amp;gt; attribute is only allowed on the &amp;lt;code&amp;gt;html&amp;lt;/code&amp;gt; element, and only if it has the value &amp;amp;#8220;&amp;lt;code&amp;gt;http://www.w3.org/1999/xhtml&amp;lt;/code&amp;gt;&amp;amp;#8220;. It doesn&amp;amp;#8217;t do anything at all, it is merely allowed to ease migration from XHTML 1.0. It is not actually a namespace declaration in HTML, because HTML doesn&amp;amp;#8217;t support namespaces.&lt;br /&gt;
&lt;br /&gt;
== Will there be support for namespaces in HTML? == &lt;br /&gt;
&lt;br /&gt;
HTML 5 is being defined in terms of the DOM and all HTML elements will exist in the HTML namespace: &amp;lt;code&amp;gt;http://www.w3.org/1999/xhtml&amp;lt;/code&amp;gt;. However, unlike the XHTML serialisation, there is no real namespace syntax available in the HTML serialisation (see previous question). In other words, you do not need to declare the namespace in your HTML markup, like you do in XHTML.&lt;br /&gt;
&lt;br /&gt;
XHTML requires that the namespace to be declared appropriately using the &amp;lt;code&amp;gt;xmlns&amp;lt;/code&amp;gt; attribute. The namespace declaration is unnecessary in HTML because browsers will already know it&amp;amp;#8217;s an HTML document based on the MIME type (&amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
There have been proposals for introducing MathML markup into HTML, which would exist in the MathML namespace. However, if that proposal is accepted, it will be supported in a way that does not require explicit namespace declaration in the markup.&lt;br /&gt;
&lt;br /&gt;
== How do I specify the character encoding? == &lt;br /&gt;
&lt;br /&gt;
For HTML, it is strongly recommended that you specify the encoding using the HTTP &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; header. If you are unable to [http://www.w3.org/International/O-HTTP-charset configure your server] to send the correct headers, then you may use the &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element. The &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element used for this purpose must occur as the first element in the head (even before the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;), and within the first 512 bytes of the file.&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;meta charset=&amp;quot;UTF-8&amp;quot;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that this &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element is different from HTML 4, though it is compatible with many browsers because of the way encoding detection has been implemented.&lt;br /&gt;
&lt;br /&gt;
In XHTML, XML rules for determining the character encoding apply. You may use either the HTTP &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; header or the XML declaration to specify the encoding.&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot;?&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otherwise, you must use the default of &amp;lt;code&amp;gt;UTF-8&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;UTF-16&amp;lt;/code&amp;gt;. It is recommended that you use &amp;lt;code&amp;gt;UTF-8&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== What are the differences between HTML and XHTML? == &lt;br /&gt;
&lt;br /&gt;
See the list of [[HTML vs. XHTML#Differences_Between_HTML_and_XHTML|differences between HTML and XHTML]] in the wiki.&lt;br /&gt;
&lt;br /&gt;
== Does HTML5 support &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; on any element like XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
No, supporting &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; on any element has several problems associated with it that make it difficult to support in HTML5.&lt;br /&gt;
&lt;br /&gt;
* It isn&amp;amp;#8217;t backwards compatible with existing browsers.&lt;br /&gt;
* It adds no new functionality that can&amp;amp;#8217;t already be achieved using the &amp;lt;code&amp;gt;a&amp;lt;/code&amp;gt; element.&lt;br /&gt;
* It doesn&amp;amp;#8217;t make sense for all elements, such as interactive elements like &amp;lt;code&amp;gt;input&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;button&amp;lt;/code&amp;gt;, where the use of href would interfere with their normal function.&lt;br /&gt;
* Browser vendors have reported that implementing it would be extremely complex.&lt;br /&gt;
&lt;br /&gt;
The only advantage it seems to add is that it reduces typing for authors in some cases, but that is not a strong enough reason to support it in light of the other reasons.&lt;br /&gt;
&lt;br /&gt;
== Why does HTML5 legitimise tag soup? == &lt;br /&gt;
&lt;br /&gt;
Actually it doesn&amp;amp;#8217;t. This is a misconception that comes from the confusion between conformance requirements for documents, and the requirements for user agents.&lt;br /&gt;
&lt;br /&gt;
Due to the fundamental design principle of supporting existing content, the spec must define how to handle all HTML, regardless of whether documents are conforming or not. Therefore, the spec defines (or will define) precisely how to handle and recover from erroneous markup, much of which would be considered tag soup.&lt;br /&gt;
&lt;br /&gt;
For example, the spec defines algorithms for dealing with syntax errors such as misnested tags, which will ensure that a well structured DOM tree can be produced.&lt;br /&gt;
&lt;br /&gt;
Defining that is essential for one day achieving interoperability between browsers and reducing the dependence upon reverse engineering each other.&lt;br /&gt;
&lt;br /&gt;
However, the conformance requirements for authors are defined separately from the processing requirements. Just because browsers are required to handle erroneous content, it does not make such markup conforming.&lt;br /&gt;
&lt;br /&gt;
For example, user agents will be required to support the marquee element, but authors must not use the marquee element in conforming documents.&lt;br /&gt;
&lt;br /&gt;
It is important to make the distinction between the rules that apply to user agents and the rules that apply to authors for produce conforming documents. They are completely orthogonal.&lt;br /&gt;
&lt;br /&gt;
== What are &amp;amp;#8220;Web Applications&amp;amp;#8221;? == &lt;br /&gt;
&lt;br /&gt;
The term &amp;amp;#8220;Web Application&amp;amp;#8221; in this context refers to applications  accessed over the World Wide Web by using a Web browser. This group  is not attempting to describe APIs for writing high-end  sophisticated programs such as office productivity suites,  graphics manipulation packages, or 3D games.&lt;br /&gt;
&lt;br /&gt;
Some of the most famous examples of Web applications currently deployed are [http://www.ebay.com/ eBay] and [http://www.amazon.com/ Amazon].&lt;br /&gt;
&lt;br /&gt;
== Aren&amp;amp;#8217;t &amp;amp;#8220;Web Applications&amp;amp;#8221; already possible? == &lt;br /&gt;
&lt;br /&gt;
Yes. This working group aims to make their development &#039;&#039;easier&#039;&#039;, and hopes to specify new technologies that make it possible to make much prettier and more usable interfaces with less dependence on complex scripts, less dependence on server-generated pages, and a more seamless user experience.&lt;br /&gt;
&lt;br /&gt;
For example, currently HTML forms do not specify a way to specify that a control is a required control that must be filled in before submission: such features have to be scripted explicitly.&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=User:Utcursch&amp;diff=2512</id>
		<title>User:Utcursch</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=User:Utcursch&amp;diff=2512"/>
		<updated>2007-09-04T10:40:56Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: about me&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[wikipedia:User:Utcursch|Utkarshraj Atmaram]]&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=FAQ&amp;diff=2511</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=FAQ&amp;diff=2511"/>
		<updated>2007-09-04T10:39:45Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: /* What are the differences between HTML and XHTML? */ wikilink&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== What is the WHATWG and why did it form? == &lt;br /&gt;
&lt;br /&gt;
In 2004, after a W3C workshop, Apple, Mozilla and Opera were becoming increasingly concerned about the W3C’s direction with XHTML, lack of interest in HTML and apparent disregard for the needs of real-world authors. So, in response, these organisations set out to with a mission to address these concerns and the Web Hypertext Application Technology Working Group was born.&lt;br /&gt;
&lt;br /&gt;
These days, the WHATWG is a growing community of browser vendors, web developers, and other people interested in the development of the the next generation of HTML and related technologies, specifically designed to allow authors to write and deploy applications over the World Wide Web.&lt;br /&gt;
&lt;br /&gt;
== What are &amp;amp;#8220;Web Applications&amp;amp;#8221;? == &lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The term &amp;amp;#8220;Web Application&amp;amp;#8221; in this context refers to applications  accessed over the World Wide Web by using a Web browser. This group  is not attempting to describe APIs for writing high-end  sophisticated programs such as office productivity suites,  graphics manipulation packages, or 3D games.&lt;br /&gt;
&lt;br /&gt;
Some of the most famous examples of Web applications currently deployed are [http://www.ebay.com/ eBay] and [http://www.amazon.com/ Amazon].&lt;br /&gt;
&lt;br /&gt;
== Aren&amp;amp;#8217;t &amp;amp;#8220;Web Applications&amp;amp;#8221; already possible? == &lt;br /&gt;
&lt;br /&gt;
Yes. This working group aims to make their development &amp;lt;em&amp;gt;easier&amp;lt;/em&amp;gt;, and hopes to specify new technologies that make it possible to make much prettier and more usable interfaces with less dependence on complex scripts, less dependence on server-generated pages, and a more seamless user experience.&lt;br /&gt;
&lt;br /&gt;
For example, currently HTML forms do not specify a way to specify that a control is a required control that must be filled in before submission: such features have to be scripted explicitly.&lt;br /&gt;
&lt;br /&gt;
== What exactly are you working on? == &lt;br /&gt;
&lt;br /&gt;
The work is currently split between three specifications although the main focus is on the HTML 5 draft.&lt;br /&gt;
&lt;br /&gt;
[http://whatwg.org/specs/web-forms/current-work/ Web Forms 2.0] is a superset of the HTML 4 and XHTML 1.0 form chapters. More advanced controls like RTF controls, menus and toolbars are the domain of [http://whatwg.org/specs/web-apps/current-work/ HTML 5] which is a rewrite of HTML 4, XHTML 1.0 and DOM Level 2 HTML. These drafts are in active development. Web Forms 2 is the most mature and will in due course be integrated into HTML 5.&lt;br /&gt;
&lt;br /&gt;
[http://whatwg.org/specs/web-controls/current-work/ Web Controls 1.0] is intended to add functionality to Javascript and CSS that aid the creation of custom widgets. However, this will be influenced by the design and implementations of XBL2, and so will not be available in the near future.&lt;br /&gt;
&lt;br /&gt;
== What is (X)HTML 5? == &lt;br /&gt;
&lt;br /&gt;
[Web Applications 1.0, Web Forms 2.0&amp;amp;#8230;]&lt;br /&gt;
&lt;br /&gt;
== What about XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
[Find a simple, diplomatic way to talk about the status of XHTML 2.0. See [http://www.whatwg.org/specs/web-apps/current-work/#relationship0 Web Apps notes about XHTML2]]&lt;br /&gt;
&lt;br /&gt;
== What about XForms? == &lt;br /&gt;
&lt;br /&gt;
[see [http://www.whatwg.org/specs/web-forms/current-work/#r-to-xforms Web Forms notes about XForms]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Why do we need both HTML 5 and XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
We don&amp;amp;#8217;t. What the wider Web community needs is a language which, if implemented by a Web browser, will result in a browser that can render all the existing content on the Web, and which will have new features to make the Web a better place. XHTML2.0 is not such a language &amp;amp;mdash; a browser that only supports XHTML2 could not render existing Web content correctly.&lt;br /&gt;
&lt;br /&gt;
== Why improve HTML? == &lt;br /&gt;
&lt;br /&gt;
[Because that&amp;amp;#8217;s what most authors are using and all browsers support.] &lt;br /&gt;
&lt;br /&gt;
== Why not improve XHTML instead? == &lt;br /&gt;
&lt;br /&gt;
[HTML 5 is actually making improvements to both HTML and XHTML&amp;amp;#8230;]&lt;br /&gt;
&lt;br /&gt;
== Will (X)HTML 5 finally put an end the XHTML as &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;		debate? == &lt;br /&gt;
&lt;br /&gt;
Yes. Unlike HTML 4.01 and XHTML 1.0, the choice of HTML or XHTML is solely dependent upon the choice of MIME type, rather than the DOCTYPE. See [/html-vs-xhtml HTML vs. XHTML]&lt;br /&gt;
&lt;br /&gt;
== Is XHTML better than HTML? == &lt;br /&gt;
&lt;br /&gt;
[Some people say XHTML is better because&amp;amp;#8230; But see the next question.]&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;See also: [[HTML vs. XHTML]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Is HTML better than XHTML? == &lt;br /&gt;
&lt;br /&gt;
[Some people say HTML is better because&amp;amp;#8230; But see the previous question.]&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;See also: [[HTML vs. XHTML]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== What will the DOCTYPE be? == &lt;br /&gt;
&lt;br /&gt;
In HTML: &amp;lt;code&amp;gt;&amp;amp;lt;!doctype html&amp;amp;gt;&amp;lt;/code&amp;gt;. The only reason there is one for HTML is to trigger standards mode in browsers.&lt;br /&gt;
&lt;br /&gt;
In XHTML: no DOCTYPE. You may include one if you wish, though this is not recommended as they are only relevant when using a validating parser which web browsers do not have.&lt;br /&gt;
&lt;br /&gt;
== If there is no DTD, how can I validate my page? == &lt;br /&gt;
&lt;br /&gt;
With a [http://hsivonen.iki.fi/validator/html5/ conformance checker].&lt;br /&gt;
&lt;br /&gt;
== What is an HTML Serialisation? == &lt;br /&gt;
&lt;br /&gt;
The HTML serialisation refers to the syntax of an HTML document defined in HTML5. The syntax is inspired by the SGML syntax from earlier versions of HTML, but it is defined to be more compatible with the way browsers actually handle HTML in reality.&lt;br /&gt;
&lt;br /&gt;
Any document whose MIME type is determined to be &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; is considered to be an HTML serialisation, even if the author has tried to use XML syntax.&lt;br /&gt;
&lt;br /&gt;
== What is an XML (or XHTML) Serialisation? == &lt;br /&gt;
&lt;br /&gt;
The XML Serialization refers to the syntax defined by XML 1.0 and Namespaces in XML 1.0. A resource that has an XML MIME type, such as &amp;lt;code&amp;gt;application/xhtml+xml&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;application/xml&amp;lt;/code&amp;gt;, is an XML document and if it uses elements in the HTML namespace, it contains XHTML. If the root element is &amp;amp;#8220;html&amp;amp;#8221; in the HTML namespace, the document is referred to as an XHTML document.&lt;br /&gt;
&lt;br /&gt;
== What MIME type does HTML5 use? == &lt;br /&gt;
&lt;br /&gt;
The HTML serialisation &amp;lt;em&amp;gt;must&amp;lt;/em&amp;gt; be served using the &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; MIME type.&lt;br /&gt;
&lt;br /&gt;
The XHTML serialisation &amp;lt;em&amp;gt;must&amp;lt;/em&amp;gt; be served using an XML MIME type, such as &amp;lt;code&amp;gt;application/xhtml+xml&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;application/xml&amp;lt;/code&amp;gt;. Unlike XHTML 1.0, XHTML 5 &amp;lt;em&amp;gt;must not&amp;lt;/em&amp;gt; be served as &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Using the incorrect MIME type (&amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;) for XHTML will cause the document to be parsed according to parsing requirements for HTML. In other words, it will be treated as tag soup. Ensuring the use of an XML MIME type is the only way to ensure that browsers handle the document as XML.&lt;br /&gt;
&lt;br /&gt;
== Browsers don’t even fully support HTML 4.01 and XHTML 1.0 yet, so why create a new version? == &lt;br /&gt;
&lt;br /&gt;
[HTML 4.01 and XHTML 1.0 are underspecified. In its current state, it is not possible for browsers to interoperably implement HTML 4.01 while still remaining compatible.]&lt;br /&gt;
&lt;br /&gt;
== HTML isn’t broken, why fix it? == &lt;br /&gt;
&lt;br /&gt;
[HTML is actually extremely broken. (explain&amp;amp;#8230;)]&lt;br /&gt;
&lt;br /&gt;
== Which browser vendors support the development of HTML 5? == &lt;br /&gt;
&lt;br /&gt;
Apple, Mozilla and Opera.&lt;br /&gt;
&lt;br /&gt;
== Which browser vendors support the development of XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
None that we are aware of.&lt;br /&gt;
&lt;br /&gt;
== What about Microsoft and Internet Explorer? == &lt;br /&gt;
&lt;br /&gt;
HTML 5 is being developed with IE compatibility in mind. Support for many features can be simulated using JavaScript.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== When will we be able to start using these new features? == &lt;br /&gt;
&lt;br /&gt;
As soon as browsers begin to support them. You do not need to wait till HTML5 becomes a recommendation, because that can&amp;amp;#8217;t happen until after the implementations are completely finished. [Need to expand on this answer] &lt;br /&gt;
&lt;br /&gt;
== Is HTML 5 backwards compatible? == &lt;br /&gt;
&lt;br /&gt;
Yes. (explain)&lt;br /&gt;
&lt;br /&gt;
== How can I get involved? == &lt;br /&gt;
&lt;br /&gt;
There are lots of ways you can get involved, take a look and see &#039;&#039;[[What you can do]]&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
== Do I have to pay a membership fee to participate? == &lt;br /&gt;
&lt;br /&gt;
No, participation is open to everyone. You may easily subscribe to the WHATWG [http://whatwg.org/mailing-list mailing lists]. You may also [http://blog.whatwg.org/w3c-restarts-html-effort join the the W3C&amp;amp;#8217;s new HTMLWG] by going through the slightly longer application process.&lt;br /&gt;
&lt;br /&gt;
== How can I keep track of changes to the spec? == &lt;br /&gt;
&lt;br /&gt;
The specification is available in the [http://svn.whatwg.org/ subversion repository]. You may use any svn client to check out the latest version and use your clients diff tools in order compare revisions and see what has been changed. You may also use the online [http://html5.org/tools/web-apps-tracker (X)HTML5 Tracker Tool]. The tool provides an online interface for selecting and comparing revisions of the spec.&lt;br /&gt;
&lt;br /&gt;
== What sort of classes and ids are commonly placed on DIV elements? == &lt;br /&gt;
&lt;br /&gt;
[Link to related research on this issue. Need to search the archives for previous discussion of this.]&lt;br /&gt;
&lt;br /&gt;
== When will HTML 5 be finished? == &lt;br /&gt;
&lt;br /&gt;
It is estimated that HTML5 will reach a W3C recommendation in the year 2022 or later. This will be approximately 18-20 years of development, since beginning in mid-2004.&lt;br /&gt;
&lt;br /&gt;
For a spec to become a REC, it requires two 100% complete and fully interoperable implementations, which is proven by each successfully passing literally thousands of test cases (20,000 tests for the whole spec would probably be a conservative estimate). When you consider how long it takes to write that many test cases and how long it takes to implement each feature, you&amp;amp;#8217;ll begin to understand why the time frame seems so long.&lt;br /&gt;
&lt;br /&gt;
However, the WHATWG recognises and understands the problem with this: different parts of the specification are at different maturity levels. Some sections are already relatively stable and there are implementations that are already quite close to completion, and those features can be used today (e.g. &amp;amp;lt;canvas&amp;amp;gt;). But other sections are still being actively worked on and changed regularly, or not even written yet.&lt;br /&gt;
&lt;br /&gt;
The details are still being worked out, but the plan is to indicate the maturity level on a per-section basis. Sections like the Link Types, which is relatively simple, isn&amp;amp;#8217;t going to take long to become interoperably implemented. In fact, Mozilla is already implementing the new autodiscovery features for Firefox 3.0, and it shouldn&amp;amp;#8217;t take long for places like Technorati, Bloglines, etc. to implement follow.&lt;br /&gt;
&lt;br /&gt;
Once a section is interoperably implemented, it&amp;amp;#8217;s quite stable and unlikely to change significantly. Any changes to such a section would most likely only be editorial in nature, particularly if the feature is already in widespread use (as autodiscovery already is today).&lt;br /&gt;
&lt;br /&gt;
The point to all this is that you shouldn&amp;amp;#8217;t place too much weight on the status of the specification as a whole. You need to consider the stability and maturity level of each section individually.&lt;br /&gt;
&lt;br /&gt;
== Should I close empty elements with &amp;lt;code&amp;gt;/&amp;amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;amp;gt;&amp;lt;/code&amp;gt;? == &lt;br /&gt;
&lt;br /&gt;
Void elements in HTML (the new name for empty elements) do not require a trailing slash. e.g. Instead of writing &amp;lt;code&amp;gt;&amp;amp;lt;br /&amp;amp;gt;&amp;lt;/code&amp;gt;, you only need to write &amp;lt;code&amp;gt;&amp;amp;lt;br&amp;amp;gt;&amp;lt;/code&amp;gt;. This applies to all void elements, including &amp;lt;code&amp;gt;img&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;input&amp;lt;/code&amp;gt;, etc.&lt;br /&gt;
&lt;br /&gt;
However, due to the widespread attempts to use XHTML 1.0, there are a significant number of pages using the trailing slash. Because of this, the syntax has been permitted (though it is not recommended) in order to ease migration from XHTML 1.0 to HTML5.&lt;br /&gt;
&lt;br /&gt;
It is important to realise that this syntax serves no purpose in HTML, it is just ignored by browsers. Despite the fact that it is based upon the XML syntax, it does not mean that HTML documents can be parsed with XML tools. HTML and XHTML are serparate serialisations and they each must be processed using tools designed to handle each format.&lt;br /&gt;
&lt;br /&gt;
== If I&amp;amp;#8217;m careful with the syntax I use in my HTML document, can I process it with an XML parser? == &lt;br /&gt;
&lt;br /&gt;
No, HTML and XML have [#differences many significant differences], particularly parsing requirements, and you cannot process one using tools designed for the other. However, since HTML5 is defined in terms of the DOM, in most cases there are both HTML and XHTML serialisations available that can represent the same document. There are, however, a few differences explained later that make it impossible to represent some HTML documents accurately as XHTML and vice versa. &lt;br /&gt;
&lt;br /&gt;
If you wish to process an HTML document as XHTML, it requires that you and convert it into XHTML first; and vice versa for processing XHTML as HTML.&lt;br /&gt;
&lt;br /&gt;
== What is the namespace declaration? == &lt;br /&gt;
&lt;br /&gt;
In XHTML, you are required to specify the namespace. (need to find a simple explanation for what namespaces are for)&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
In HTML, the &amp;lt;code&amp;gt;xmlns&amp;lt;/code&amp;gt; attribute is only allowed on the &amp;lt;code&amp;gt;html&amp;lt;/code&amp;gt; element, and only if it has the value &amp;amp;#8220;&amp;lt;code&amp;gt;http://www.w3.org/1999/xhtml&amp;lt;/code&amp;gt;&amp;amp;#8220;. It doesn&amp;amp;#8217;t do anything at all, it is merely allowed to ease migration from XHTML 1.0. It is not actually a namespace declaration in HTML, because HTML doesn&amp;amp;#8217;t support namespaces.&lt;br /&gt;
&lt;br /&gt;
== Will there be support for namespaces in HTML? == &lt;br /&gt;
&lt;br /&gt;
HTML5 is being defined in terms of the DOM and all HTML elements will exist in the HTML namespace: &amp;lt;code&amp;gt;http://www.w3.org/1999/xhtml&amp;lt;/code&amp;gt;. However, unlike the XHTML serialisation, there is no real namespace syntax available in the HTML serialisation (see previous question). In other words, you do not need to declare the namespace in your HTML markup, like you do in XHTML.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[#namespace-decl XHTML requires that the namespace to be declared] appropriately using the &amp;lt;code&amp;gt;xmlns&amp;lt;/code&amp;gt; attribute. The namespace declaration is unnecessary in HTML because browsers will already know it&amp;amp;#8217;s an HTML document based on the [#mime-type MIME type] (&amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
There have been proposals for introducing MathML markup into HTML, which would exist in the MathML namespace. However, if that proposal is accepted, it will be supported in a way that does not require explicit namespace declaration in the markup.&lt;br /&gt;
&lt;br /&gt;
== How do I specify the character encoding? == &lt;br /&gt;
&lt;br /&gt;
For HTML, it is strongly recommended that you specify the encoding using the HTTP &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; header. If you are unable to [http://www.w3.org/International/O-HTTP-charset configure your server] to send the correct headers, then you may use the &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element. The &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element used for this purpose must occur as the first element in the head (even before the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;), and within the first 512 bytes of the file.&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;meta charset=&amp;quot;UTF-8&amp;quot;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that this &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element is different from HTML 4, though it is compatible with many browsers because of the way encoding detection has been implemented.&lt;br /&gt;
&lt;br /&gt;
In XHTML, XML rules for determining the character encoding apply. You may use either the HTTP &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; header or the XML declaration to specify the encoding.&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot;?&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otherwise, you must use the default of &amp;lt;code&amp;gt;UTF-8&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;UTF-16&amp;lt;/code&amp;gt;. It is recommended that you use &amp;lt;code&amp;gt;UTF-8&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== What are the differences between HTML and XHTML? == &lt;br /&gt;
&lt;br /&gt;
See the list of [[HTML vs. XHTML#Differences_Between_HTML_and_XHTML|differences between HTML and XHTML]] in the wiki.&lt;br /&gt;
&lt;br /&gt;
== Does HTML5 support &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; on any element like XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
No, supporting &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; on any element has several problems associated with it that make it difficult to support in HTML5.&lt;br /&gt;
&lt;br /&gt;
* It isn&amp;amp;#8217;t backwards compatible with existing browsers.&lt;br /&gt;
* It adds no new functionality that can&amp;amp;#8217;t already be achieved using the &amp;lt;code&amp;gt;a&amp;lt;/code&amp;gt; element.&lt;br /&gt;
* It doesn&amp;amp;#8217;t make sense for all elements, such as interactive elements like &amp;lt;code&amp;gt;input&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;button&amp;lt;/code&amp;gt;, where the use of href would interfere with their normal function.&lt;br /&gt;
* Browser vendors have reported that implementing it would be extremely complex.&lt;br /&gt;
&lt;br /&gt;
The only advantage it seems to add is that it reduces typing for authors in some cases, but that is not a strong enough reason to support it in light of the other reasons.&lt;br /&gt;
&lt;br /&gt;
== Why does HTML5 legitimise tag soup? == &lt;br /&gt;
&lt;br /&gt;
Actually it doesn&amp;amp;#8217;t. This is a misconception that comes from the confusion between conformance requirements for documents, and the requirements for user agents.&lt;br /&gt;
&lt;br /&gt;
Due to the fundamental design principle of supporting existing content, the spec must define how to handle all HTML, regardless of whether documents are conforming or not. Therefore, the spec defines (or will define) precisely how to handle and recover from erroneous markup, much of which would be considered tag soup.&lt;br /&gt;
&lt;br /&gt;
For example, the spec defines algorithms for dealing with syntax errors such as misnested tags, which will ensure that a well structured DOM tree can be produced.&lt;br /&gt;
&lt;br /&gt;
Defining that is essential for one day achieving interoperability between browsers and reducing the dependence upon reverse engineering each other.&lt;br /&gt;
&lt;br /&gt;
However, the conformance requirements for authors are defined separately from the processing requirements. Just because browsers are required to handle erroneous content, it does not make such markup conforming.&lt;br /&gt;
&lt;br /&gt;
For example, user agents will be required to support the marquee element, but authors must not use the marquee element in conforming documents.&lt;br /&gt;
&lt;br /&gt;
It is important to make the distinction between the rules that apply to user agents and the rules that apply to authors for produce conforming documents. They are completely orthogonal.&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=FAQ&amp;diff=2510</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=FAQ&amp;diff=2510"/>
		<updated>2007-09-04T10:39:04Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: /* How can I get involved? */ wikilink&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== What is the WHATWG and why did it form? == &lt;br /&gt;
&lt;br /&gt;
In 2004, after a W3C workshop, Apple, Mozilla and Opera were becoming increasingly concerned about the W3C’s direction with XHTML, lack of interest in HTML and apparent disregard for the needs of real-world authors. So, in response, these organisations set out to with a mission to address these concerns and the Web Hypertext Application Technology Working Group was born.&lt;br /&gt;
&lt;br /&gt;
These days, the WHATWG is a growing community of browser vendors, web developers, and other people interested in the development of the the next generation of HTML and related technologies, specifically designed to allow authors to write and deploy applications over the World Wide Web.&lt;br /&gt;
&lt;br /&gt;
== What are &amp;amp;#8220;Web Applications&amp;amp;#8221;? == &lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The term &amp;amp;#8220;Web Application&amp;amp;#8221; in this context refers to applications  accessed over the World Wide Web by using a Web browser. This group  is not attempting to describe APIs for writing high-end  sophisticated programs such as office productivity suites,  graphics manipulation packages, or 3D games.&lt;br /&gt;
&lt;br /&gt;
Some of the most famous examples of Web applications currently deployed are [http://www.ebay.com/ eBay] and [http://www.amazon.com/ Amazon].&lt;br /&gt;
&lt;br /&gt;
== Aren&amp;amp;#8217;t &amp;amp;#8220;Web Applications&amp;amp;#8221; already possible? == &lt;br /&gt;
&lt;br /&gt;
Yes. This working group aims to make their development &amp;lt;em&amp;gt;easier&amp;lt;/em&amp;gt;, and hopes to specify new technologies that make it possible to make much prettier and more usable interfaces with less dependence on complex scripts, less dependence on server-generated pages, and a more seamless user experience.&lt;br /&gt;
&lt;br /&gt;
For example, currently HTML forms do not specify a way to specify that a control is a required control that must be filled in before submission: such features have to be scripted explicitly.&lt;br /&gt;
&lt;br /&gt;
== What exactly are you working on? == &lt;br /&gt;
&lt;br /&gt;
The work is currently split between three specifications although the main focus is on the HTML 5 draft.&lt;br /&gt;
&lt;br /&gt;
[http://whatwg.org/specs/web-forms/current-work/ Web Forms 2.0] is a superset of the HTML 4 and XHTML 1.0 form chapters. More advanced controls like RTF controls, menus and toolbars are the domain of [http://whatwg.org/specs/web-apps/current-work/ HTML 5] which is a rewrite of HTML 4, XHTML 1.0 and DOM Level 2 HTML. These drafts are in active development. Web Forms 2 is the most mature and will in due course be integrated into HTML 5.&lt;br /&gt;
&lt;br /&gt;
[http://whatwg.org/specs/web-controls/current-work/ Web Controls 1.0] is intended to add functionality to Javascript and CSS that aid the creation of custom widgets. However, this will be influenced by the design and implementations of XBL2, and so will not be available in the near future.&lt;br /&gt;
&lt;br /&gt;
== What is (X)HTML 5? == &lt;br /&gt;
&lt;br /&gt;
[Web Applications 1.0, Web Forms 2.0&amp;amp;#8230;]&lt;br /&gt;
&lt;br /&gt;
== What about XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
[Find a simple, diplomatic way to talk about the status of XHTML 2.0. See [http://www.whatwg.org/specs/web-apps/current-work/#relationship0 Web Apps notes about XHTML2]]&lt;br /&gt;
&lt;br /&gt;
== What about XForms? == &lt;br /&gt;
&lt;br /&gt;
[see [http://www.whatwg.org/specs/web-forms/current-work/#r-to-xforms Web Forms notes about XForms]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Why do we need both HTML 5 and XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
We don&amp;amp;#8217;t. What the wider Web community needs is a language which, if implemented by a Web browser, will result in a browser that can render all the existing content on the Web, and which will have new features to make the Web a better place. XHTML2.0 is not such a language &amp;amp;mdash; a browser that only supports XHTML2 could not render existing Web content correctly.&lt;br /&gt;
&lt;br /&gt;
== Why improve HTML? == &lt;br /&gt;
&lt;br /&gt;
[Because that&amp;amp;#8217;s what most authors are using and all browsers support.] &lt;br /&gt;
&lt;br /&gt;
== Why not improve XHTML instead? == &lt;br /&gt;
&lt;br /&gt;
[HTML 5 is actually making improvements to both HTML and XHTML&amp;amp;#8230;]&lt;br /&gt;
&lt;br /&gt;
== Will (X)HTML 5 finally put an end the XHTML as &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;		debate? == &lt;br /&gt;
&lt;br /&gt;
Yes. Unlike HTML 4.01 and XHTML 1.0, the choice of HTML or XHTML is solely dependent upon the choice of MIME type, rather than the DOCTYPE. See [/html-vs-xhtml HTML vs. XHTML]&lt;br /&gt;
&lt;br /&gt;
== Is XHTML better than HTML? == &lt;br /&gt;
&lt;br /&gt;
[Some people say XHTML is better because&amp;amp;#8230; But see the next question.]&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;See also: [[HTML vs. XHTML]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Is HTML better than XHTML? == &lt;br /&gt;
&lt;br /&gt;
[Some people say HTML is better because&amp;amp;#8230; But see the previous question.]&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;See also: [[HTML vs. XHTML]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== What will the DOCTYPE be? == &lt;br /&gt;
&lt;br /&gt;
In HTML: &amp;lt;code&amp;gt;&amp;amp;lt;!doctype html&amp;amp;gt;&amp;lt;/code&amp;gt;. The only reason there is one for HTML is to trigger standards mode in browsers.&lt;br /&gt;
&lt;br /&gt;
In XHTML: no DOCTYPE. You may include one if you wish, though this is not recommended as they are only relevant when using a validating parser which web browsers do not have.&lt;br /&gt;
&lt;br /&gt;
== If there is no DTD, how can I validate my page? == &lt;br /&gt;
&lt;br /&gt;
With a [http://hsivonen.iki.fi/validator/html5/ conformance checker].&lt;br /&gt;
&lt;br /&gt;
== What is an HTML Serialisation? == &lt;br /&gt;
&lt;br /&gt;
The HTML serialisation refers to the syntax of an HTML document defined in HTML5. The syntax is inspired by the SGML syntax from earlier versions of HTML, but it is defined to be more compatible with the way browsers actually handle HTML in reality.&lt;br /&gt;
&lt;br /&gt;
Any document whose MIME type is determined to be &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; is considered to be an HTML serialisation, even if the author has tried to use XML syntax.&lt;br /&gt;
&lt;br /&gt;
== What is an XML (or XHTML) Serialisation? == &lt;br /&gt;
&lt;br /&gt;
The XML Serialization refers to the syntax defined by XML 1.0 and Namespaces in XML 1.0. A resource that has an XML MIME type, such as &amp;lt;code&amp;gt;application/xhtml+xml&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;application/xml&amp;lt;/code&amp;gt;, is an XML document and if it uses elements in the HTML namespace, it contains XHTML. If the root element is &amp;amp;#8220;html&amp;amp;#8221; in the HTML namespace, the document is referred to as an XHTML document.&lt;br /&gt;
&lt;br /&gt;
== What MIME type does HTML5 use? == &lt;br /&gt;
&lt;br /&gt;
The HTML serialisation &amp;lt;em&amp;gt;must&amp;lt;/em&amp;gt; be served using the &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; MIME type.&lt;br /&gt;
&lt;br /&gt;
The XHTML serialisation &amp;lt;em&amp;gt;must&amp;lt;/em&amp;gt; be served using an XML MIME type, such as &amp;lt;code&amp;gt;application/xhtml+xml&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;application/xml&amp;lt;/code&amp;gt;. Unlike XHTML 1.0, XHTML 5 &amp;lt;em&amp;gt;must not&amp;lt;/em&amp;gt; be served as &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Using the incorrect MIME type (&amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;) for XHTML will cause the document to be parsed according to parsing requirements for HTML. In other words, it will be treated as tag soup. Ensuring the use of an XML MIME type is the only way to ensure that browsers handle the document as XML.&lt;br /&gt;
&lt;br /&gt;
== Browsers don’t even fully support HTML 4.01 and XHTML 1.0 yet, so why create a new version? == &lt;br /&gt;
&lt;br /&gt;
[HTML 4.01 and XHTML 1.0 are underspecified. In its current state, it is not possible for browsers to interoperably implement HTML 4.01 while still remaining compatible.]&lt;br /&gt;
&lt;br /&gt;
== HTML isn’t broken, why fix it? == &lt;br /&gt;
&lt;br /&gt;
[HTML is actually extremely broken. (explain&amp;amp;#8230;)]&lt;br /&gt;
&lt;br /&gt;
== Which browser vendors support the development of HTML 5? == &lt;br /&gt;
&lt;br /&gt;
Apple, Mozilla and Opera.&lt;br /&gt;
&lt;br /&gt;
== Which browser vendors support the development of XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
None that we are aware of.&lt;br /&gt;
&lt;br /&gt;
== What about Microsoft and Internet Explorer? == &lt;br /&gt;
&lt;br /&gt;
HTML 5 is being developed with IE compatibility in mind. Support for many features can be simulated using JavaScript.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== When will we be able to start using these new features? == &lt;br /&gt;
&lt;br /&gt;
As soon as browsers begin to support them. You do not need to wait till HTML5 becomes a recommendation, because that can&amp;amp;#8217;t happen until after the implementations are completely finished. [Need to expand on this answer] &lt;br /&gt;
&lt;br /&gt;
== Is HTML 5 backwards compatible? == &lt;br /&gt;
&lt;br /&gt;
Yes. (explain)&lt;br /&gt;
&lt;br /&gt;
== How can I get involved? == &lt;br /&gt;
&lt;br /&gt;
There are lots of ways you can get involved, take a look and see &#039;&#039;[[What you can do]]&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
== Do I have to pay a membership fee to participate? == &lt;br /&gt;
&lt;br /&gt;
No, participation is open to everyone. You may easily subscribe to the WHATWG [http://whatwg.org/mailing-list mailing lists]. You may also [http://blog.whatwg.org/w3c-restarts-html-effort join the the W3C&amp;amp;#8217;s new HTMLWG] by going through the slightly longer application process.&lt;br /&gt;
&lt;br /&gt;
== How can I keep track of changes to the spec? == &lt;br /&gt;
&lt;br /&gt;
The specification is available in the [http://svn.whatwg.org/ subversion repository]. You may use any svn client to check out the latest version and use your clients diff tools in order compare revisions and see what has been changed. You may also use the online [http://html5.org/tools/web-apps-tracker (X)HTML5 Tracker Tool]. The tool provides an online interface for selecting and comparing revisions of the spec.&lt;br /&gt;
&lt;br /&gt;
== What sort of classes and ids are commonly placed on DIV elements? == &lt;br /&gt;
&lt;br /&gt;
[Link to related research on this issue. Need to search the archives for previous discussion of this.]&lt;br /&gt;
&lt;br /&gt;
== When will HTML 5 be finished? == &lt;br /&gt;
&lt;br /&gt;
It is estimated that HTML5 will reach a W3C recommendation in the year 2022 or later. This will be approximately 18-20 years of development, since beginning in mid-2004.&lt;br /&gt;
&lt;br /&gt;
For a spec to become a REC, it requires two 100% complete and fully interoperable implementations, which is proven by each successfully passing literally thousands of test cases (20,000 tests for the whole spec would probably be a conservative estimate). When you consider how long it takes to write that many test cases and how long it takes to implement each feature, you&amp;amp;#8217;ll begin to understand why the time frame seems so long.&lt;br /&gt;
&lt;br /&gt;
However, the WHATWG recognises and understands the problem with this: different parts of the specification are at different maturity levels. Some sections are already relatively stable and there are implementations that are already quite close to completion, and those features can be used today (e.g. &amp;amp;lt;canvas&amp;amp;gt;). But other sections are still being actively worked on and changed regularly, or not even written yet.&lt;br /&gt;
&lt;br /&gt;
The details are still being worked out, but the plan is to indicate the maturity level on a per-section basis. Sections like the Link Types, which is relatively simple, isn&amp;amp;#8217;t going to take long to become interoperably implemented. In fact, Mozilla is already implementing the new autodiscovery features for Firefox 3.0, and it shouldn&amp;amp;#8217;t take long for places like Technorati, Bloglines, etc. to implement follow.&lt;br /&gt;
&lt;br /&gt;
Once a section is interoperably implemented, it&amp;amp;#8217;s quite stable and unlikely to change significantly. Any changes to such a section would most likely only be editorial in nature, particularly if the feature is already in widespread use (as autodiscovery already is today).&lt;br /&gt;
&lt;br /&gt;
The point to all this is that you shouldn&amp;amp;#8217;t place too much weight on the status of the specification as a whole. You need to consider the stability and maturity level of each section individually.&lt;br /&gt;
&lt;br /&gt;
== Should I close empty elements with &amp;lt;code&amp;gt;/&amp;amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;amp;gt;&amp;lt;/code&amp;gt;? == &lt;br /&gt;
&lt;br /&gt;
Void elements in HTML (the new name for empty elements) do not require a trailing slash. e.g. Instead of writing &amp;lt;code&amp;gt;&amp;amp;lt;br /&amp;amp;gt;&amp;lt;/code&amp;gt;, you only need to write &amp;lt;code&amp;gt;&amp;amp;lt;br&amp;amp;gt;&amp;lt;/code&amp;gt;. This applies to all void elements, including &amp;lt;code&amp;gt;img&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;input&amp;lt;/code&amp;gt;, etc.&lt;br /&gt;
&lt;br /&gt;
However, due to the widespread attempts to use XHTML 1.0, there are a significant number of pages using the trailing slash. Because of this, the syntax has been permitted (though it is not recommended) in order to ease migration from XHTML 1.0 to HTML5.&lt;br /&gt;
&lt;br /&gt;
It is important to realise that this syntax serves no purpose in HTML, it is just ignored by browsers. Despite the fact that it is based upon the XML syntax, it does not mean that HTML documents can be parsed with XML tools. HTML and XHTML are serparate serialisations and they each must be processed using tools designed to handle each format.&lt;br /&gt;
&lt;br /&gt;
== If I&amp;amp;#8217;m careful with the syntax I use in my HTML document, can I process it with an XML parser? == &lt;br /&gt;
&lt;br /&gt;
No, HTML and XML have [#differences many significant differences], particularly parsing requirements, and you cannot process one using tools designed for the other. However, since HTML5 is defined in terms of the DOM, in most cases there are both HTML and XHTML serialisations available that can represent the same document. There are, however, a few differences explained later that make it impossible to represent some HTML documents accurately as XHTML and vice versa. &lt;br /&gt;
&lt;br /&gt;
If you wish to process an HTML document as XHTML, it requires that you and convert it into XHTML first; and vice versa for processing XHTML as HTML.&lt;br /&gt;
&lt;br /&gt;
== What is the namespace declaration? == &lt;br /&gt;
&lt;br /&gt;
In XHTML, you are required to specify the namespace. (need to find a simple explanation for what namespaces are for)&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
In HTML, the &amp;lt;code&amp;gt;xmlns&amp;lt;/code&amp;gt; attribute is only allowed on the &amp;lt;code&amp;gt;html&amp;lt;/code&amp;gt; element, and only if it has the value &amp;amp;#8220;&amp;lt;code&amp;gt;http://www.w3.org/1999/xhtml&amp;lt;/code&amp;gt;&amp;amp;#8220;. It doesn&amp;amp;#8217;t do anything at all, it is merely allowed to ease migration from XHTML 1.0. It is not actually a namespace declaration in HTML, because HTML doesn&amp;amp;#8217;t support namespaces.&lt;br /&gt;
&lt;br /&gt;
== Will there be support for namespaces in HTML? == &lt;br /&gt;
&lt;br /&gt;
HTML5 is being defined in terms of the DOM and all HTML elements will exist in the HTML namespace: &amp;lt;code&amp;gt;http://www.w3.org/1999/xhtml&amp;lt;/code&amp;gt;. However, unlike the XHTML serialisation, there is no real namespace syntax available in the HTML serialisation (see previous question). In other words, you do not need to declare the namespace in your HTML markup, like you do in XHTML.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[#namespace-decl XHTML requires that the namespace to be declared] appropriately using the &amp;lt;code&amp;gt;xmlns&amp;lt;/code&amp;gt; attribute. The namespace declaration is unnecessary in HTML because browsers will already know it&amp;amp;#8217;s an HTML document based on the [#mime-type MIME type] (&amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
There have been proposals for introducing MathML markup into HTML, which would exist in the MathML namespace. However, if that proposal is accepted, it will be supported in a way that does not require explicit namespace declaration in the markup.&lt;br /&gt;
&lt;br /&gt;
== How do I specify the character encoding? == &lt;br /&gt;
&lt;br /&gt;
For HTML, it is strongly recommended that you specify the encoding using the HTTP &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; header. If you are unable to [http://www.w3.org/International/O-HTTP-charset configure your server] to send the correct headers, then you may use the &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element. The &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element used for this purpose must occur as the first element in the head (even before the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;), and within the first 512 bytes of the file.&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;meta charset=&amp;quot;UTF-8&amp;quot;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that this &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element is different from HTML 4, though it is compatible with many browsers because of the way encoding detection has been implemented.&lt;br /&gt;
&lt;br /&gt;
In XHTML, XML rules for determining the character encoding apply. You may use either the HTTP &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; header or the XML declaration to specify the encoding.&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot;?&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otherwise, you must use the default of &amp;lt;code&amp;gt;UTF-8&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;UTF-16&amp;lt;/code&amp;gt;. It is recommended that you use &amp;lt;code&amp;gt;UTF-8&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== What are the differences between HTML and XHTML? == &lt;br /&gt;
&lt;br /&gt;
See the list of [http://wiki.whatwg.org/wiki/HTML_vs._XHTML#Differences_Between_HTML_and_XHTML differences between HTML and XHTML] in the wiki.&lt;br /&gt;
&lt;br /&gt;
== Does HTML5 support &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; on any element like XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
No, supporting &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; on any element has several problems associated with it that make it difficult to support in HTML5.&lt;br /&gt;
&lt;br /&gt;
* It isn&amp;amp;#8217;t backwards compatible with existing browsers.&lt;br /&gt;
* It adds no new functionality that can&amp;amp;#8217;t already be achieved using the &amp;lt;code&amp;gt;a&amp;lt;/code&amp;gt; element.&lt;br /&gt;
* It doesn&amp;amp;#8217;t make sense for all elements, such as interactive elements like &amp;lt;code&amp;gt;input&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;button&amp;lt;/code&amp;gt;, where the use of href would interfere with their normal function.&lt;br /&gt;
* Browser vendors have reported that implementing it would be extremely complex.&lt;br /&gt;
&lt;br /&gt;
The only advantage it seems to add is that it reduces typing for authors in some cases, but that is not a strong enough reason to support it in light of the other reasons.&lt;br /&gt;
&lt;br /&gt;
== Why does HTML5 legitimise tag soup? == &lt;br /&gt;
&lt;br /&gt;
Actually it doesn&amp;amp;#8217;t. This is a misconception that comes from the confusion between conformance requirements for documents, and the requirements for user agents.&lt;br /&gt;
&lt;br /&gt;
Due to the fundamental design principle of supporting existing content, the spec must define how to handle all HTML, regardless of whether documents are conforming or not. Therefore, the spec defines (or will define) precisely how to handle and recover from erroneous markup, much of which would be considered tag soup.&lt;br /&gt;
&lt;br /&gt;
For example, the spec defines algorithms for dealing with syntax errors such as misnested tags, which will ensure that a well structured DOM tree can be produced.&lt;br /&gt;
&lt;br /&gt;
Defining that is essential for one day achieving interoperability between browsers and reducing the dependence upon reverse engineering each other.&lt;br /&gt;
&lt;br /&gt;
However, the conformance requirements for authors are defined separately from the processing requirements. Just because browsers are required to handle erroneous content, it does not make such markup conforming.&lt;br /&gt;
&lt;br /&gt;
For example, user agents will be required to support the marquee element, but authors must not use the marquee element in conforming documents.&lt;br /&gt;
&lt;br /&gt;
It is important to make the distinction between the rules that apply to user agents and the rules that apply to authors for produce conforming documents. They are completely orthogonal.&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Example_simple&amp;diff=2509</id>
		<title>Example simple</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Example_simple&amp;diff=2509"/>
		<updated>2007-09-04T10:36:03Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: main&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;:&#039;&#039;Main article: [[HTML5 tutorial]]&#039;&#039;&lt;br /&gt;
This tutorial is aimed at a person using a desktop or laptop computer with a basic text editor. The examples below should be saved to a file with the extension .html. This will help your operating system know that the file is one that should be opened and interpreted by a web browser.&lt;br /&gt;
&lt;br /&gt;
== Step 1: The Basics of an HTML5 Document ==&lt;br /&gt;
&lt;br /&gt;
A basic HTML5 document consists of a DOCTYPE, HTML tag, HEAD tag with TITLE tag and a BODY tag; this is the basis for all HTML5 documents. Tags are...&lt;br /&gt;
A comment is...&lt;br /&gt;
The DOCTYPE is an exception... included because...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!DOCTYPE HTML&amp;gt;&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
  &amp;lt;HEAD&amp;gt;&lt;br /&gt;
    &amp;lt;TITLE&amp;gt;Lost Cat!&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
  &amp;lt;/HEAD&amp;gt;&lt;br /&gt;
  &amp;lt;BODY&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Page content --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== How This Looks ===&lt;br /&gt;
&lt;br /&gt;
Opening this page in a web browser would produce a blank page with a title in the browser window &amp;quot;Lost Cat!&amp;quot;. (link to example)&lt;br /&gt;
&lt;br /&gt;
== Step 2: Adding a Heading and Paragraph ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!DOCTYPE HTML&amp;gt;&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
  &amp;lt;HEAD&amp;gt;&lt;br /&gt;
    &amp;lt;TITLE&amp;gt;Lost Cat!&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
  &amp;lt;/HEAD&amp;gt;&lt;br /&gt;
  &amp;lt;BODY&amp;gt;&lt;br /&gt;
    &amp;lt;H1&amp;gt;Have You Seen This Cat?&amp;lt;/H1&amp;gt;&lt;br /&gt;
    &amp;lt;P&amp;gt;Moggy has been missing since 12th June, 2007 if you see her please&lt;br /&gt;
     notify &amp;lt;A href=&amp;quot;mailto:ian@whatwg.org&amp;quot;&amp;gt;Ian Hickson&amp;lt;/A&amp;gt;.&amp;lt;/P&amp;gt;&lt;br /&gt;
  &amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Step 3: Adding an Image ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!DOCTYPE HTML&amp;gt;&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
  &amp;lt;HEAD&amp;gt;&lt;br /&gt;
    &amp;lt;TITLE&amp;gt;Lost Cat!&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
  &amp;lt;/HEAD&amp;gt;&lt;br /&gt;
  &amp;lt;BODY&amp;gt;&lt;br /&gt;
    &amp;lt;H1&amp;gt;Have You Seen This Cat?&amp;lt;/H1&amp;gt;&lt;br /&gt;
    &amp;lt;!-- need to get an image of a cat --&amp;gt;&lt;br /&gt;
    &amp;lt;P&amp;gt;&amp;lt;IMG src=&amp;quot;&amp;quot; alt=&amp;quot;The cat is black with white paws, and is wearing a&lt;br /&gt;
     white collar with a small bell attached.&amp;quot;&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
    &amp;lt;P&amp;gt;Moggy has been missing since 12th June, 2007 if you see her please&lt;br /&gt;
     notify &amp;lt;A href=&amp;quot;mailto:ian@whatwg.org&amp;quot;&amp;gt;Ian Hickson&amp;lt;/A&amp;gt;.&amp;lt;/P&amp;gt;&lt;br /&gt;
  &amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=HTML5_tutorial&amp;diff=2508</id>
		<title>HTML5 tutorial</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=HTML5_tutorial&amp;diff=2508"/>
		<updated>2007-09-04T10:35:05Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: add link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is an HTML 5 tutorial.  There&#039;s nothing here yet, feel free to add something!&lt;br /&gt;
&lt;br /&gt;
;[[Example simple|A simple example]]&lt;br /&gt;
:This tutorial is aimed at a person using a desktop or laptop computer with a basic text editor. The examples below should be saved to a file with the extension .html. This will help your operating system know that the file is one that should be opened and interpreted by a web browser.&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=HTML5_Tutorial&amp;diff=2507</id>
		<title>HTML5 Tutorial</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=HTML5_Tutorial&amp;diff=2507"/>
		<updated>2007-09-04T10:33:54Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: HTML5 Tutorial moved to HTML5 tutorial: wiki convention&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[HTML5 tutorial]]&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=HTML5_tutorial&amp;diff=2506</id>
		<title>HTML5 tutorial</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=HTML5_tutorial&amp;diff=2506"/>
		<updated>2007-09-04T10:33:54Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: HTML5 Tutorial moved to HTML5 tutorial: wiki convention&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is an HTML 5 tutorial.  There&#039;s nothing here yet, feel free to add something!&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=What_you_can_do&amp;diff=2505</id>
		<title>What you can do</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=What_you_can_do&amp;diff=2505"/>
		<updated>2007-09-04T10:33:48Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: m&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Review [http://whatwg.org/specs/ the specifications] and [http://whatwg.org/mailing-list send comments]!&lt;br /&gt;
* Help to write the [[FAQ]].&lt;br /&gt;
* Write articles about HTML5 on the [http://blog.whatwg.org/ blog].&lt;br /&gt;
* Write [[HTML5 tutorial|tutorials]] for new authors and for authors moving to HTML5.&lt;br /&gt;
* Monitor and respond to questions on [http://www.whatwg.org/mailing-list#help the help list] and [http://forums.whatwg.org/ the forums].&lt;br /&gt;
* Write [[test cases]].&lt;br /&gt;
* Write [[demos]] (ideally in a Google Code project).&lt;br /&gt;
* [[Implementations|Implement HTML5]]!&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=What_you_can_do&amp;diff=2504</id>
		<title>What you can do</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=What_you_can_do&amp;diff=2504"/>
		<updated>2007-09-04T10:33:25Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: fix link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Review [http://whatwg.org/specs/ the specifications] and [http://whatwg.org/mailing-list send comments]!&lt;br /&gt;
* Help to write the [[FAQ]].&lt;br /&gt;
* Write articles about HTML5 on the [http://blog.whatwg.org/ blog].&lt;br /&gt;
* Write [[HTML5 Tutorial|tutorials]] for new authors and for authors moving to HTML5.&lt;br /&gt;
* Monitor and respond to questions on [http://www.whatwg.org/mailing-list#help the help list] and [http://forums.whatwg.org/ the forums].&lt;br /&gt;
* Write [[test cases]].&lt;br /&gt;
* Write [[demos]] (ideally in a Google Code project).&lt;br /&gt;
* [[Implementations|Implement HTML5]]!&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=ClassExtensions&amp;diff=2503</id>
		<title>ClassExtensions</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=ClassExtensions&amp;diff=2503"/>
		<updated>2007-09-04T10:29:04Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: wiki markup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page lists the allowed extension values for the class=&amp;quot;&amp;quot; attribute in HTML5. You may add your own values to this list, which makes them legal HTML5 class names. We ask that you try to avoid redundancy; if someone has already defined a name that does roughly what you want, please reuse it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; frame=&amp;quot;void&amp;quot; rules=&amp;quot;rows&amp;quot; &lt;br /&gt;
! Keyword&lt;br /&gt;
! Applicable elements&lt;br /&gt;
! Brief description&lt;br /&gt;
! Link to more details&lt;br /&gt;
! Synonyms&lt;br /&gt;
! Status&lt;br /&gt;
|- &lt;br /&gt;
| author&lt;br /&gt;
| p, span&lt;br /&gt;
| Indicates that the element contains details of the author of a neighbouring image.&lt;br /&gt;
| none&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| advert&lt;br /&gt;
| Block-level elements&lt;br /&gt;
| Indicates that the element contains advertisement.&lt;br /&gt;
| none&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| credit&lt;br /&gt;
| p, span&lt;br /&gt;
| Indicates that the element contains some sort of credit or acknowledgment. Such as service providers, hosting, and software used.&lt;br /&gt;
| none&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| ct&lt;br /&gt;
| em&lt;br /&gt;
| Indicates that the element represents a &#039;&#039;&#039;c&#039;&#039;&#039;onformance &#039;&#039;&#039;t&#039;&#039;&#039;erm. The element must have a single text node which value is one of the key words defined by [http://ietf.org/rfc/rfc2119 RFC 2119], &#039;&#039;lowercased&#039;&#039;. It is expected that this class will mainly be used in specifications.&lt;br /&gt;
| none&lt;br /&gt;
| rfc2119&lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| msonormal&lt;br /&gt;
| All elements&lt;br /&gt;
| A value used by Microsoft Office HTML output to mean nothing (literally).&lt;br /&gt;
| none&lt;br /&gt;
| &lt;br /&gt;
| Unendorsed&lt;br /&gt;
|- &lt;br /&gt;
| price&lt;br /&gt;
| span&lt;br /&gt;
| Indicates that the element represents a price. If there is a child element &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt;, then the title of that element gives the currency. The textContent of the element, ignoring the contents of the &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; element, if any, must be a valid floating point number.&lt;br /&gt;
| none&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| robots-nocontent&lt;br /&gt;
| All elements&lt;br /&gt;
| Indicates that the element contains no information relevant to search engines. Such as main navigation, advertisement, dynamic content that is useful only to users, and disclaimers and copyright statments.&lt;br /&gt;
| [http://help.yahoo.com/help/us/ysearch/slurp/slurp-14.html Yahoo&amp;amp;#33; Slurp allready support this class]&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
For the &amp;quot;Status&amp;quot; section to be changed to &amp;quot;Accepted&amp;quot;, the proposed keyword must have been through the [http://microformats.org/wiki/process Microformats process], and been approved by the Microformats community. If it fails to go through this process, it is &amp;quot;Unendorsed&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
For more details, see [http://whatwg.org/specs/web-apps/current-work/#classes the HTML5 specification].&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=MetaExtensions&amp;diff=2502</id>
		<title>MetaExtensions</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=MetaExtensions&amp;diff=2502"/>
		<updated>2007-09-04T10:28:03Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: wiki markup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page lists the allowed extension values for the name=&amp;quot;&amp;quot; attribute of the &amp;amp;lt;meta&amp;gt; element in HTML5. You may add your own values to this list, which makes them legal HTML5 metadata names. We ask that you try to avoid redundancy; if someone has already defined a name that does roughly what you want, please reuse it.&lt;br /&gt;
&lt;br /&gt;
{|  &lt;br /&gt;
! Keyword&lt;br /&gt;
! Brief description&lt;br /&gt;
! Link to more details&lt;br /&gt;
! Synonyms&lt;br /&gt;
! Status&lt;br /&gt;
|- &lt;br /&gt;
| cache&lt;br /&gt;
| Value must be &amp;quot;public&amp;quot;, &amp;quot;private&amp;quot;, or &amp;quot;no-cache&amp;quot;,. Inteded as a simple way to tell user agents whether to store a copy of the document or not. An alternate for HTTP/1.1&#039;s cache-control; for publishers without access to modifying cache-control.&amp;lt;br/&amp;gt;&#039;&#039;&#039;This doesn&#039;t actually work, use HTTP headers instead&#039;&#039;&#039;&lt;br /&gt;
| none&lt;br /&gt;
| &lt;br /&gt;
| Unendorsed&lt;br /&gt;
|- &lt;br /&gt;
| description&lt;br /&gt;
| A short paragraph of text explaining what the page is about.&lt;br /&gt;
| none&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|- &lt;br /&gt;
| keywords&lt;br /&gt;
| A comma separated list of keywords that describe this page. Not necessary these days; search engines use much more sophisticated means to determine the page&#039;s contents.&lt;br /&gt;
| none&lt;br /&gt;
| &lt;br /&gt;
| Unendorsed&lt;br /&gt;
|- &lt;br /&gt;
| robots&lt;br /&gt;
| A comma separated list of operators explaining hos search engine crawlers should treat the content. Possible values are &amp;quot;noarchive&amp;quot; to prevent cached versions, &amp;quot;noindex&amp;quot; to prevent indexing, and &amp;quot;nofollow&amp;quot; works as the link rel value with the same name. This meta name is already supported by every popular search engine.&lt;br /&gt;
| [http://www.robotstxt.org/wc/exclusion.html#meta Robots exclusion protocol], [http://www.google.com/support/webmasters/bin/answer.py?answer=61050 Googlebot], [http://help.yahoo.com/help/us/ysearch/slurp/index.html Yahoo&amp;amp;#33; Slurp], and [http://about.ask.com/en/docs/about/webmasters.shtml Ask.com Teoma]&lt;br /&gt;
| &lt;br /&gt;
| Proposal&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
For the &amp;quot;Status&amp;quot; section to be changed to &amp;quot;Accepted&amp;quot;, the proposed keyword must have been through the [http://microformats.org/wiki/process Microformats process], and been approved by the Microformats community. If it fails to go through this process, it is &amp;quot;Unendorsed&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
For more details, see [http://whatwg.org/specs/web-apps/current-work/#meta the HTML5 specification].&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Implementations_in_Web_browsers&amp;diff=2501</id>
		<title>Implementations in Web browsers</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Implementations_in_Web_browsers&amp;diff=2501"/>
		<updated>2007-09-04T10:25:04Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: /* Web Forms 2.0 */ li&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;List of known implementations of HTML 5 in web browsers (list is incomplete, feel free to extend it)&lt;br /&gt;
&lt;br /&gt;
For summary see [http://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28WHATWG%29 Comparison of layout engines (WHATWG)] in Wikipedia.&lt;br /&gt;
&lt;br /&gt;
==HTML 5==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#the-canvas canvas]&#039;&#039;&#039; with some limitation implemented in Firefox, Opera and Safari, with [http://excanvas.sourceforge.net/ ExplorerCanvas] emulated in Internet Explorer 6/7&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#getelementsbyclassname getElementsByClassName]&#039;&#039;&#039; implemented in Firefox 3&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#storage Client-side session and persistent storage]&#039;&#039;&#039; implemented in Firefox 2&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#custom-handlers Custom content handlers]&#039;&#039;&#039; partially implemented in Firefox 2&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#ping ping attribute]&#039;&#039;&#039; implemented in Firefox 3&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#crossDocumentMessages Cross-document messaging]&#039;&#039;&#039; implemented in Opera 9&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#sound Audio interface]&#039;&#039;&#039; implemented in Opera 9&lt;br /&gt;
* &#039;&#039;&#039; [http://www.whatwg.org/specs/web-apps/current-work/multipage/section-video.html#video video element]&#039;&#039;&#039; basic implementation in [http://people.opera.com/howcome/2007/video/ experimental Opera build] and [http://www.double.co.nz/video_test/ experimental Firefox build]; with [http://metavid.ucsc.edu/blog/2007/06/07/html5-video-the-future-is-now/ mv_embed script] in every browser with Java support &lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#server-sent-events Server-sent DOM events]&#039;&#039;&#039; implemented in Opera 9&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#contenteditable contenteditable attribute]&#039;&#039;&#039; implemented by Opera, Internet Explorer, Safari and Firefox 3&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#dnd Drag &amp;amp; drop]&#039;&#039;&#039; (partially) implemented in Internet Explorer and Safari.&lt;br /&gt;
&lt;br /&gt;
==Web Forms 2.0==&lt;br /&gt;
&lt;br /&gt;
* Opera 9 fully implements [http://www.whatwg.org/wf2 Web Forms 2].&lt;br /&gt;
** &#039;&#039;&#039;date input element&#039;&#039;&#039; with [http://code.google.com/p/input-type-date/ input-type-date] works in Firefox, IE6/7, Safari&lt;br /&gt;
** &#039;&#039;&#039;[http://www.whatwg.org/specs/web-forms/current-work/#repeatingFormControls Repetition Model]&#039;&#039;&#039; - Opera 9 (native), with [http://code.google.com/p/repetitionmodel/ repetitionmodel] works in Firefox, IE6/7, Safari 2.0.4&lt;br /&gt;
* Project [http://sourceforge.net/projects/wf2/] emulate in IE6/7 validation, date and time types, range, repetition, calculated fields, datalist, autofocus.&lt;br /&gt;
&lt;br /&gt;
==Web Controls 1.0==&lt;br /&gt;
&lt;br /&gt;
Not yet.&lt;br /&gt;
&lt;br /&gt;
[[Category:Implementations]]&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Implementations_in_Web_browsers&amp;diff=2500</id>
		<title>Implementations in Web browsers</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Implementations_in_Web_browsers&amp;diff=2500"/>
		<updated>2007-09-04T10:23:39Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: /* HTML 5 */ li&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;List of known implementations of HTML 5 in web browsers (list is incomplete, feel free to extend it)&lt;br /&gt;
&lt;br /&gt;
For summary see [http://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28WHATWG%29 Comparison of layout engines (WHATWG)] in Wikipedia.&lt;br /&gt;
&lt;br /&gt;
==HTML 5==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#the-canvas canvas]&#039;&#039;&#039; with some limitation implemented in Firefox, Opera and Safari, with [http://excanvas.sourceforge.net/ ExplorerCanvas] emulated in Internet Explorer 6/7&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#getelementsbyclassname getElementsByClassName]&#039;&#039;&#039; implemented in Firefox 3&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#storage Client-side session and persistent storage]&#039;&#039;&#039; implemented in Firefox 2&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#custom-handlers Custom content handlers]&#039;&#039;&#039; partially implemented in Firefox 2&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#ping ping attribute]&#039;&#039;&#039; implemented in Firefox 3&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#crossDocumentMessages Cross-document messaging]&#039;&#039;&#039; implemented in Opera 9&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#sound Audio interface]&#039;&#039;&#039; implemented in Opera 9&lt;br /&gt;
* &#039;&#039;&#039; [http://www.whatwg.org/specs/web-apps/current-work/multipage/section-video.html#video video element]&#039;&#039;&#039; basic implementation in [http://people.opera.com/howcome/2007/video/ experimental Opera build] and [http://www.double.co.nz/video_test/ experimental Firefox build]; with [http://metavid.ucsc.edu/blog/2007/06/07/html5-video-the-future-is-now/ mv_embed script] in every browser with Java support &lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#server-sent-events Server-sent DOM events]&#039;&#039;&#039; implemented in Opera 9&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#contenteditable contenteditable attribute]&#039;&#039;&#039; implemented by Opera, Internet Explorer, Safari and Firefox 3&lt;br /&gt;
* &#039;&#039;&#039;[http://www.whatwg.org/specs/web-apps/current-work/#dnd Drag &amp;amp; drop]&#039;&#039;&#039; (partially) implemented in Internet Explorer and Safari.&lt;br /&gt;
&lt;br /&gt;
==Web Forms 2.0==&lt;br /&gt;
&lt;br /&gt;
Opera 9 fully implements [http://www.whatwg.org/wf2 Web Forms 2].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;date input element&#039;&#039;&#039; with [http://code.google.com/p/input-type-date/ input-type-date] works in Firefox, IE6/7, Safari&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[http://www.whatwg.org/specs/web-forms/current-work/#repeatingFormControls Repetition Model]&#039;&#039;&#039; - Opera 9 (native), with [http://code.google.com/p/repetitionmodel/ repetitionmodel] works in Firefox, IE6/7, Safari 2.0.4&lt;br /&gt;
&lt;br /&gt;
Project [http://sourceforge.net/projects/wf2/] emulate in IE6/7 validation, date and time types, range, repetition, calculated fields, datalist, autofocus.&lt;br /&gt;
&lt;br /&gt;
==Web Controls 1.0==&lt;br /&gt;
&lt;br /&gt;
Not yet.&lt;br /&gt;
&lt;br /&gt;
[[Category:Implementations]]&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=FAQ&amp;diff=2499</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=FAQ&amp;diff=2499"/>
		<updated>2007-09-04T10:13:43Z</updated>

		<summary type="html">&lt;p&gt;Utcursch: link to HTML vs. XHTML&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== What is the WHATWG and why did it form? == &lt;br /&gt;
&lt;br /&gt;
In 2004, after a W3C workshop, Apple, Mozilla and Opera were becoming increasingly concerned about the W3C’s direction with XHTML, lack of interest in HTML and apparent disregard for the needs of real-world authors. So, in response, these organisations set out to with a mission to address these concerns and the Web Hypertext Application Technology Working Group was born.&lt;br /&gt;
&lt;br /&gt;
These days, the WHATWG is a growing community of browser vendors, web developers, and other people interested in the development of the the next generation of HTML and related technologies, specifically designed to allow authors to write and deploy applications over the World Wide Web.&lt;br /&gt;
&lt;br /&gt;
== What are &amp;amp;#8220;Web Applications&amp;amp;#8221;? == &lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
The term &amp;amp;#8220;Web Application&amp;amp;#8221; in this context refers to applications  accessed over the World Wide Web by using a Web browser. This group  is not attempting to describe APIs for writing high-end  sophisticated programs such as office productivity suites,  graphics manipulation packages, or 3D games.&lt;br /&gt;
&lt;br /&gt;
Some of the most famous examples of Web applications currently deployed are [http://www.ebay.com/ eBay] and [http://www.amazon.com/ Amazon].&lt;br /&gt;
&lt;br /&gt;
== Aren&amp;amp;#8217;t &amp;amp;#8220;Web Applications&amp;amp;#8221; already possible? == &lt;br /&gt;
&lt;br /&gt;
Yes. This working group aims to make their development &amp;lt;em&amp;gt;easier&amp;lt;/em&amp;gt;, and hopes to specify new technologies that make it possible to make much prettier and more usable interfaces with less dependence on complex scripts, less dependence on server-generated pages, and a more seamless user experience.&lt;br /&gt;
&lt;br /&gt;
For example, currently HTML forms do not specify a way to specify that a control is a required control that must be filled in before submission: such features have to be scripted explicitly.&lt;br /&gt;
&lt;br /&gt;
== What exactly are you working on? == &lt;br /&gt;
&lt;br /&gt;
The work is currently split between three specifications although the main focus is on the HTML 5 draft.&lt;br /&gt;
&lt;br /&gt;
[http://whatwg.org/specs/web-forms/current-work/ Web Forms 2.0] is a superset of the HTML 4 and XHTML 1.0 form chapters. More advanced controls like RTF controls, menus and toolbars are the domain of [http://whatwg.org/specs/web-apps/current-work/ HTML 5] which is a rewrite of HTML 4, XHTML 1.0 and DOM Level 2 HTML. These drafts are in active development. Web Forms 2 is the most mature and will in due course be integrated into HTML 5.&lt;br /&gt;
&lt;br /&gt;
[http://whatwg.org/specs/web-controls/current-work/ Web Controls 1.0] is intended to add functionality to Javascript and CSS that aid the creation of custom widgets. However, this will be influenced by the design and implementations of XBL2, and so will not be available in the near future.&lt;br /&gt;
&lt;br /&gt;
== What is (X)HTML 5? == &lt;br /&gt;
&lt;br /&gt;
[Web Applications 1.0, Web Forms 2.0&amp;amp;#8230;]&lt;br /&gt;
&lt;br /&gt;
== What about XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
[Find a simple, diplomatic way to talk about the status of XHTML 2.0. See [http://www.whatwg.org/specs/web-apps/current-work/#relationship0 Web Apps notes about XHTML2]]&lt;br /&gt;
&lt;br /&gt;
== What about XForms? == &lt;br /&gt;
&lt;br /&gt;
[see [http://www.whatwg.org/specs/web-forms/current-work/#r-to-xforms Web Forms notes about XForms]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Why do we need both HTML 5 and XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
We don&amp;amp;#8217;t. What the wider Web community needs is a language which, if implemented by a Web browser, will result in a browser that can render all the existing content on the Web, and which will have new features to make the Web a better place. XHTML2.0 is not such a language &amp;amp;mdash; a browser that only supports XHTML2 could not render existing Web content correctly.&lt;br /&gt;
&lt;br /&gt;
== Why improve HTML? == &lt;br /&gt;
&lt;br /&gt;
[Because that&amp;amp;#8217;s what most authors are using and all browsers support.] &lt;br /&gt;
&lt;br /&gt;
== Why not improve XHTML instead? == &lt;br /&gt;
&lt;br /&gt;
[HTML 5 is actually making improvements to both HTML and XHTML&amp;amp;#8230;]&lt;br /&gt;
&lt;br /&gt;
== Will (X)HTML 5 finally put an end the XHTML as &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;		debate? == &lt;br /&gt;
&lt;br /&gt;
Yes. Unlike HTML 4.01 and XHTML 1.0, the choice of HTML or XHTML is solely dependent upon the choice of MIME type, rather than the DOCTYPE. See [/html-vs-xhtml HTML vs. XHTML]&lt;br /&gt;
&lt;br /&gt;
== Is XHTML better than HTML? == &lt;br /&gt;
&lt;br /&gt;
[Some people say XHTML is better because&amp;amp;#8230; But see the next question.]&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;See also: [[HTML vs. XHTML]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Is HTML better than XHTML? == &lt;br /&gt;
&lt;br /&gt;
[Some people say HTML is better because&amp;amp;#8230; But see the previous question.]&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;See also: [[HTML vs. XHTML]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== What will the DOCTYPE be? == &lt;br /&gt;
&lt;br /&gt;
In HTML: &amp;lt;code&amp;gt;&amp;amp;lt;!doctype html&amp;amp;gt;&amp;lt;/code&amp;gt;. The only reason there is one for HTML is to trigger standards mode in browsers.&lt;br /&gt;
&lt;br /&gt;
In XHTML: no DOCTYPE. You may include one if you wish, though this is not recommended as they are only relevant when using a validating parser which web browsers do not have.&lt;br /&gt;
&lt;br /&gt;
== If there is no DTD, how can I validate my page? == &lt;br /&gt;
&lt;br /&gt;
With a [http://hsivonen.iki.fi/validator/html5/ conformance checker].&lt;br /&gt;
&lt;br /&gt;
== What is an HTML Serialisation? == &lt;br /&gt;
&lt;br /&gt;
The HTML serialisation refers to the syntax of an HTML document defined in HTML5. The syntax is inspired by the SGML syntax from earlier versions of HTML, but it is defined to be more compatible with the way browsers actually handle HTML in reality.&lt;br /&gt;
&lt;br /&gt;
Any document whose MIME type is determined to be &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; is considered to be an HTML serialisation, even if the author has tried to use XML syntax.&lt;br /&gt;
&lt;br /&gt;
== What is an XML (or XHTML) Serialisation? == &lt;br /&gt;
&lt;br /&gt;
The XML Serialization refers to the syntax defined by XML 1.0 and Namespaces in XML 1.0. A resource that has an XML MIME type, such as &amp;lt;code&amp;gt;application/xhtml+xml&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;application/xml&amp;lt;/code&amp;gt;, is an XML document and if it uses elements in the HTML namespace, it contains XHTML. If the root element is &amp;amp;#8220;html&amp;amp;#8221; in the HTML namespace, the document is referred to as an XHTML document.&lt;br /&gt;
&lt;br /&gt;
== What MIME type does HTML5 use? == &lt;br /&gt;
&lt;br /&gt;
The HTML serialisation &amp;lt;em&amp;gt;must&amp;lt;/em&amp;gt; be served using the &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt; MIME type.&lt;br /&gt;
&lt;br /&gt;
The XHTML serialisation &amp;lt;em&amp;gt;must&amp;lt;/em&amp;gt; be served using an XML MIME type, such as &amp;lt;code&amp;gt;application/xhtml+xml&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;application/xml&amp;lt;/code&amp;gt;. Unlike XHTML 1.0, XHTML 5 &amp;lt;em&amp;gt;must not&amp;lt;/em&amp;gt; be served as &amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Using the incorrect MIME type (&amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;) for XHTML will cause the document to be parsed according to parsing requirements for HTML. In other words, it will be treated as tag soup. Ensuring the use of an XML MIME type is the only way to ensure that browsers handle the document as XML.&lt;br /&gt;
&lt;br /&gt;
== Browsers don’t even fully support HTML 4.01 and XHTML 1.0 yet, so why create a new version? == &lt;br /&gt;
&lt;br /&gt;
[HTML 4.01 and XHTML 1.0 are underspecified. In its current state, it is not possible for browsers to interoperably implement HTML 4.01 while still remaining compatible.]&lt;br /&gt;
&lt;br /&gt;
== HTML isn’t broken, why fix it? == &lt;br /&gt;
&lt;br /&gt;
[HTML is actually extremely broken. (explain&amp;amp;#8230;)]&lt;br /&gt;
&lt;br /&gt;
== Which browser vendors support the development of HTML 5? == &lt;br /&gt;
&lt;br /&gt;
Apple, Mozilla and Opera.&lt;br /&gt;
&lt;br /&gt;
== Which browser vendors support the development of XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
None that we are aware of.&lt;br /&gt;
&lt;br /&gt;
== What about Microsoft and Internet Explorer? == &lt;br /&gt;
&lt;br /&gt;
HTML 5 is being developed with IE compatibility in mind. Support for many features can be simulated using JavaScript.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== When will we be able to start using these new features? == &lt;br /&gt;
&lt;br /&gt;
As soon as browsers begin to support them. You do not need to wait till HTML5 becomes a recommendation, because that can&amp;amp;#8217;t happen until after the implementations are completely finished. [Need to expand on this answer] &lt;br /&gt;
&lt;br /&gt;
== Is HTML 5 backwards compatible? == &lt;br /&gt;
&lt;br /&gt;
Yes. (explain)&lt;br /&gt;
&lt;br /&gt;
== How can I get involved? == &lt;br /&gt;
&lt;br /&gt;
There are lots of ways you can get involved, take a look and see [http://wiki.whatwg.org/wiki/What_you_can_do what you can do]!&lt;br /&gt;
&lt;br /&gt;
== Do I have to pay a membership fee to participate? == &lt;br /&gt;
&lt;br /&gt;
No, participation is open to everyone. You may easily subscribe to the WHATWG [http://whatwg.org/mailing-list mailing lists]. You may also [http://blog.whatwg.org/w3c-restarts-html-effort join the the W3C&amp;amp;#8217;s new HTMLWG] by going through the slightly longer application process.&lt;br /&gt;
&lt;br /&gt;
== How can I keep track of changes to the spec? == &lt;br /&gt;
&lt;br /&gt;
The specification is available in the [http://svn.whatwg.org/ subversion repository]. You may use any svn client to check out the latest version and use your clients diff tools in order compare revisions and see what has been changed. You may also use the online [http://html5.org/tools/web-apps-tracker (X)HTML5 Tracker Tool]. The tool provides an online interface for selecting and comparing revisions of the spec.&lt;br /&gt;
&lt;br /&gt;
== What sort of classes and ids are commonly placed on DIV elements? == &lt;br /&gt;
&lt;br /&gt;
[Link to related research on this issue. Need to search the archives for previous discussion of this.]&lt;br /&gt;
&lt;br /&gt;
== When will HTML 5 be finished? == &lt;br /&gt;
&lt;br /&gt;
It is estimated that HTML5 will reach a W3C recommendation in the year 2022 or later. This will be approximately 18-20 years of development, since beginning in mid-2004.&lt;br /&gt;
&lt;br /&gt;
For a spec to become a REC, it requires two 100% complete and fully interoperable implementations, which is proven by each successfully passing literally thousands of test cases (20,000 tests for the whole spec would probably be a conservative estimate). When you consider how long it takes to write that many test cases and how long it takes to implement each feature, you&amp;amp;#8217;ll begin to understand why the time frame seems so long.&lt;br /&gt;
&lt;br /&gt;
However, the WHATWG recognises and understands the problem with this: different parts of the specification are at different maturity levels. Some sections are already relatively stable and there are implementations that are already quite close to completion, and those features can be used today (e.g. &amp;amp;lt;canvas&amp;amp;gt;). But other sections are still being actively worked on and changed regularly, or not even written yet.&lt;br /&gt;
&lt;br /&gt;
The details are still being worked out, but the plan is to indicate the maturity level on a per-section basis. Sections like the Link Types, which is relatively simple, isn&amp;amp;#8217;t going to take long to become interoperably implemented. In fact, Mozilla is already implementing the new autodiscovery features for Firefox 3.0, and it shouldn&amp;amp;#8217;t take long for places like Technorati, Bloglines, etc. to implement follow.&lt;br /&gt;
&lt;br /&gt;
Once a section is interoperably implemented, it&amp;amp;#8217;s quite stable and unlikely to change significantly. Any changes to such a section would most likely only be editorial in nature, particularly if the feature is already in widespread use (as autodiscovery already is today).&lt;br /&gt;
&lt;br /&gt;
The point to all this is that you shouldn&amp;amp;#8217;t place too much weight on the status of the specification as a whole. You need to consider the stability and maturity level of each section individually.&lt;br /&gt;
&lt;br /&gt;
== Should I close empty elements with &amp;lt;code&amp;gt;/&amp;amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;amp;gt;&amp;lt;/code&amp;gt;? == &lt;br /&gt;
&lt;br /&gt;
Void elements in HTML (the new name for empty elements) do not require a trailing slash. e.g. Instead of writing &amp;lt;code&amp;gt;&amp;amp;lt;br /&amp;amp;gt;&amp;lt;/code&amp;gt;, you only need to write &amp;lt;code&amp;gt;&amp;amp;lt;br&amp;amp;gt;&amp;lt;/code&amp;gt;. This applies to all void elements, including &amp;lt;code&amp;gt;img&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;input&amp;lt;/code&amp;gt;, etc.&lt;br /&gt;
&lt;br /&gt;
However, due to the widespread attempts to use XHTML 1.0, there are a significant number of pages using the trailing slash. Because of this, the syntax has been permitted (though it is not recommended) in order to ease migration from XHTML 1.0 to HTML5.&lt;br /&gt;
&lt;br /&gt;
It is important to realise that this syntax serves no purpose in HTML, it is just ignored by browsers. Despite the fact that it is based upon the XML syntax, it does not mean that HTML documents can be parsed with XML tools. HTML and XHTML are serparate serialisations and they each must be processed using tools designed to handle each format.&lt;br /&gt;
&lt;br /&gt;
== If I&amp;amp;#8217;m careful with the syntax I use in my HTML document, can I process it with an XML parser? == &lt;br /&gt;
&lt;br /&gt;
No, HTML and XML have [#differences many significant differences], particularly parsing requirements, and you cannot process one using tools designed for the other. However, since HTML5 is defined in terms of the DOM, in most cases there are both HTML and XHTML serialisations available that can represent the same document. There are, however, a few differences explained later that make it impossible to represent some HTML documents accurately as XHTML and vice versa. &lt;br /&gt;
&lt;br /&gt;
If you wish to process an HTML document as XHTML, it requires that you and convert it into XHTML first; and vice versa for processing XHTML as HTML.&lt;br /&gt;
&lt;br /&gt;
== What is the namespace declaration? == &lt;br /&gt;
&lt;br /&gt;
In XHTML, you are required to specify the namespace. (need to find a simple explanation for what namespaces are for)&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
In HTML, the &amp;lt;code&amp;gt;xmlns&amp;lt;/code&amp;gt; attribute is only allowed on the &amp;lt;code&amp;gt;html&amp;lt;/code&amp;gt; element, and only if it has the value &amp;amp;#8220;&amp;lt;code&amp;gt;http://www.w3.org/1999/xhtml&amp;lt;/code&amp;gt;&amp;amp;#8220;. It doesn&amp;amp;#8217;t do anything at all, it is merely allowed to ease migration from XHTML 1.0. It is not actually a namespace declaration in HTML, because HTML doesn&amp;amp;#8217;t support namespaces.&lt;br /&gt;
&lt;br /&gt;
== Will there be support for namespaces in HTML? == &lt;br /&gt;
&lt;br /&gt;
HTML5 is being defined in terms of the DOM and all HTML elements will exist in the HTML namespace: &amp;lt;code&amp;gt;http://www.w3.org/1999/xhtml&amp;lt;/code&amp;gt;. However, unlike the XHTML serialisation, there is no real namespace syntax available in the HTML serialisation (see previous question). In other words, you do not need to declare the namespace in your HTML markup, like you do in XHTML.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[#namespace-decl XHTML requires that the namespace to be declared] appropriately using the &amp;lt;code&amp;gt;xmlns&amp;lt;/code&amp;gt; attribute. The namespace declaration is unnecessary in HTML because browsers will already know it&amp;amp;#8217;s an HTML document based on the [#mime-type MIME type] (&amp;lt;code&amp;gt;text/html&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
There have been proposals for introducing MathML markup into HTML, which would exist in the MathML namespace. However, if that proposal is accepted, it will be supported in a way that does not require explicit namespace declaration in the markup.&lt;br /&gt;
&lt;br /&gt;
== How do I specify the character encoding? == &lt;br /&gt;
&lt;br /&gt;
For HTML, it is strongly recommended that you specify the encoding using the HTTP &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; header. If you are unable to [http://www.w3.org/International/O-HTTP-charset configure your server] to send the correct headers, then you may use the &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element. The &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element used for this purpose must occur as the first element in the head (even before the &amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;), and within the first 512 bytes of the file.&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;meta charset=&amp;quot;UTF-8&amp;quot;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that this &amp;lt;code&amp;gt;meta&amp;lt;/code&amp;gt; element is different from HTML 4, though it is compatible with many browsers because of the way encoding detection has been implemented.&lt;br /&gt;
&lt;br /&gt;
In XHTML, XML rules for determining the character encoding apply. You may use either the HTTP &amp;lt;code&amp;gt;Content-Type&amp;lt;/code&amp;gt; header or the XML declaration to specify the encoding.&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot;?&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otherwise, you must use the default of &amp;lt;code&amp;gt;UTF-8&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;UTF-16&amp;lt;/code&amp;gt;. It is recommended that you use &amp;lt;code&amp;gt;UTF-8&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== What are the differences between HTML and XHTML? == &lt;br /&gt;
&lt;br /&gt;
See the list of [http://wiki.whatwg.org/wiki/HTML_vs._XHTML#Differences_Between_HTML_and_XHTML differences between HTML and XHTML] in the wiki.&lt;br /&gt;
&lt;br /&gt;
== Does HTML5 support &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; on any element like XHTML 2.0? == &lt;br /&gt;
&lt;br /&gt;
No, supporting &amp;lt;code&amp;gt;href&amp;lt;/code&amp;gt; on any element has several problems associated with it that make it difficult to support in HTML5.&lt;br /&gt;
&lt;br /&gt;
* It isn&amp;amp;#8217;t backwards compatible with existing browsers.&lt;br /&gt;
* It adds no new functionality that can&amp;amp;#8217;t already be achieved using the &amp;lt;code&amp;gt;a&amp;lt;/code&amp;gt; element.&lt;br /&gt;
* It doesn&amp;amp;#8217;t make sense for all elements, such as interactive elements like &amp;lt;code&amp;gt;input&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;button&amp;lt;/code&amp;gt;, where the use of href would interfere with their normal function.&lt;br /&gt;
* Browser vendors have reported that implementing it would be extremely complex.&lt;br /&gt;
&lt;br /&gt;
The only advantage it seems to add is that it reduces typing for authors in some cases, but that is not a strong enough reason to support it in light of the other reasons.&lt;br /&gt;
&lt;br /&gt;
== Why does HTML5 legitimise tag soup? == &lt;br /&gt;
&lt;br /&gt;
Actually it doesn&amp;amp;#8217;t. This is a misconception that comes from the confusion between conformance requirements for documents, and the requirements for user agents.&lt;br /&gt;
&lt;br /&gt;
Due to the fundamental design principle of supporting existing content, the spec must define how to handle all HTML, regardless of whether documents are conforming or not. Therefore, the spec defines (or will define) precisely how to handle and recover from erroneous markup, much of which would be considered tag soup.&lt;br /&gt;
&lt;br /&gt;
For example, the spec defines algorithms for dealing with syntax errors such as misnested tags, which will ensure that a well structured DOM tree can be produced.&lt;br /&gt;
&lt;br /&gt;
Defining that is essential for one day achieving interoperability between browsers and reducing the dependence upon reverse engineering each other.&lt;br /&gt;
&lt;br /&gt;
However, the conformance requirements for authors are defined separately from the processing requirements. Just because browsers are required to handle erroneous content, it does not make such markup conforming.&lt;br /&gt;
&lt;br /&gt;
For example, user agents will be required to support the marquee element, but authors must not use the marquee element in conforming documents.&lt;br /&gt;
&lt;br /&gt;
It is important to make the distinction between the rules that apply to user agents and the rules that apply to authors for produce conforming documents. They are completely orthogonal.&lt;/div&gt;</summary>
		<author><name>Utcursch</name></author>
	</entry>
</feed>