Skip to content

Commit 3ef36be

Browse files
committed
improved 'pause' collapsing and adjoining definitions. Added example for user-agent stlyesheet override of prosodic break strength.
1 parent 4e7ea85 commit 3ef36be

2 files changed

Lines changed: 146 additions & 133 deletions

File tree

css3-speech/Overview.html

Lines changed: 72 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -714,7 +714,7 @@ <h2 id=speaking-props><span class=secno>5. </span>Speaking properties:
714714
the aural rendering. However, the pauses, cues, and rests of the
715715
ancestor element remain "deactivated" in the aural dimension, and
716716
therefore do not contribute to the <a href="#collapsing">collapsing of
717-
pauses</a> or additive behavior of adjacent rests.</p>
717+
pauses</a> or additive behavior of adjoining rests.</p>
718718
<!--
719719
Descendant elements do not get rendered either;
720720
this behavior cannot be overridden by setting the 'speakability' property on the descendants.
@@ -948,21 +948,20 @@ <h2 id=pause-props><span class=secno>6. </span>Pause properties: &lsquo;<a
948948
rel=biblioentry>[CSS3VAL]<!--{{!CSS3VAL}}--></a>. Only positive values
949949
are allowed.
950950

951-
<dt><strong>none</strong>, <strong>x-weak</strong>, <strong>weak</strong>,
951+
<dt> <strong>none</strong>
952+
953+
<dd> Equivalent to 0ms (no prosodic break in the speech output). This
954+
value can be used to inhibit a prosodic break which the processor would
955+
otherwise produce.
956+
957+
<dt> <strong>x-weak</strong>, <strong>weak</strong>,
952958
<strong>medium</strong>, <strong>strong</strong>, and
953959
<strong>x-strong</strong>
954960

955-
<dd>These values can be used to indicate the prosodic strength of the
956-
break in speech output. The synthesis processor may insert a pause as
957-
part of its implementation of the prosodic break. The value "none"
958-
indicates that no prosodic break boundary should be output, and can be
959-
used to inhibit a prosodic break which the processor would otherwise
960-
produce. The other values indicate monotonically non-decreasing
961-
(conceptually increasing) break strength between elements. "x-weak" and
962-
"x-strong" are mnemonics for "extra weak" and "extra strong",
963-
respectively. The stronger boundaries are typically accompanied by
964-
pauses. The breaks between paragraphs are typically much stronger than
965-
the breaks between words within a sentence.
961+
<dd> Expresses the pause by the strength of the prosodic break in speech
962+
output. The exact time is implementation-dependent. The values indicate
963+
monotonically non-decreasing (conceptually increasing) break strength
964+
between elements.
966965
</dl>
967966

968967
<table class=propdef summary="name: syntax">
@@ -975,10 +974,10 @@ <h2 id=pause-props><span class=secno>6. </span>Pause properties: &lsquo;<a
975974
<tr>
976975
<td><em>Value:</em>
977976

978-
<td>[ &lt;&lsquo;<a href="#pause-before"><code
977+
<td>&lt;&lsquo;<a href="#pause-before"><code
979978
class=property>pause-before</code></a>&rsquo;&gt; || &lt;&lsquo;<a
980979
href="#pause-after"><code
981-
class=property>pause-after</code></a>&rsquo;&gt; ] | inherit
980+
class=property>pause-after</code></a>&rsquo;&gt;
982981

983982
<tr>
984983
<td><em>Initial:</em>
@@ -1031,17 +1030,33 @@ <h2 id=pause-props><span class=secno>6. </span>Pause properties: &lsquo;<a
10311030
</pre>
10321031
</div>
10331032

1033+
<p> The default strengths of prosodic breaks for specific elements are
1034+
defined by the user-agent stylesheet, and can be overridden by authored
1035+
styles, as demonstrated by the example below.
1036+
1037+
<div class=example>
1038+
<p>Example:</p>
1039+
1040+
<pre>
1041+
p { pause: none } /* pause-before: none; pause-after: none */
1042+
</pre>
1043+
</div>
1044+
1045+
<p class=note> Note that stronger content boundaries are typically
1046+
accompanied by pauses. For example, the breaks between paragraphs are
1047+
typically much more substantial than the breaks between words within a
1048+
sentence.
1049+
10341050
<h3 id=collapsing><span class=secno>6.1. </span>Collapsing pauses</h3>
10351051

10361052
<p>The pause defines the minimum distance of the aural "box" to the aural
1037-
"boxes" before and after it. Adjacent pauses should be merged by selecting
1038-
the strongest named break or the longest absolute time interval. Thus
1039-
"strong" is selected when comparing "strong" and "weak", while "1s" is
1040-
selected when comparing "1s" and "250ms". We say that such pauses <dfn
1041-
id=collapse>collapse</dfn>. A combination of a named break and time
1042-
duration is treated additively.
1053+
"boxes" before and after it. Adjoining pauses are merged by selecting the
1054+
strongest named break and the longest absolute time interval. Thus
1055+
"strong" is selected when comparing "strong" and "weak", "1s" is selected
1056+
when comparing "1s" and "250ms", and "strong" and "250ms" take effect
1057+
additively when comparing "strong" and "250ms".
10431058

1044-
<p>The following pauses collapse:
1059+
<p>The following pauses are adjoining:
10451060

10461061
<ol>
10471062
<li>The &lsquo;<a href="#pause-after"><code
@@ -1070,41 +1085,19 @@ <h3 id=collapsing><span class=secno>6.1. </span>Collapsing pauses</h3>
10701085
href="#pause-after"><code class=property>pause-after</code></a>&rsquo; of
10711086
an aural "box", if the the "box" has a &lsquo;<a
10721087
href="#voice-duration"><code
1073-
class=property>voice-duration</code></a>&rsquo; of "0ms", no &lsquo;<a
1088+
class=property>voice-duration</code></a>&rsquo; of "0ms" and no &lsquo;<a
10741089
href="#rest-before"><code class=property>rest-before</code></a>&rsquo; or
10751090
&lsquo;<a href="#rest-after"><code
1076-
class=property>rest-after</code></a>&rsquo;, no &lsquo;<a
1091+
class=property>rest-after</code></a>&rsquo; and no &lsquo;<a
10771092
href="#cue-before"><code class=property>cue-before</code></a>&rsquo; or
10781093
&lsquo;<a href="#cue-after"><code
1079-
class=property>cue-after</code></a>&rsquo; and no content.
1094+
class=property>cue-after</code></a>&rsquo;, or if the the "box" has no
1095+
rendered content at all (see &lsquo;<a href="#speak"><code
1096+
class=property>speak</code></a>&rsquo;).
10801097
</ol>
10811098

1082-
<p>The &lsquo;<a href="#pause-after"><code
1083-
class=property>pause-after</code></a>&rsquo; of an element is always
1084-
adjoining to the &lsquo;<a href="#pause-before"><code
1085-
class=property>pause-before</code></a>&rsquo; of its next sibling.
1086-
1087-
<p>The &lsquo;<a href="#pause-before"><code
1088-
class=property>pause-before</code></a>&rsquo; an element is adjoining to
1089-
its first child's &lsquo;<a href="#pause-before"><code
1090-
class=property>pause-before</code></a>&rsquo;, if the element has no
1091-
&lsquo;<a href="#cue-before"><code
1092-
class=property>cue-before</code></a>&rsquo; nor &lsquo;<a
1093-
href="#rest-before"><code class=property>rest-before</code></a>&rsquo;.
1094-
1095-
<p>The &lsquo;<a href="#pause-after"><code
1096-
class=property>pause-after</code></a>&rsquo; of an element is adjoining to
1097-
its last child's &lsquo;<a href="#pause-after"><code
1098-
class=property>pause-after</code></a>&rsquo;, if the element has no
1099-
&lsquo;<a href="#rest-after"><code
1100-
class=property>rest-after</code></a>&rsquo; or &lsquo;<a
1101-
href="#cue-after"><code class=property>cue-after</code></a>&rsquo;.
1102-
1103-
<p>An element's own pauses are adjoining if the &lsquo;<a
1104-
href="#voice-duration"><code
1105-
class=property>voice-duration</code></a>&rsquo; property is zero, and it
1106-
has no rest, and it does not contain any content, and all of its
1107-
children's pauses (if any) are adjoining.
1099+
<p>A collapsed pause is considered adjoining to another pause if any of its
1100+
component pauses is adjoining to that pause.
11081101

11091102
<p class=note> Note that &lsquo;<a href="#pause"><code
11101103
class=property>pause</code></a>&rsquo; has been moved from between the
@@ -1224,27 +1217,28 @@ <h2 id=rest-props><span class=secno>7. </span>Rest properties: &lsquo;<a
12241217
rel=biblioentry>[CSS3VAL]<!--{{!CSS3VAL}}--></a>. Only positive values
12251218
are allowed.
12261219

1227-
<dt><strong>none</strong>, <strong>x-weak</strong>, <strong>weak</strong>,
1220+
<dt> <strong>none</strong>
1221+
1222+
<dd> Equivalent to 0ms (no prosodic break in the speech output). This
1223+
value can be used to inhibit a prosodic break which the processor would
1224+
otherwise produce.
1225+
1226+
<dt> <strong>x-weak</strong>, <strong>weak</strong>,
12281227
<strong>medium</strong>, <strong>strong</strong>, and
12291228
<strong>x-strong</strong>
12301229

1231-
<dd>These values can be used to indicate the prosodic strength of the
1232-
break in speech output. The synthesis processor may insert a rest as part
1233-
of its implementation of the prosodic break. The value "none" indicates
1234-
that no prosodic break boundary should be output, and can be used to
1235-
inhibit a prosodic break which the processor would otherwise produce. The
1236-
other values indicate monotonically non-decreasing (conceptually
1237-
increasing) break strength between words. The stronger boundaries are
1238-
typically accompanied by rests. "x-weak" and "x-strong" are mnemonics for
1239-
"extra weak" and "extra strong", respectively.
1230+
<dd> Expresses the rest by the strength of the prosodic break in speech
1231+
output. The exact time is implementation-dependent. The values indicate
1232+
monotonically non-decreasing (conceptually increasing) break strength
1233+
between elements.
12401234
</dl>
12411235

12421236
<p>As opposed to <a href="#pause-props">pause properties</a>, the rest is
12431237
inserted between the element's content and any &lsquo;<a
12441238
href="#cue-before"><code class=property>cue-before</code></a>&rsquo; or
12451239
&lsquo;<a href="#cue-after"><code
1246-
class=property>cue-after</code></a>&rsquo; content. Adjacent rests are
1247-
treated additively.
1240+
class=property>cue-after</code></a>&rsquo; content. Adjoining rests are
1241+
treated additively, and do not collapse.
12481242

12491243
<table class=propdef summary="name: syntax">
12501244
<tbody>
@@ -1256,10 +1250,10 @@ <h2 id=rest-props><span class=secno>7. </span>Rest properties: &lsquo;<a
12561250
<tr>
12571251
<td><em>Value:</em>
12581252

1259-
<td>[ &lt;&lsquo;<a href="#rest-before"><code
1253+
<td>&lt;&lsquo;<a href="#rest-before"><code
12601254
class=property>rest-before</code></a>&rsquo;&gt; || &lt;&lsquo;<a
12611255
href="#rest-after"><code
1262-
class=property>rest-after</code></a>&rsquo;&gt; ] | inherit
1256+
class=property>rest-after</code></a>&rsquo;&gt;
12631257

12641258
<tr>
12651259
<td><em>Initial:</em>
@@ -1411,9 +1405,9 @@ <h2 id=cue-props><span class=secno>8. </span>Cue properties: &lsquo;<a
14111405
<dt><strong>&lt;uri&gt;</strong>
14121406

14131407
<dd>The URI must designate an auditory icon resource. If the URI resolves
1414-
to something other than an audio file, such as an image, the resource
1415-
should be ignored and the property treated as if it had the value
1416-
&lsquo;<code class=property>none</code>&rsquo;.
1408+
to something other than an audio file, such as an image, the resource is
1409+
ignored and the property treated as if it had the value &lsquo;<code
1410+
class=property>none</code>&rsquo;.
14171411

14181412
<dt><strong>none</strong>
14191413

@@ -1480,10 +1474,9 @@ <h2 id=cue-props><span class=secno>8. </span>Cue properties: &lsquo;<a
14801474
<tr>
14811475
<td><em>Value:</em>
14821476

1483-
<td>[ &lt;&lsquo;<a href="#cue-before"><code
1477+
<td>&lt;&lsquo;<a href="#cue-before"><code
14841478
class=property>cue-before</code></a>&rsquo;&gt; || &lt;&lsquo;<a
14851479
href="#cue-after"><code class=property>cue-after</code></a>&rsquo;&gt;
1486-
] | inherit
14871480

14881481
<tr>
14891482
<td><em>Initial:</em>
@@ -1674,7 +1667,7 @@ <h2 id=cue-props><span class=secno>8. </span>Cue properties: &lsquo;<a
16741667
</tr>
16751668
<tr>
16761669
<td><em>Value:</em></td>
1677-
<td>[ &lt;'mark-before'&gt; || &lt;'mark-after'&gt; ]</td>
1670+
<td>&lt;'mark-before'&gt; || &lt;'mark-after'&gt;</td>
16781671
</tr>
16791672
<tr>
16801673
<td><em>Initial:</em></td>
@@ -2613,8 +2606,7 @@ <h2 class=no-num id=property-index>Appendix B &mdash; Property index</h2>
26132606
<tr valign=baseline>
26142607
<td><a class=property href="#cue">cue</a>
26152608

2616-
<td>[ &lt;&lsquo;cue-before&rsquo;&gt; ||
2617-
&lt;&lsquo;cue-after&rsquo;&gt; ] | inherit
2609+
<td>&lt;&lsquo;cue-before&rsquo;&gt; || &lt;&lsquo;cue-after&rsquo;&gt;
26182610

26192611
<td>N/A (see individual properties)
26202612

@@ -2659,8 +2651,8 @@ <h2 class=no-num id=property-index>Appendix B &mdash; Property index</h2>
26592651
<tr valign=baseline>
26602652
<td><a class=property href="#pause">pause</a>
26612653

2662-
<td>[ &lt;&lsquo;pause-before&rsquo;&gt; ||
2663-
&lt;&lsquo;pause-after&rsquo;&gt; ] | inherit
2654+
<td>&lt;&lsquo;pause-before&rsquo;&gt; ||
2655+
&lt;&lsquo;pause-after&rsquo;&gt;
26642656

26652657
<td>N/A (see individual properties)
26662658

@@ -2722,8 +2714,8 @@ <h2 class=no-num id=property-index>Appendix B &mdash; Property index</h2>
27222714
<tr valign=baseline>
27232715
<td><a class=property href="#rest">rest</a>
27242716

2725-
<td>[ &lt;&lsquo;rest-before&rsquo;&gt; ||
2726-
&lt;&lsquo;rest-after&rsquo;&gt; ] | inherit
2717+
<td>&lt;&lsquo;rest-before&rsquo;&gt; ||
2718+
&lt;&lsquo;rest-after&rsquo;&gt;
27272719

27282720
<td>N/A (see individual properties)
27292721

@@ -2992,9 +2984,6 @@ <h2 class=no-num id=index>Appendix C &mdash; Index</h2>
29922984

29932985
<li>border, <a href="#border-def" title=border><strong>#</strong></a>
29942986

2995-
<li>collapse, <a href="#collapse" title=collapse><strong>6.1.</strong></a>
2996-
2997-
29982987
<li>content, <a href="#content-def" title=content><strong>#</strong></a>
29992988

30002989
<li>cue, <a href="#cue" title=cue><strong>8.</strong></a>
@@ -3320,7 +3309,7 @@ <h2 class=no-num id=changes>Appendix F &mdash; Changes from previous draft</h2>
33203309
<ul>
33213310
<li>Adjusted the [initial] value for shorthand properties, to be
33223311
consistent with other CSS specifications (i.e. "see individual
3323-
properties")
3312+
properties"), and removed the erroneous "inherit" value.
33243313

33253314
<li>Fixed the [initial] values for &lsquo;<a href="#pause"><code
33263315
class=property>pause</code></a>&rsquo; and &lsquo;<a href="#rest"><code
@@ -3347,6 +3336,8 @@ <h2 class=no-num id=changes>Appendix F &mdash; Changes from previous draft</h2>
33473336
<li>Cleaned-up the list of module dependencies, and removed redundant
33483337
"module dependencies" section.
33493338

3339+
<li>Improved the pause collapsing prose, removed redundant paragraphs.
3340+
33503341
<li>Fixed typos and made other minor edits.
33513342
</ul>
33523343
<!-- For reference only, changes in previous draft: -->

0 commit comments

Comments
 (0)