removed definition of 'obsolete', removed statement about keyCode and charCode being obsolete, per Maciej
authorschepers
Tue, 22 Sep 2009 11:30:38 +0900
changeset 206 0a35d21c54ab
parent 205 fbc7cbfeea1c
child 207 81658547826e
removed definition of 'obsolete', removed statement about keyCode and charCode being obsolete, per Maciej
html/DOM3-Events.html
--- a/html/DOM3-Events.html	Tue Sep 22 10:41:23 2009 +0900
+++ b/html/DOM3-Events.html	Tue Sep 22 11:30:38 2009 +0900
@@ -190,7 +190,7 @@
       <dl>
         <dt>This version:</dt>
         <dd>
-          <a href="http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html?rev=1.91">http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html?rev=1.91</a>
+          <a href="http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html?rev=1.92">http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html?rev=1.92</a>
         </dd>
         <dt>Latest stable version:</dt>
         <dd>
@@ -198,7 +198,7 @@
         </dd>
         <dt>Previous version:</dt>
         <dd>
-          <a href="http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html?rev=1.90">http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html?rev=1.90</a>
+          <a href="http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html?rev=1.91">http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html?rev=1.91</a>
         </dd>
         <dt>Editor's Draft:</dt>
         <dd>
@@ -580,11 +580,11 @@
           <dl>
             <dt id="conf-interactive-ua">Web browsers and other interactive user agents</dt>
             <dd>
-              <p>A Web browser or other interactive user agent conforms to DOM Level 3 Events if it supports the Core module defined in [<cite><a class="noxref normative" href="#references-DOM2Core">DOM Level 2 Core</a></cite>], the <a href="#event-flow">Event dispatch and DOM event flow</a> mechanism, all the interfaces and events with their associated methods, attributes, and semantics defined in this specification which are not marked as <a class="def" href="#glossary-deprecated">deprecated</a> or <a class="def" href="#glossary-obsolete">obsolete</a>, and the complete set of <a class="def" href="#glossary-character-value">character values</a>, <a class="def" href="#glossary-key-name">key names</a>, and <a class="def" href="#glossary-unicode-code-point">Unicode code points</a> in the <a href="#keyset-key-identifiers">Key Identifiers Set</a>.  A conforming interactive user agent must <a class="def" href="#glossary-dispatch">dispatch</a> events appropriate to the given <a href="#events-Events-EventTarget">EventTarget</a> when the conditions defined for that event type have been met.</p>
+              <p>A Web browser or other interactive user agent conforms to DOM Level 3 Events if it supports the Core module defined in [<cite><a class="noxref normative" href="#references-DOM2Core">DOM Level 2 Core</a></cite>], the <a href="#event-flow">Event dispatch and DOM event flow</a> mechanism, all the interfaces and events with their associated methods, attributes, and semantics defined in this specification which are not marked as <a class="def" href="#glossary-deprecated">deprecated</a><!--  or <a class="def" href="#glossary-obsolete">obsolete</a> -->, and the complete set of <a class="def" href="#glossary-character-value">character values</a>, <a class="def" href="#glossary-key-name">key names</a>, and <a class="def" href="#glossary-unicode-code-point">Unicode code points</a> in the <a href="#keyset-key-identifiers">Key Identifiers Set</a>.  A conforming interactive user agent must <a class="def" href="#glossary-dispatch">dispatch</a> events appropriate to the given <a href="#events-Events-EventTarget">EventTarget</a> when the conditions defined for that event type have been met.</p>
               
               <p>A conforming interactive user agent must support scripting, declarative interactivity, or some other means of detecting and dispatching events in the manner described by this specification.  A declarative interactive user agent may still conform to this specification if it does not directly support or expose the methods defined for the DOM Level 3 Events interfaces, but it should provide compatible functionality by other means.</p>
               
-              <p>In addition to meeting all other conformance criteria, a conforming interactive user agent may implement features of this specification marked as <a class="def" href="#glossary-deprecated">deprecated</a> or <a class="def" href="#glossary-obsolete">obsolete</a>, for backwards compatibility with existing content, but such implementation is discouraged.</p>
+              <p>In addition to meeting all other conformance criteria, a conforming interactive user agent may implement features of this specification marked as <a class="def" href="#glossary-deprecated">deprecated</a><!--  or <a class="def" href="#glossary-obsolete">obsolete</a> -->, for backwards compatibility with existing content, but such implementation is discouraged.</p>
               
               <p>A conforming interactive user agent may also support features not found in this specification, but which use the <a href="#event-flow">Event dispatch and DOM event flow</a> mechanism, interfaces, events, or other features defined in DOM Level 3 Events, and may implement additional interfaces and event types appropriate to that implementation.  Such features may be later standardized in future specifications.</p>
 
@@ -596,17 +596,17 @@
             
             <dt id="conf-author-tools">Authoring tools</dt>
             <dd>
-              <p>An authoring tool conforms to DOM Level 3 Events if it produces content which uses the event types and <a href="#event-flow">Event dispatch and DOM event flow</a> model, consistent in a manner as defined in this specification.  An authoring tool must not claim conformance to DOM Level 3 Events for content it produces which uses features of this specification marked as <a class="def" href="#glossary-deprecated">deprecated</a> or <a class="def" href="#glossary-obsolete">obsolete</a> in this specification.  A conforming authoring tool should provide to the author a means to use all event types and interfaces appropriate to all <a class="def" href="#glossary-host-language">host languages</a> in the content document being produced.</p>
+              <p>An authoring tool conforms to DOM Level 3 Events if it produces content which uses the event types and <a href="#event-flow">Event dispatch and DOM event flow</a> model, consistent in a manner as defined in this specification.  An authoring tool must not claim conformance to DOM Level 3 Events for content it produces which uses features of this specification marked as <a class="def" href="#glossary-deprecated">deprecated</a><!--  or <a class="def" href="#glossary-obsolete">obsolete</a> --> in this specification.  A conforming authoring tool should provide to the author a means to use all event types and interfaces appropriate to all <a class="def" href="#glossary-host-language">host languages</a> in the content document being produced.</p>
             </dd>
             
             <dt id="conf-authors">Authors and content</dt>
             <dd>
-              <p>An author creates conforming DOM Level 3 Events content if that content uses the event types and <a href="#event-flow">Event dispatch and DOM event flow</a> model, consistent in a manner as defined in this specification.  An author should not use features of this specification marked as <a class="def" href="#glossary-deprecated">deprecated</a> or <a class="def" href="#glossary-obsolete">obsolete</a>, but should rely instead upon replacement mechanisms defined in this specification and elsewhere.  Conforming content must use the semantics of the interfaces and event types as described in this specification, and must follow best practices as described in accessibility and internationalization guideline specifications. <span class="issue">@@ define specific guideline specifications.</span></p>
+              <p>An author creates conforming DOM Level 3 Events content if that content uses the event types and <a href="#event-flow">Event dispatch and DOM event flow</a> model, consistent in a manner as defined in this specification.  An author should not use features of this specification marked as <a class="def" href="#glossary-deprecated">deprecated</a><!--  or <a class="def" href="#glossary-obsolete">obsolete</a> -->, but should rely instead upon replacement mechanisms defined in this specification and elsewhere.  Conforming content must use the semantics of the interfaces and event types as described in this specification, and must follow best practices as described in accessibility and internationalization guideline specifications. <span class="issue">@@ define specific guideline specifications.</span></p>
             </dd>
             
             <dt id="conf-author-tools">Specifications and host languages</dt>
             <dd>
-              <p>A specification or <a class="def" href="#glossary-host-language">host language</a> conforms to DOM Level 3 Events if it references and uses the <a href="#event-flow">Event dispatch and DOM event flow</a> mechanism, interfaces, events, or other features defined in this specification, and does not extend these features in incompatible ways.  A conforming specification may define additional interfaces and event types appropriate to that specification, or may extend the DOM Level 3 Events interfaces and event types in a manner that does not contradict or conflict with the definitions of those interfaces and event types in this specification.  Specifications or <a class="def" href="#glossary-host-language">host languages</a> which reference DOM Level 3 Events should not use or recommend features of this specification marked as <a class="def" href="#glossary-deprecated">deprecated</a> or <a class="def" href="#glossary-obsolete">obsolete</a>, but should point instead to the indicated replacement for that the feature.  Authors of specifications referring to DOM Level 3 Events should consult with the Working Group responsible for this specification when using or extending the features defined in this specification.</p>
+              <p>A specification or <a class="def" href="#glossary-host-language">host language</a> conforms to DOM Level 3 Events if it references and uses the <a href="#event-flow">Event dispatch and DOM event flow</a> mechanism, interfaces, events, or other features defined in this specification, and does not extend these features in incompatible ways.  A conforming specification may define additional interfaces and event types appropriate to that specification, or may extend the DOM Level 3 Events interfaces and event types in a manner that does not contradict or conflict with the definitions of those interfaces and event types in this specification.  Specifications or <a class="def" href="#glossary-host-language">host languages</a> which reference DOM Level 3 Events should not use or recommend features of this specification marked as <a class="def" href="#glossary-deprecated">deprecated</a><!--  or <a class="def" href="#glossary-obsolete">obsolete</a> -->, but should point instead to the indicated replacement for that the feature.  Authors of specifications referring to DOM Level 3 Events should consult with the Working Group responsible for this specification when using or extending the features defined in this specification.</p>
             </dd>
           </dl>
 
@@ -621,7 +621,7 @@
             <p><a class="eventtype"><code>This is an event type</code></a></p>
             <p><a class="def">This is a link to a definition in the glossary</a></p>
             <p class="note">This is a note.</p>
-            <p class="warning">This is a warning.  It is used on security notes and to mark <a class="def" href="#glossary-deprecated">deprecated</a> or <a class="def" href="#glossary-obsolete">obsolete</a> features.</p>
+            <p class="warning">This is a warning.  It is used on security notes and to mark <a class="def" href="#glossary-deprecated">deprecated</a><!--  or <a class="def" href="#glossary-obsolete">obsolete</a> --> features.</p>
             <p class="example">This is an example.</p>
             <p class="atrisk">This is a feature at risk, which is likely to be removed from the specification.</p>
             <p class="proposal">This is a proposed new feature.</p>
@@ -666,7 +666,7 @@
           </dd>
 
           <dt id="glossary-deprecated">deprecated</dt>
-          <dd>Features marked as deprecated are included in the specification as reference to older implementations or specifications, but are optional and discouraged.  Only features which have existing or in-progress replacements shall be deprecated in this specification.  Implementations which do not already include support for the feature may implement deprecated features for reasons of backwards compatibility with existing content, but authors creating content should not use deprecated features, unless there is no other way to solve a use case.  Other specifications which reference this specification should not use deprecated features, but should point instead to the replacements of which the feature is deprecated in favor.  Features marked as deprecated in this specification are expected to be <a class="def" href="#glossary-obsolete">obsolete</a> in future specifications.</dd>
+          <dd>Features marked as deprecated are included in the specification as reference to older implementations or specifications, but are optional and discouraged.  Only features which have existing or in-progress replacements shall be deprecated in this specification.  Implementations which do not already include support for the feature may implement deprecated features for reasons of backwards compatibility with existing content, but authors creating content should not use deprecated features, unless there is no other way to solve a use case.  Other specifications which reference this specification should not use deprecated features, but should point instead to the replacements of which the feature is deprecated in favor.  Features marked as deprecated in this specification are expected to be dropped from future specifications. <!-- Features marked as deprecated in this specification are expected to be <a class="def" href="#glossary-obsolete">obsolete</a> in future specifications. --></dd>
 
           <dt id="glossary-dispatch">dispatch</dt>
           <dd>To create an event with attributes and methods appropriate to its type and context, and propagate it through the DOM tree in the specified manner. Interchangeable with the term "fire", e.g. "fire a 'click' event" or "dispatch a 'load' event".</dd>
@@ -710,8 +710,10 @@
           <dt id="glossary-namespaceURI">namespace URI</dt>
           <dd>A <em>namespace URI</em> is a URI that identifies an XML namespace. This is called the namespace name in [<cite><a class="noxref informative" href="#references-Namespaces11">XML Namespaces 1.1</a></cite>]. See also sections 1.3.2 "<a class="normative" href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#baseURIs-Considerations"><em>DOM URIs</em></a>" and 1.3.3 "<a class="normative" href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#Namespaces-Considerations"><em>XML Namespaces</em></a>" regarding URIs and namespace URIs handling and comparison in the DOM APIs.</dd>
           
+<!-- 
           <dt id="glossary-obsolete">obsolete</dt>
-          <dd>An obsolete feature is one which has previously been defined in a specification or implemented, but which is deemed to be no longer useful, problematic to implement interoperably or performantly, or even actively harmful.  Obsolete features may be implemented by user agents (if they are not harmful), but should not be used by authors.  Obsolete features are not defined in this specification, but may be listed for historical purposes in the context of related features, and are marked as obsolete.</dd>
+          <dd>An obsolete feature is one which has previously been defined in a specification or implemented, but which is deemed to be no longer useful, problematic to implement interoperably or performantly, or even actively harmful, and are thus not formally defined in this specification.  Obsolete features may be implemented by user agents (if they are not harmful), but should not be used by authors.  Obsolete features are not defined in this specification, but may be listed for historical purposes in the context of related features, and are marked as obsolete.</dd>
+-->
 
           <dt id="glossary-phase">phase</dt>
           <dd>In the context of <a class="def" href="#glossary-event">events</a>, a phase is set of logical traversals from node to node along the DOM tree, from the <a class="def" href="#glossary-root-element">root element</a> down to the <a class="def" href="#glossary-event-target">event target</a> (<a class="def" href="#glossary-capture-phase">capture phase</a>), at the <a class="def" href="#glossary-event-target">event target</a> itself (<a class="def" href="#glossary-target-phase">target phase</a>), and back up to the <a class="def" href="#glossary-root-element">root element</a> (<a class="def" href="#glossary-bubbling-phase">bubbling phase</a>).</dd>
@@ -3627,10 +3629,8 @@
           </dd>
         </dl>
         
-        <p class="warning" id="keycode-charcode"><strong>Warning:</strong>  Legacy keyboard event implementations may include two additional attributes, <code>keyCode</code> and <code>charCode</code>.  The <code>keyCode</code> attribute indicates a numeric value associated with a particular key on a computer keyboard, while the <code>charCode</code> attribute indicates the <acronym title="American Standard Code for Information Interchange">ASCII</acronym> value of the character associated with that key (which may or may not be the same as the <code>keyCode</code> value) and is applicable only to keys that produce a <a class="def" href="#glossary-character-value">character value</a>.  In practice, <code>keyCode</code> and <code>charCode</code> are inconsistent across platforms and even the same implementation on different operating systems or using different localizations.  Both <code>keyCode</code> and <code>charCode</code> are considered <a class="def" href="#glossary-obsolete">obsolete</a> in DOM Level 3 Events, and this specification does not define behavior for them; authors should use <a href="#events-Events-KeyboardEvent-keyIdentifier"><code>KeyboardEvent.keyIdentifier</code></a> instead.  <em>For more information, see the informative table in <a href="#keyset-keyCode-charCode">Key identifiers, keyCode, and charCode</a>.</em></p>
-        
-        <p><a class="def" href="#glossary-obsolete">obsolete</a></p>
-        
+        <p class="warning" id="keycode-charcode"><strong>Warning:</strong>  Legacy keyboard event implementations may include two additional attributes, <code>keyCode</code> and <code>charCode</code>.  The <code>keyCode</code> attribute indicates a numeric value associated with a particular key on a computer keyboard, while the <code>charCode</code> attribute indicates the <acronym title="American Standard Code for Information Interchange">ASCII</acronym> value of the character associated with that key (which may or may not be the same as the <code>keyCode</code> value) and is applicable only to keys that produce a <a class="def" href="#glossary-character-value">character value</a>.  In practice, <code>keyCode</code> and <code>charCode</code> are inconsistent across platforms and even the same implementation on different operating systems or using different localizations.  DOM Level 3 Events  does not define behavior for either <code>keyCode</code> or <code>charCode</code>; authors should use <a href="#events-Events-KeyboardEvent-keyIdentifier"><code>KeyboardEvent.keyIdentifier</code></a> instead, in conforming DOM Level 3 Events implementations.  <em>For more information, see the informative table in <a href="#keyset-keyCode-charCode">Key identifiers, keyCode, and charCode</a>.</em></p>
+                
         <p>Depending on the character generation device, keyboard events may or may not be generated.</p>
         <p>The keyboard event types are listed below.</p>
         
@@ -5466,7 +5466,7 @@
 <div>
   <h4 class="adiv3"><a id="keyset-keyCode-charCode" href="#keyset-keyCode-charCode">6.2.8 Key identifiers, keyCode, and charCode</a></h4>
   <p class="note"><strong>Note:</strong> This section is non-normative.</p>
-  <p>Browser support for keyboards has traditionally relied on two ad-hoc attributes, <code class="attr-name">keyCode</code>, and <code class="attr-name">charCode</code>.  The values for these attributes, and the availability of the attribute, is inconsistent across platforms, keyboard languages and layouts, User Agents, versions, and even event types.  A significant amount of legacy content, including script libraries, relies upon detecting the User Agent and acting accordingly, and any changes to <code class="attr-name">keyCode</code>, or <code class="attr-name">charCode</code> risk breaking as much content as they fix or enable.  Additionally, these attributes are not suitable for international usage, or accessibility concerns.  Therefore, this specification does not normatively define the <code class="attr-name">keyCode</code>, and <code class="attr-name">charCode</code> attributes, relying instead only on the more robust key identifiers, which can be used safely and consistently in any User Agent which conforms to this specification.  However, for the purpose of documenting the current state of these attributes and their relation to equivalent key identifiers, this specification contains the following table, which is to be used as an informative reference only, and does not document the full range of values for <code class="attr-name">keyCode</code>, and <code class="attr-name">charCode</code>.</p>
+  <p>Browser support for keyboards has traditionally relied on two ad-hoc attributes, <code class="attr-name">keyCode</code>, and <code class="attr-name">charCode</code>.  The values for these attributes, and the availability of the attribute, is inconsistent across platforms, keyboard languages and layouts, user agents, versions, and even event types.  A significant amount of legacy content, including script libraries, relies upon detecting the user agent and acting accordingly, and any changes to <code class="attr-name">keyCode</code>, or <code class="attr-name">charCode</code> risk breaking as much content as they fix or enable.  Additionally, these attributes are not suitable for international usage, or accessibility concerns.  Therefore, this specification does not normatively define the <code class="attr-name">keyCode</code>, and <code class="attr-name">charCode</code> attributes, relying instead only on the more robust key identifiers, which can be used safely and consistently in any user agent which conforms to this specification.  However, for the purpose of documenting the current state of these attributes and their relation to equivalent key identifiers, this specification contains the following table, which is to be used as an informative reference only, and does not document the full range of values for <code class="attr-name">keyCode</code>, and <code class="attr-name">charCode</code>.</p>
   <table id="tbl-keyIdentifiers-keyCode-charCode">
     <caption><strong>Key Identifiers Set with keyCode and charCode Equivalents for Major Browsers</strong><br/>(<code>keycode</code> labeled <em>key</em>, <code>charcode</code> labeled <em>char</em>)</caption>
     <tr>