Revamp <address>'s semantics to make more sense given <article>'s semantics. (whatwg r3267)

Revamp <address>'s semantics to make more sense given <article>'s
semantics. (whatwg r3267)

http://dev.w3.org/cvsweb/html5/spec/Overview.html?r1=1.2414&r2=1.2415&f=h
http://html5.org/tools/web-apps-tracker?from=3266&to=3267

===================================================================
RCS file: /sources/public/html5/spec/Overview.html,v
retrieving revision 1.2414
retrieving revision 1.2415
diff -u -d -r1.2414 -r1.2415
--- Overview.html 16 Jun 2009 00:17:17 -0000 1.2414
+++ Overview.html 16 Jun 2009 00:52:17 -0000 1.2415
@@ -10552,9 +10552,10 @@
    <dt>DOM interface:</dt>
    <dd>Uses <code><a href="#htmlelement">HTMLElement</a></code>.</dd>
   </dl><p>The <code><a href="#the-address-element">address</a></code> element <a href="#represents">represents</a> the
-  contact information for the section it <a href="#applyToSection">applies</a> to. If it applies to <a href="#the-body-element-0">the
-  body element</a>, then it instead applies to the document as a
-  whole.<div class="example">
+  contact information for its nearest <code><a href="#the-article-element">article</a></code> or
+  <code><a href="#the-body-element">body</a></code> element ancestor. IF that is <a href="#the-body-element-0">the body
+  element</a>, then the contact information applies to the document
+  as a whole.<div class="example">
    <p>For example, a page at the W3C Web site related to HTML might
    include the following contact information:</p>
    <pre>&lt;ADDRESS&gt;
@@ -10564,23 +10565,64 @@
 &lt;/ADDRESS&gt;</pre>
   </div><p>The <code><a href="#the-address-element">address</a></code> element must not be used to represent
   arbitrary addresses (e.g. postal addresses), unless those addresses
-  are contact information for the section. (The <code><a href="#the-p-element">p</a></code> element
-  is the appropriate element for marking up such addresses.)<p>The <code><a href="#the-address-element">address</a></code> element must not contain information
+  are in fact the relevant contact information. (The <code><a href="#the-p-element">p</a></code>
+  element is the appropriate element for marking up postal addresses
+  in general.)<p>The <code><a href="#the-address-element">address</a></code> element must not contain information
   other than contact information.<div class="example">
    <p>For example, the following is non-conforming use of the
    <code><a href="#the-address-element">address</a></code> element:</p>
    <pre class="bad">&lt;ADDRESS&gt;Last Modified: 1999/12/24 23:37:50&lt;/ADDRESS&gt;</pre>
   </div><p>Typically, the <code><a href="#the-address-element">address</a></code> element would be included
-  with other information in a <code><a href="#the-footer-element">footer</a></code> element.<div class="impl">
+  along with other information in a <code><a href="#the-footer-element">footer</a></code> element.<div class="impl">
 
-  <p>To determine the contact information for a <a href="#sectioning-content-0">sectioning
-  content</a> element (such as a document's <code><a href="#the-body-element">body</a></code>
-  element, which would give the contact information for the page), UAs
-  must collect all the <code><a href="#the-address-element">address</a></code> elements that <a href="#applyToSection">apply</a> to that <a href="#sectioning-content-0">sectioning
-  content</a> element and its ancestor <a href="#sectioning-content-0">sectioning
-  content</a> elements. The contact information is the collection
-  of all the information given by those elements.</p> <!-- XXX
-  exception for nested article elements? -->
+  <p>The contact information for a node <var title="">node</var> is a
+  collection of <code><a href="#the-address-element">address</a></code> elements defined by the first
+  applicable entry from the following list:</p>
+
+  <dl class="switch"><dt>If <var title="">node</var> is an <code><a href="#the-article-element">article</a></code> element</dt>
+   <dt>If <var title="">node</var> is a <code><a href="#the-body-element">body</a></code> element</dt>
+
+   <dd>
+
+    <p>The contact information consists of all the
+    <code><a href="#the-address-element">address</a></code> elements that have <var title="">node</var>
+    as an ancestor and do not have another <code><a href="#the-body-element">body</a></code> or
+    <code><a href="#the-article-element">article</a></code> element ancestor that is a descendant of <var title="">node</var>.</p>
+
+   </dd>
+
+   <dt>If <var title="">node</var> has an ancestor element that is a <code><a href="#the-article-element">article</a></code> element</dt>
+   <dt>If <var title="">node</var> has an ancestor element that is a <code><a href="#the-body-element">body</a></code> element</dt>
+
+   <dd>
+
+    <p>The contact information of <var title="">node</var> is the same
+    as the contact information of the nearest <code><a href="#the-article-element">article</a></code> or
+    <code><a href="#the-body-element">body</a></code> element ancestor, whichever is nearest.</p>
+
+   </dd>
+
+   <dt>If <var title="">node</var>'s <code>Document</code> has <a href="#the-body-element-0" title="the body element">a body element</a></dt>
+
+   <dd>
+
+    <p>The contact information of <var title="">node</var> is the same
+    as the contact information <a href="#the-body-element-0">the body element</a> of the
+    <code>Document</code>.</p>
+
+   </dd>
+
+   <dt>Otherwise</dt>
+
+   <dd>
+
+    <p>There is no contact information for <var title="">node</var>.</p>
+
+   </dd>
+
+  </dl><p>User agents may expose the contact information of a node to the
+  user, or use it for other purposes, such as indexing sections based
+  on the sections' contact information.</p>
 
   </div><p class="note">Contact information for one <a href="#sectioning-content-0">sectioning
   content</a> element, e.g. an <code><a href="#the-aside-element">aside</a></code> element, does

Received on Tuesday, 16 June 2009 00:53:10 UTC