[html5] r5754 - [ac] (0) Define conformance criteria around bidi formatting characters Fixing ht [...]

whatwg at whatwg.org whatwg at whatwg.org
Mon Jan 10 01:55:14 PST 2011


Author: ianh
Date: 2011-01-10 01:55:13 -0800 (Mon, 10 Jan 2011)
New Revision: 5754

Modified:
   complete.html
   index
   source
Log:
[ac] (0) Define conformance criteria around bidi formatting characters
Fixing http://www.w3.org/Bugs/Public/show_bug.cgi?id=11234

Modified: complete.html
===================================================================
--- complete.html	2011-01-09 20:41:28 UTC (rev 5753)
+++ complete.html	2011-01-10 09:55:13 UTC (rev 5754)
@@ -221,7 +221,7 @@
 
   <header class=head id=head><p><a class=logo href=http://www.whatwg.org/ rel=home><img alt=WHATWG height=101 src=/images/logo width=101></a></p>
    <hgroup><h1>Web Applications 1.0</h1>
-    <h2 class="no-num no-toc">Living Standard — 9 January 2011</h2>
+    <h2 class="no-num no-toc">Living Standard — 10 January 2011</h2>
    </hgroup><p>You can take part in this work. <a href=http://www.whatwg.org/mailing-list>Join the working group's discussion list.</a></p>
    <p><strong>Web designers!</strong> We have a <a href=http://blog.whatwg.org/faq/>FAQ</a>, a <a href=http://forums.whatwg.org/>forum</a>, and a <a href=http://www.whatwg.org/mailing-list#help>help mailing list</a> for you!</p>
    <!--<p class="impl"><strong>Implementors!</strong> We have a <a href="http://www.whatwg.org/mailing-list#implementors">mailing list</a> for you too!</p>-->
@@ -420,7 +420,9 @@
          <li><a href=#interactive-content-0><span class=secno>3.2.5.1.7 </span>Interactive content</a></ol></li>
        <li><a href=#transparent-content-models><span class=secno>3.2.5.2 </span>Transparent content models</a></li>
        <li><a href=#paragraphs><span class=secno>3.2.5.3 </span>Paragraphs</a></ol></li>
-     <li><a href=#annotations-for-assistive-technology-products-(aria)><span class=secno>3.2.6 </span>Annotations for assistive technology products (ARIA)</a></ol></li>
+     <li><a href=#requirements-relating-to-bidirectional-algorithm-formatting-characters><span class=secno>3.2.6 </span>Requirements relating to bidirectional-algorithm formatting
+  characters</a></li>
+     <li><a href=#annotations-for-assistive-technology-products-(aria)><span class=secno>3.2.7 </span>Annotations for assistive technology products (ARIA)</a></ol></li>
    <li><a href=#apis-in-html-documents><span class=secno>3.3 </span>APIs in HTML documents</a></li>
    <li><a href=#interactions-with-xpath-and-xslt><span class=secno>3.4 </span>Interactions with XPath and XSLT</a></li>
    <li><a href=#dynamic-markup-insertion><span class=secno>3.5 </span>Dynamic markup insertion</a>
@@ -10806,6 +10808,7 @@
   character">space characters</a>).</p>
 
 
+
   <h6 id=embedded-content-0><span class=secno>3.2.5.1.6 </span>Embedded content</h6>
 
   <p><dfn id=embedded-content>Embedded content</dfn> is content that imports another
@@ -11206,8 +11209,63 @@
 
 
 
-  <h4 id=annotations-for-assistive-technology-products-(aria)><span class=secno>3.2.6 </span><dfn>Annotations for assistive technology products</dfn> (ARIA)</h4>
+  <h4 id=requirements-relating-to-bidirectional-algorithm-formatting-characters><span class=secno>3.2.6 </span>Requirements relating to bidirectional-algorithm formatting
+  characters</h4>
 
+  <p><a href=#text-content>Text content</a> in <a href=#html-elements>HTML elements</a> with
+  child <a href=#text-node title="text node">text nodes</a>, and text in
+  attributes of <a href=#html-elements>HTML elements</a> that allow free-form text,
+  may contain characters in the range U+202A to U+202E (the
+  bidirectional-algorithm formatting characters). However, the use of
+  these characters is restricted so that any embedding or overrides
+  generated by these characters do not start and end with different
+  parent elements, and so that all such embeddings and overrides are
+  explicitly terminated by a U+202C POP DIRECTIONAL FORMATTING
+  character. This helps reduces incidences of text being reused in a
+  manner that has unforseen effects on the bidirectional
+  algorithm.</p>
+
+  <p>The aforementioned restrictions are defined by specifying that
+  certain parts of documents form <a href=#bidirectional-algorithm-formatting-character-ranges>bidirectional-algorithm
+  formatting character ranges</a>, and then imposing a requirement
+  on such ranges.</p>
+
+  <p>The string resulting from the concatenation of the data of all of
+  an <a href=#html-elements title="HTML elements">HTML element</a>'s <a href=#text-node title="text node">text nodes</a>, if any, is a <a href=#bidirectional-algorithm-formatting-character-ranges title="bidirectional-algorithm formatting character
+  ranges">bidirectional-algorithm formatting character
+  range</a>.</p>
+
+  <p>The value of a namespace-less attribute of an <a href=#html-elements title="HTML
+  elements">HTML element</a> is a <a href=#bidirectional-algorithm-formatting-character-ranges title="bidirectional-algorithm formatting character
+  ranges">bidirectional-algorithm formatting character
+  range</a>.</p>
+
+  <p>Any strings that, as described above, are
+  <dfn id=bidirectional-algorithm-formatting-character-ranges>bidirectional-algorithm formatting character ranges</dfn> must
+  match the <code title="">string</code> production in the following
+  ABNF, the character set for which is Unicode. <a href=#refsABNF>[ABNF]</a></p>
+
+  <pre>string        = *( plaintext ( embedding / override ) ) plaintext
+embedding     = ( lre / rle ) string pdf
+override      = ( lro / rlo ) string pdf
+lre           = %x202A ; U+202A LEFT-TO-RIGHT EMBEDDING
+rle           = %x202B ; U+202B RIGHT-TO-LEFT EMBEDDING
+lro           = %x202D ; U+202D LEFT-TO-RIGHT OVERRIDE
+rlo           = %x202E ; U+202E RIGHT-TO-LEFT OVERRIDE
+pdf           = %x202C ; U+202C POP DIRECTIONAL FORMATTING
+plaintext     = *( %x0000-2029 / %x202F-10FFFF )
+                ; any string with no bidirectional-algorithm formatting characters</pre>
+
+  <p class=note>For convenience, where possible authors will likely
+  prefer to use the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> attribute, the
+  <code><a href=#the-bdo-element>bdo</a></code> element, and the <code><a href=#the-bdi-element>bdi</a></code> element, rather
+  than maintaining the bidirectional-algorithm formatting characters
+  manually.</p>
+
+
+
+  <h4 id=annotations-for-assistive-technology-products-(aria)><span class=secno>3.2.7 </span><dfn>Annotations for assistive technology products</dfn> (ARIA)</h4>
+
   <p>Authors may use the ARIA <code title=attr-aria-role>role</code>
   and <code title=attr-aria-*>aria-*</code> attributes on <a href=#html-elements>HTML
   elements</a>, in accordance with the requirements described in
@@ -15425,9 +15483,9 @@
 
   <h5 id=restrictions-for-contents-of-script-elements><span class=secno>4.3.1.2 </span><dfn title="script content restrictions">Restrictions for contents of <code>script</code> elements</dfn></h5>
 
-  <p>The <code><a href=#textcontent>textContent</a></code> of a <code><a href=#script>script</a></code> element must match the
-  <code title="">script</code> production in the following ABNF, the
-  character set for which is Unicode. <a href=#refsABNF>[ABNF]</a></p>
+  <p>The <code><a href=#textcontent>textContent</a></code> of a <code><a href=#script>script</a></code> element
+  must match the <code title="">script</code> production in the
+  following ABNF, the character set for which is Unicode. <a href=#refsABNF>[ABNF]</a></p>
 
   <pre>script        = data1 *( escape [ script-start data3 ] "-->" data1 ) [ escape ]
 escape        = "<!--" data2 *( script-start data3 script-end data2 )

Modified: index
===================================================================
--- index	2011-01-09 20:41:28 UTC (rev 5753)
+++ index	2011-01-10 09:55:13 UTC (rev 5754)
@@ -225,7 +225,7 @@
 
   <header class=head id=head><p><a class=logo href=http://www.whatwg.org/ rel=home><img alt=WHATWG height=101 src=/images/logo width=101></a></p>
    <hgroup><h1>HTML5 (including next generation additions still in development)</h1>
-    <h2 class="no-num no-toc">Living Standard — 9 January 2011</h2>
+    <h2 class="no-num no-toc">Living Standard — 10 January 2011</h2>
    </hgroup><p>You can take part in this work. <a href=http://www.whatwg.org/mailing-list>Join the working group's discussion list.</a></p>
    <p><strong>Web designers!</strong> We have a <a href=http://blog.whatwg.org/faq/>FAQ</a>, a <a href=http://forums.whatwg.org/>forum</a>, and a <a href=http://www.whatwg.org/mailing-list#help>help mailing list</a> for you!</p>
    <!--<p class="impl"><strong>Implementors!</strong> We have a <a href="http://www.whatwg.org/mailing-list#implementors">mailing list</a> for you too!</p>-->
@@ -428,7 +428,9 @@
          <li><a href=#interactive-content-0><span class=secno>3.2.5.1.7 </span>Interactive content</a></ol></li>
        <li><a href=#transparent-content-models><span class=secno>3.2.5.2 </span>Transparent content models</a></li>
        <li><a href=#paragraphs><span class=secno>3.2.5.3 </span>Paragraphs</a></ol></li>
-     <li><a href=#annotations-for-assistive-technology-products-(aria)><span class=secno>3.2.6 </span>Annotations for assistive technology products (ARIA)</a></ol></li>
+     <li><a href=#requirements-relating-to-bidirectional-algorithm-formatting-characters><span class=secno>3.2.6 </span>Requirements relating to bidirectional-algorithm formatting
+  characters</a></li>
+     <li><a href=#annotations-for-assistive-technology-products-(aria)><span class=secno>3.2.7 </span>Annotations for assistive technology products (ARIA)</a></ol></li>
    <li><a href=#apis-in-html-documents><span class=secno>3.3 </span>APIs in HTML documents</a></li>
    <li><a href=#interactions-with-xpath-and-xslt><span class=secno>3.4 </span>Interactions with XPath and XSLT</a></li>
    <li><a href=#dynamic-markup-insertion><span class=secno>3.5 </span>Dynamic markup insertion</a>
@@ -10785,6 +10787,7 @@
   character">space characters</a>).</p>
 
 
+
   <h6 id=embedded-content-0><span class=secno>3.2.5.1.6 </span>Embedded content</h6>
 
   <p><dfn id=embedded-content>Embedded content</dfn> is content that imports another
@@ -11185,8 +11188,63 @@
 
 
 
-  <h4 id=annotations-for-assistive-technology-products-(aria)><span class=secno>3.2.6 </span><dfn>Annotations for assistive technology products</dfn> (ARIA)</h4>
+  <h4 id=requirements-relating-to-bidirectional-algorithm-formatting-characters><span class=secno>3.2.6 </span>Requirements relating to bidirectional-algorithm formatting
+  characters</h4>
 
+  <p><a href=#text-content>Text content</a> in <a href=#html-elements>HTML elements</a> with
+  child <a href=#text-node title="text node">text nodes</a>, and text in
+  attributes of <a href=#html-elements>HTML elements</a> that allow free-form text,
+  may contain characters in the range U+202A to U+202E (the
+  bidirectional-algorithm formatting characters). However, the use of
+  these characters is restricted so that any embedding or overrides
+  generated by these characters do not start and end with different
+  parent elements, and so that all such embeddings and overrides are
+  explicitly terminated by a U+202C POP DIRECTIONAL FORMATTING
+  character. This helps reduces incidences of text being reused in a
+  manner that has unforseen effects on the bidirectional
+  algorithm.</p>
+
+  <p>The aforementioned restrictions are defined by specifying that
+  certain parts of documents form <a href=#bidirectional-algorithm-formatting-character-ranges>bidirectional-algorithm
+  formatting character ranges</a>, and then imposing a requirement
+  on such ranges.</p>
+
+  <p>The string resulting from the concatenation of the data of all of
+  an <a href=#html-elements title="HTML elements">HTML element</a>'s <a href=#text-node title="text node">text nodes</a>, if any, is a <a href=#bidirectional-algorithm-formatting-character-ranges title="bidirectional-algorithm formatting character
+  ranges">bidirectional-algorithm formatting character
+  range</a>.</p>
+
+  <p>The value of a namespace-less attribute of an <a href=#html-elements title="HTML
+  elements">HTML element</a> is a <a href=#bidirectional-algorithm-formatting-character-ranges title="bidirectional-algorithm formatting character
+  ranges">bidirectional-algorithm formatting character
+  range</a>.</p>
+
+  <p>Any strings that, as described above, are
+  <dfn id=bidirectional-algorithm-formatting-character-ranges>bidirectional-algorithm formatting character ranges</dfn> must
+  match the <code title="">string</code> production in the following
+  ABNF, the character set for which is Unicode. <a href=#refsABNF>[ABNF]</a></p>
+
+  <pre>string        = *( plaintext ( embedding / override ) ) plaintext
+embedding     = ( lre / rle ) string pdf
+override      = ( lro / rlo ) string pdf
+lre           = %x202A ; U+202A LEFT-TO-RIGHT EMBEDDING
+rle           = %x202B ; U+202B RIGHT-TO-LEFT EMBEDDING
+lro           = %x202D ; U+202D LEFT-TO-RIGHT OVERRIDE
+rlo           = %x202E ; U+202E RIGHT-TO-LEFT OVERRIDE
+pdf           = %x202C ; U+202C POP DIRECTIONAL FORMATTING
+plaintext     = *( %x0000-2029 / %x202F-10FFFF )
+                ; any string with no bidirectional-algorithm formatting characters</pre>
+
+  <p class=note>For convenience, where possible authors will likely
+  prefer to use the <code title=attr-dir><a href=#the-dir-attribute>dir</a></code> attribute, the
+  <code><a href=#the-bdo-element>bdo</a></code> element, and the <code><a href=#the-bdi-element>bdi</a></code> element, rather
+  than maintaining the bidirectional-algorithm formatting characters
+  manually.</p>
+
+
+
+  <h4 id=annotations-for-assistive-technology-products-(aria)><span class=secno>3.2.7 </span><dfn>Annotations for assistive technology products</dfn> (ARIA)</h4>
+
   <p>Authors may use the ARIA <code title=attr-aria-role>role</code>
   and <code title=attr-aria-*>aria-*</code> attributes on <a href=#html-elements>HTML
   elements</a>, in accordance with the requirements described in
@@ -15404,9 +15462,9 @@
 
   <h5 id=restrictions-for-contents-of-script-elements><span class=secno>4.3.1.2 </span><dfn title="script content restrictions">Restrictions for contents of <code>script</code> elements</dfn></h5>
 
-  <p>The <code><a href=#textcontent>textContent</a></code> of a <code><a href=#script>script</a></code> element must match the
-  <code title="">script</code> production in the following ABNF, the
-  character set for which is Unicode. <a href=#refsABNF>[ABNF]</a></p>
+  <p>The <code><a href=#textcontent>textContent</a></code> of a <code><a href=#script>script</a></code> element
+  must match the <code title="">script</code> production in the
+  following ABNF, the character set for which is Unicode. <a href=#refsABNF>[ABNF]</a></p>
 
   <pre>script        = data1 *( escape [ script-start data3 ] "-->" data1 ) [ escape ]
 escape        = "<!--" data2 *( script-start data3 script-end data2 )

Modified: source
===================================================================
--- source	2011-01-09 20:41:28 UTC (rev 5753)
+++ source	2011-01-10 09:55:13 UTC (rev 5754)
@@ -1,4 +1,4 @@
-a<!-- EDITOR NOTES
+<!-- EDITOR NOTES
  !
  !   Adding a new element involves editing the following sections:
  !    - description of the element's categories
@@ -11093,6 +11093,7 @@
   character">space characters</span>).</p>
 
 
+
   <h6>Embedded content</h6>
 
   <p><dfn>Embedded content</dfn> is content that imports another
@@ -11518,6 +11519,65 @@
 
 
 
+  <h4>Requirements relating to bidirectional-algorithm formatting
+  characters</h4>
+
+  <p><span>Text content</span> in <span>HTML elements</span> with
+  child <span title="text node">text nodes</span>, and text in
+  attributes of <span>HTML elements</span> that allow free-form text,
+  may contain characters in the range U+202A to U+202E (the
+  bidirectional-algorithm formatting characters). However, the use of
+  these characters is restricted so that any embedding or overrides
+  generated by these characters do not start and end with different
+  parent elements, and so that all such embeddings and overrides are
+  explicitly terminated by a U+202C POP DIRECTIONAL FORMATTING
+  character. This helps reduces incidences of text being reused in a
+  manner that has unforseen effects on the bidirectional
+  algorithm.</p>
+
+  <p>The aforementioned restrictions are defined by specifying that
+  certain parts of documents form <span>bidirectional-algorithm
+  formatting character ranges</span>, and then imposing a requirement
+  on such ranges.</p>
+
+  <p>The string resulting from the concatenation of the data of all of
+  an <span title="HTML elements">HTML element</span>'s <span
+  title="text node">text nodes</span>, if any, is a <span
+  title="bidirectional-algorithm formatting character
+  ranges">bidirectional-algorithm formatting character
+  range</span>.</p>
+
+  <p>The value of a namespace-less attribute of an <span title="HTML
+  elements">HTML element</span> is a <span
+  title="bidirectional-algorithm formatting character
+  ranges">bidirectional-algorithm formatting character
+  range</span>.</p>
+
+  <p>Any strings that, as described above, are
+  <dfn>bidirectional-algorithm formatting character ranges</dfn> must
+  match the <code title="">string</code> production in the following
+  ABNF, the character set for which is Unicode. <a
+  href="#refsABNF">[ABNF]</a></p>
+
+  <pre>string        = *( plaintext ( embedding / override ) ) plaintext
+embedding     = ( lre / rle ) string pdf
+override      = ( lro / rlo ) string pdf
+lre           = %x202A ; U+202A LEFT-TO-RIGHT EMBEDDING
+rle           = %x202B ; U+202B RIGHT-TO-LEFT EMBEDDING
+lro           = %x202D ; U+202D LEFT-TO-RIGHT OVERRIDE
+rlo           = %x202E ; U+202E RIGHT-TO-LEFT OVERRIDE
+pdf           = %x202C ; U+202C POP DIRECTIONAL FORMATTING
+plaintext     = *( %x0000-2029 / %x202F-10FFFF )
+                ; any string with no bidirectional-algorithm formatting characters</pre>
+
+  <p class="note">For convenience, where possible authors will likely
+  prefer to use the <code title="attr-dir">dir</code> attribute, the
+  <code>bdo</code> element, and the <code>bdi</code> element, rather
+  than maintaining the bidirectional-algorithm formatting characters
+  manually.</p>
+
+
+
   <h4><dfn>Annotations for assistive technology products</dfn> (ARIA)</h4>
 
   <p>Authors may use the ARIA <code title="attr-aria-role">role</code>
@@ -16415,9 +16475,9 @@
 
   <h5><dfn title="script content restrictions">Restrictions for contents of <code>script</code> elements</dfn></h5>
 
-  <p>The <code>textContent</code> of a <code>script</code> element must match the
-  <code title="">script</code> production in the following ABNF, the
-  character set for which is Unicode. <a
+  <p>The <code>textContent</code> of a <code>script</code> element
+  must match the <code title="">script</code> production in the
+  following ABNF, the character set for which is Unicode. <a
   href="#refsABNF">[ABNF]</a></p>
 
   <pre>script        = data1 *( escape [ script-start data3 ] "-->" data1 ) [ escape ]




More information about the Commit-Watchers mailing list