html5/webvtt Overview.html,1.49,1.50

Update of /sources/public/html5/webvtt
In directory hutz:/tmp/cvs-serv24327

Modified Files:
	Overview.html 
Log Message:
Add <lang> to WebVTT. (whatwg r7504)

Index: Overview.html
===================================================================
RCS file: /sources/public/html5/webvtt/Overview.html,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -d -r1.49 -r1.50
--- Overview.html	2 Nov 2012 01:35:39 -0000	1.49
+++ Overview.html	5 Nov 2012 21:03:58 -0000	1.50
@@ -122,7 +122,7 @@
 
   <header class=head id=head><!-- the following line added by request of Ian Jacobs --><p class=logo><a href=http://www.w3.org/><img alt=W3C height=48 src=http://www.w3.org/Icons/w3c_home width=72></a></p>
    <hgroup><h1 class="no-num no-toc">WebVTT</h1>
-    <h2 class="no-num no-toc">Living Standard &mdash; Last Updated 2 November 2012</h2>
+    <h2 class="no-num no-toc">Living Standard &mdash; Last Updated 5 November 2012</h2>
    </hgroup><dl><dt>Latest version:</dt>
     <dd><a href=http://dev.w3.org/html5/webvtt/>http://dev.w3.org/html5/webvtt/</a></dd>
     <dt>Participate:</dt>
@@ -779,6 +779,7 @@
    <li>A <a href=#webvtt-cue-underline-span>WebVTT cue underline span</a>.</li>
    <li>A <a href=#webvtt-cue-ruby-span>WebVTT cue ruby span</a>.</li>
    <li>A <a href=#webvtt-cue-voice-span>WebVTT cue voice span</a>.</li>
+   <li>A <a href=#webvtt-cue-language-span>WebVTT cue language span</a>.</li>
 
    <li>A <a href=#webvtt-cue-timestamp>WebVTT cue timestamp</a>.</li>
 
@@ -841,6 +842,12 @@
   <ol><li>A <a href=#webvtt-cue-span-start-tag>WebVTT cue span start tag</a> "<code title="">v</code>" that requires an annotation; the annotation represents the name of the voice.</li>
    <li><a href=#webvtt-cue-internal-text>WebVTT cue internal text</a>.</li>
    <li>A <a href=#webvtt-cue-span-end-tag>WebVTT cue span end tag</a> "<code title="">v</code>". If this <a href=#webvtt-cue-voice-span>WebVTT cue voice span</a> is the only <a href=#webvtt-cue-components title="WebVTT cue components">component</a> of its <a href=#webvtt-cue-text>WebVTT cue text</a> sequence, then the end tag may be omitted for brevity.</li>
+  </ol><p>A <dfn id=webvtt-cue-language-span>WebVTT cue language span</dfn> consists of the following
+  components, in the order given:</p>
+
+  <ol><li>A <a href=#webvtt-cue-span-start-tag>WebVTT cue span start tag</a> "<code title="">lang</code>" that requires an annotation; the annotation represents the language of the following component, and must be a valid BCP 47 language tag. <a href=#refsBCP47>[BCP47]</a></li>
+   <li><a href=#webvtt-cue-internal-text>WebVTT cue internal text</a>.</li>
+   <li>A <a href=#webvtt-cue-span-end-tag>WebVTT cue span end tag</a> "<code title="">lang</code>".</li>
   </ol><p>A <dfn id=webvtt-cue-span-start-tag>WebVTT cue span start tag</dfn> has a <var title="">tag
   name</var> and either <!--allows,--> requires<!--,--> or disallows
   an annotation, and consists of the following components, in the
@@ -1553,19 +1560,17 @@
   Object">WebVTT Node Objects</a>: <a href=#webvtt-internal-node-object title="WebVTT Internal
   Node Object">WebVTT Internal Node Objects</a> and <a href=#webvtt-leaf-node-object title="WebVTT Leaf Node Object">WebVTT Leaf Node Objects</a>.</p>
 
-  <p><dfn id=webvtt-internal-node-object title="WebVTT Internal Node Object">WebVTT Internal Node
-  Objects</dfn> are those that can contain further <a href=#webvtt-node-object title="WebVTT
-  Node Object">WebVTT Node Objects</a>. They are conceptually
-  similar to elements in HTML or the DOM. <a href=#webvtt-internal-node-object title="WebVTT Internal
-  Node Object">WebVTT Internal Node Objects</a> have an ordered
-  list of child <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node
-  Objects</a>. The <a href=#webvtt-internal-node-object>WebVTT Internal Node Object</a> is said
-  to be the <i>parent</i> of the children. Cycles do not occur; the
-  parent-child relationships so constructed form a tree structure.
-  <a href=#webvtt-internal-node-object title="WebVTT Internal Node Object">WebVTT Internal Node
-  Objects</a> also have an ordered list of class names, know as
-  their <dfn id="webvtt-node-object's-applicable-classes" title="WebVTT Node Object's applicable
-  classes">applicable classes</dfn>.</p>
+  <p><dfn id=webvtt-internal-node-object title="WebVTT Internal Node Object">WebVTT Internal Node Objects</dfn> are those that can
+  contain further <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node Objects</a>. They are conceptually
+  similar to elements in HTML or the DOM. <a href=#webvtt-internal-node-object title="WebVTT Internal Node Object">WebVTT Internal
+  Node Objects</a> have an ordered list of child <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node
+  Objects</a>. The <a href=#webvtt-internal-node-object>WebVTT Internal Node Object</a> is said to be the <i>parent</i> of
+  the children. Cycles do not occur; the parent-child relationships so constructed form a tree
+  structure. <a href=#webvtt-internal-node-object title="WebVTT Internal Node Object">WebVTT Internal Node Objects</a> also have
+  an ordered list of class names, known as their <dfn id="webvtt-node-object's-applicable-classes" title="WebVTT Node Object's applicable
+  classes">applicable classes</dfn>, and a language, known as their <dfn id="webvtt-node-object's-applicable-language" title="WebVTT Node Object's
+  applicable language">applicable language</dfn>, which is to be interpreted as a BCP 47 language
+  code. <a href=#refsBCP47>[BCP47]</a></p>
 
   <p>There are several concrete classes of <a href=#webvtt-internal-node-object title="WebVTT
   Internal Node Object">WebVTT Internal Node Objects</a>:</p>
@@ -1623,6 +1628,14 @@
     is the name of the voice.</p>
    </dd>
 
+   <dt><dfn id=webvtt-language-object title="WebVTT Language Object">WebVTT Language Objects</dfn></dt>
+   <dd>
+    <p>These represent spans of text (a <a href=#webvtt-cue-language-span>WebVTT cue language span</a>) in <a href=#webvtt-cue-text>WebVTT cue
+    text</a>, and are used to annotate parts of the cue where the <a href="#webvtt-node-object's-applicable-language" title="WebVTT Node
+    Object's applicable language">applicable language</a> might be different than the surrounding
+    text's, without implying further meaning (such as italics or bold).</p>
+   </dd>
+
   </dl><p><dfn id=webvtt-leaf-node-object title="WebVTT Leaf Node Object">WebVTT Leaf Node
   Objects</dfn> are those that contain data, such as text, and cannot
   contain child <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node
@@ -1661,6 +1674,9 @@
    <li><p>Let <var title="">current</var> be the <a href=#webvtt-internal-node-object>WebVTT Internal
    Node Object</a> <var title="">result</var>.</li>
 
+   <li><p>Let <var title="">language stack</var> be a stack of language codes, initially
+   empty.</li>
+
    <li><p><i>Loop</i>: If <var title="">position</var> is past the end
    of <var title="">input</var>, return <var title="">result</var> and
    abort these steps.</li>
@@ -1740,6 +1756,13 @@
         string if there is no annotation string.</p>
        </dd>
 
+       <dt>If the tag name is "<code title="">lang</code>"</dt>
+       <dd>
+        <p>Push the value of the token's annotation string, or the empty string if there is no
+        annotation string, onto the <var title="">language stack</var>; then <a href=#attach-a-webvtt-internal-node-object title="attach a
+        WebVTT Internal Node Object">attach</a> a <a href=#webvtt-language-object>WebVTT Language Object</a>.</p>
+       </dd>
+
        <dt>Otherwise</dt>
        <dd>
         <p>Ignore the token.</p>
@@ -1757,6 +1780,10 @@
        list of classes in the token, excluding any classes that are
        the empty string.</p>
 
+       <li><p>Set the new object's <a href="#webvtt-node-object's-applicable-language" title="WebVTT Node Object's applicable language">applicable
+       language</a> to the top entry on the <var title="">language stack</var>, if the stack is
+       not empty.</p>
+
        <li><p>Append the newly created node object to <var title="">current</var>.</li>
 
        <li><p>Let <var title="">current</var> be the newly created
@@ -1797,7 +1824,10 @@
        is "<code title="">v</code>" and <var title="">current</var> is
        a <a href=#webvtt-voice-object>WebVTT Voice Object</a>.</li>
 
-      </ul><p>Otherwise, if the tag name of the end tag token <var title="">token</var> is "<code title="">ruby</code>" and <var title="">current</var> is a <a href=#webvtt-ruby-text-object>WebVTT Ruby Text
+      </ul><p>Otherwise, if the tag name of the end tag token <var title="">token</var> is "<code title="">lang</code>" and <var title="">current</var> is a <a href=#webvtt-language-object>WebVTT Language
+      Object</a>, then let <var title="">current</var> be the parent node of <var title="">current</var>, and pop the top value from the <var title="">language stack</var>.</p>
+
+      <p>Otherwise, if the tag name of the end tag token <var title="">token</var> is "<code title="">ruby</code>" and <var title="">current</var> is a <a href=#webvtt-ruby-text-object>WebVTT Ruby Text
       Object</a>, then let <var title="">current</var> be the
       parent node of the parent node of <var title="">current</var>.</p>
 
@@ -2259,18 +2289,18 @@
     <tr><td><a href=#webvtt-ruby-text-object>WebVTT Ruby Text Object</a>
      <td><code>HTMLElement</code> element node with <code title=dom-Node-localName>localName</code> "<code>rt</code>".
     <tr><td><a href=#webvtt-voice-object>WebVTT Voice Object</a>
-     <td><code>HTMLElement</code> element node with <code title=dom-Node-localName>localName</code> "<code>span</code>", a <code title=attr-title>title</code> attribute set to the <a href=#webvtt-voice-object>WebVTT Voice Object</a>'s value.
+     <td><code>HTMLElement</code> element node with <code title=dom-Node-localName>localName</code> "<code>span</code>", and a <code title=attr-title>title</code> attribute set to the <a href=#webvtt-voice-object>WebVTT Voice Object</a>'s value.
+    <tr><td><a href=#webvtt-class-object>WebVTT Class Object</a>
+     <td><code>HTMLElement</code> element node with <code title=dom-Node-localName>localName</code> "<code>span</code>", and a <code title=attr-lang>lang</code> attribute set to the <a href=#webvtt-language-object>WebVTT Language Object</a>'s <a href="#webvtt-node-object's-applicable-language" title="WebVTT Node Object's applicable language">applicable language</a>.
     <tr><td><a href=#webvtt-text-object>WebVTT Text Object</a>
      <td><code>Text</code> node whose character data is the value of the <a href=#webvtt-text-object>WebVTT Text Object</a>.
     <tr><td><a href=#webvtt-timestamp-object>WebVTT Timestamp Object</a>
      <td><code>ProcessingInstruction</code> node whose <code title=dom-ProcessingInstruction-target>target</code> is "<code title="">timestamp</code>" and whose <code title=dom-ProcessingInstruction-data>data</code> is a <a href=#webvtt-timestamp>WebVTT timestamp</a> representing the value of the <a href=#webvtt-timestamp-object>WebVTT Timestamp Object</a>, with all optional components included, with one leading zero if the <var title="">hours</var> component is less than ten, and with no leading zeros otherwise.
-  </table><p><code>HTMLElement</code> nodes created as part of the mapping
-  described above must have their <code title=dom-Node-namespaceURI>namespaceURI</code> set to the
-  <a href=#html-namespace>HTML namespace</a>, and, if any classes apply to the
-  corresponding <a href=#webvtt-internal-node-object>WebVTT Internal Node Object</a>, must have a
-  <code title=attr-class>class</code> attribute set to the string
-  obtained by concatenating all those classes, each separated from the
-  next by a single U+0020 SPACE character.</p>
+  </table><p><code>HTMLElement</code> nodes created as part of the mapping described above must have their
+  <code title=dom-Node-namespaceURI>namespaceURI</code> set to the <a href=#html-namespace>HTML namespace</a>,
+  and, if the corresponding <a href=#webvtt-internal-node-object>WebVTT Internal Node Object</a> has any <a href="#webvtt-node-object's-applicable-classes" title="WebVTT
+  Node Object's applicable classes">applicable classes</a>, must have a <code title=attr-class>class</code> attribute set to the string obtained by concatenating all those
+  classes, each separated from the next by a single U+0020 SPACE character.</p>
 
   <p>The <code title=dom-Node-ownerDocument>ownerDocument</code>
   attribute of all nodes in the DOM tree must be set to the given
@@ -3185,6 +3215,9 @@
       <tr><td><a href=#webvtt-voice-object title="WebVTT Voice Object">WebVTT Voice Objects</a>
        <td><code title="">v</code>
 
+      <tr><td><a href=#webvtt-language-object title="WebVTT Language Object">WebVTT Language Objects</a>
+       <td><code title="">lang</code>
+
       <tr><td>Other elements (specifically, <a href=#list-of-webvtt-node-objects title="List of WebVTT Node Objects">Lists of WebVTT Node Objects</a>)
        <td>No explicit name.
 
@@ -3195,11 +3228,12 @@
    Objects</a> are considered as being in the namespace expressed
    as the empty string.</li>
 
-   <li><p>For the purposes of attribute selector matching, <a href=#webvtt-internal-node-object title="WebVTT Internal Node Object">WebVTT Internal Node
-   Objects</a> have no attributes, except for <a href=#webvtt-voice-object title="WebVTT Voice Object">WebVTT Voice Objects</a>, which
-   have a single attribute named "<code title="">voice</code>"
-   whose value is the value of the <a href=#webvtt-voice-object>WebVTT Voice
-   Object</a>.</li>
+   <li><p>For the purposes of attribute selector matching, <a href=#webvtt-internal-node-object title="WebVTT Internal Node
+   Object">WebVTT Internal Node Objects</a> have no attributes, except for <a href=#webvtt-voice-object title="WebVTT
+   Voice Object">WebVTT Voice Objects</a>, which have a single attribute named "<code title="">voice</code>" whose value is the value of the <a href=#webvtt-voice-object>WebVTT Voice Object</a>, and
+   <a href=#webvtt-language-object title="WebVTT Language Object">WebVTT Language Objects</a>, which have a single
+   attribute named "<code title="">lang</code>" whose value is the object's <a href="#webvtt-node-object's-applicable-language" title="WebVTT Node
+   Object's applicable language">applicable language</a></li>
 
    <li><p>For the purposes of class selector matching, <a href=#webvtt-internal-node-object title="WebVTT Internal Node Object">WebVTT Internal Node
    Objects</a> have the classes described as the <a href="#webvtt-node-object's-applicable-classes">WebVTT
@@ -3207,6 +3241,9 @@
    isn't especially well-defined, but the Selectors spec doesn't
    really give one much to go on here. -->
 
+   <li><p>For the purposes of the <code title=selector-lang>:lang()</code> pseudo-class, <a href=#webvtt-internal-node-object title="WebVTT Internal Node Object">WebVTT Internal Node Objects</a> have the language
+   described as the <a href="#webvtt-node-object's-applicable-language">WebVTT Node Object's applicable language</a>.</li>
+
    <li><p>For the purposes of ID selector matching, <a href=#list-of-webvtt-node-objects title="List
    of WebVTT Node Objects">Lists of WebVTT Node Objects</a> have
    the ID given by the cue's <a href=#text-track-cue-identifier>text track cue identifier</a>,
@@ -3378,7 +3415,10 @@
 
   <!-- Dates are only included for standards older than the Web, because the newer ones keep changing. -->
 
-  <dl><dt id=refsBIDI>[BIDI]</dt>
+  <dl><dt id=refsBCP47>[BCP47]</dt>
+   <dd><cite><a href=http://www.ietf.org/rfc/bcp/bcp47.txt>Tags for Identifying Languages; Matching of Language Tags</a></cite>, A. Phillips, M. Davis. IETF.</dd>
+
+   <dt id=refsBIDI>[BIDI]</dt>
    <dd><cite><a href=http://www.unicode.org/reports/tr9/>UAX #9: Unicode Bidirectional Algorithm</a></cite>, M. Davis. Unicode Consortium.</dd>
 
    <dt id=refsCSS>[CSS]</dt>

Received on Monday, 5 November 2012 21:04:02 UTC