ISSUE-341: ambiguous definition for determination of descendant region identifier
ambiguous definition for determination of descendant region identifier
- State:
- OPEN
- Product:
- TTML 1.0
- Raised by:
- Glenn Adams
- Opened on:
- 2014-08-27
- Description:
- Step 3 of the [association region] procedure in Section 9.3.2 is ambiguous if multiple descendants are associated with a region (possibly distinct).
Suggest changing from:
"if the element contains a descendant element that specifies a region attribute, then the element is associated with the region referenced by that attribute;"
to
"if the element contains a descendant element that specifies a region attribute, then the element is associated with the first region referenced by that attribute using a breadth-first pre-traversal search of descendant elements;" - Related Actions Items:
ACTION-404 on Glenn Adams to Add note to issue 341 to reflect his current thinking - due 2015-06-11, closed- Related emails:
- {minutes} TTWG Meeting 2016-06-09 (from nigel.megitt@bbc.co.uk on 2016-06-09)
- Re: {agenda} TTWG Meeting 2016-06-09 (from pal@sandflow.com on 2016-06-09)
- {agenda} TTWG Meeting 2016-06-09 (from nigel.megitt@bbc.co.uk on 2016-06-07)
- {agenda} TTWG Meeting 2016-05-26 (from nigel.megitt@bbc.co.uk on 2016-05-24)
- {agenda} TTWG Meeting 2016-05-19 (from nigel.megitt@bbc.co.uk on 2016-05-17)
- Re: {agenda} TTWG Meeting 2016-05-05 (from nigel.megitt@bbc.co.uk on 2016-05-04)
- {agenda} TTWG Meeting 2016-05-05 (from nigel.megitt@bbc.co.uk on 2016-05-03)
- Re: {agenda} TTWG Meeting 2016-04-28 (from nigel.megitt@bbc.co.uk on 2016-04-27)
- {agenda} TTWG Meeting 2016-04-28 (from nigel.megitt@bbc.co.uk on 2016-04-27)
- {agenda} TTWG Meeting 2016-04-21 (from nigel.megitt@bbc.co.uk on 2016-04-19)
- {agenda} TTWG Meeting 2016-04-14 (from nigel.megitt@bbc.co.uk on 2016-04-12)
- {agenda} TTWG Meeting 2016-04-07 (from nigel.megitt@bbc.co.uk on 2016-04-06)
- Re: {agenda} TTWG Meeting 2016-03-24 (from tai@irt.de on 2016-03-23)
- {agenda} TTWG Meeting 2016-03-24 (from nigel.megitt@bbc.co.uk on 2016-03-23)
- Re: {agenda} TTWG Meeting 2016-03-17 (from nigel.megitt@bbc.co.uk on 2016-03-17)
- {agenda} TTWG Meeting 2016-03-17 (from nigel.megitt@bbc.co.uk on 2016-03-15)
- {agenda} TTWG Meeting 2016-03-10 (from nigel.megitt@bbc.co.uk on 2016-03-08)
- {agenda} TTWG Meeting 2016-03-03 (from nigel.megitt@bbc.co.uk on 2016-03-01)
- {agenda} TTWG Meeting 2015-12-25 (from nigel.megitt@bbc.co.uk on 2016-02-23)
- {agenda} TTWG Meeting 2016-02-18 (from nigel.megitt@bbc.co.uk on 2016-02-16)
- {agenda} TTWG Meeting 2016-02-11 (from nigel.megitt@bbc.co.uk on 2016-02-09)
- {agenda} TTWG Meeting 2016-02-04 [30 minutes later than usual] (from nigel.megitt@bbc.co.uk on 2016-02-03)
- {agenda} TTWG Meeting 2016-01-28 (from nigel.megitt@bbc.co.uk on 2016-01-26)
- {agenda} TTWG Meeting 2016-01-21 (from nigel.megitt@bbc.co.uk on 2016-01-19)
- Re: {agenda} TTWG Meeting 2016-01-14 (from dronca@netflix.com on 2016-01-14)
- {agenda} TTWG Meeting 2016-01-14 (from nigel.megitt@bbc.co.uk on 2016-01-12)
- Re: {agenda} TTWG Meeting 2016-01-07 (from tmichel@w3.org on 2016-01-05)
- {agenda} TTWG Meeting 2016-01-07 (from nigel.megitt@bbc.co.uk on 2016-01-05)
- {agenda} TTWG Meeting 2015-12-17 (from nigel.megitt@bbc.co.uk on 2015-12-16)
- {agenda} TTWG Meeting 2015-12-10 (from nigel.megitt@bbc.co.uk on 2015-12-09)
- {agenda} TTWG Meeting 2015-12-03 (from nigel.megitt@bbc.co.uk on 2015-12-02)
- Re: {agenda} TTWG Meeting 2015-11-26 (from nigel.megitt@bbc.co.uk on 2015-11-26)
- Re: {agenda} TTWG Meeting 2015-11-26 (from tmichel@w3.org on 2015-11-25)
- {agenda} TTWG Meeting 2015-11-26 (from nigel.megitt@bbc.co.uk on 2015-11-25)
- {agenda} TTWG Meeting 2015-11-19 (from nigel.megitt@bbc.co.uk on 2015-11-18)
- {agenda} TTWG Meeting 2015-11-12 (from nigel.megitt@bbc.co.uk on 2015-11-11)
- {agenda} TTWG Meeting 2015-10-22 (from nigel.megitt@bbc.co.uk on 2015-10-21)
- Re: TTML2 anonymous inline region creation (from nigel.megitt@bbc.co.uk on 2015-10-21)
- Re: TTML2 anonymous inline region creation (from glenn@skynav.com on 2015-10-21)
- Re: TTML2 anonymous inline region creation (from glenn@skynav.com on 2015-10-21)
- RE: TTML2 anonymous inline region creation (from John.Birch@screensystems.tv on 2015-10-21)
- Re: TTML2 anonymous inline region creation (from glenn@skynav.com on 2015-10-21)
- RE: TTML2 anonymous inline region creation (from John.Birch@screensystems.tv on 2015-10-21)
- Re: TTML2 anonymous inline region creation (from glenn@skynav.com on 2015-10-20)
- Re: TTML2 anonymous inline region creation (from nigel.megitt@bbc.co.uk on 2015-10-20)
- Re: TTML2 anonymous inline region creation (from glenn@skynav.com on 2015-10-20)
- Re: TTML2 anonymous inline region creation (from glenn@skynav.com on 2015-10-20)
- TTML2 anonymous inline region creation (from nigel.megitt@bbc.co.uk on 2015-10-20)
- {agenda} TTWG Meeting 2015-10-15 (from nigel.megitt@bbc.co.uk on 2015-10-14)
- RE: {agenda} TTWG Meeting 2015-10-08 (from mdolan@newtbt.com on 2015-10-08)
- {agenda} TTWG Meeting 2015-10-08 (from nigel.megitt@bbc.co.uk on 2015-10-07)
- {agenda} TTWG Meeting 2015-10-01 (from nigel.megitt@bbc.co.uk on 2015-10-01)
- {agenda} TTWG Meeting 2015-09-24 (from nigel.megitt@bbc.co.uk on 2015-09-23)
- {agenda} TTWG Meeting 2015-09-17 (from nigel.megitt@bbc.co.uk on 2015-09-16)
- {agenda} TTWG Meeting 2015-09-03 (from nigel.megitt@bbc.co.uk on 2015-09-03)
- {agenda} TTWG Meeting 2015-08-27 (from nigel.megitt@bbc.co.uk on 2015-08-26)
- Re: {agenda} TTWG Meeting 2015-08-20 (from nigel.megitt@bbc.co.uk on 2015-08-19)
- RE: {agenda} TTWG Meeting 2015-08-20 (from mdolan@newtbt.com on 2015-08-19)
- {agenda} TTWG Meeting 2015-08-20 (from nigel.megitt@bbc.co.uk on 2015-08-19)
- {agenda} TTWG Meeting 2015-08-13 (from nigel.megitt@bbc.co.uk on 2015-08-12)
- {agenda} TTWG Meeting 2015-08-06 (from nigel.megitt@bbc.co.uk on 2015-08-05)
- {agenda} TTWG Meeting 2015-07-30 (from nigel.megitt@bbc.co.uk on 2015-07-29)
- Re: {agenda} TTWG Meeting 2015-07-23 (from glenn@skynav.com on 2015-07-23)
- {agenda} TTWG Meeting 2015-07-23 (from nigel.megitt@bbc.co.uk on 2015-07-22)
- {minutes} TTWG Meeting 2015-07-09 (from nigel.megitt@bbc.co.uk on 2015-07-09)
- {agenda} TTWG Meeting 2015-07-09 (from nigel.megitt@bbc.co.uk on 2015-07-08)
- Re: {agenda} TTWG Meeting 2015-07-02 (from nigel.megitt@bbc.co.uk on 2015-07-02)
- Re: {agenda} TTWG Meeting 2015-07-02 (from glenn@skynav.com on 2015-07-02)
- Re: {agenda} TTWG Meeting 2015-07-02 (from pal@sandflow.com on 2015-07-01)
- {agenda} TTWG Meeting 2015-07-02 (from nigel.megitt@bbc.co.uk on 2015-07-01)
- {agenda} TTWG Meeting 2015-06-11 (from nigel.megitt@bbc.co.uk on 2015-06-10)
- Re: Pruning of content elements based on the Intermediate Synchronic Document Construction (from nigel.megitt@bbc.co.uk on 2015-06-08)
- Re: Pruning of content elements based on the Intermediate Synchronic Document Construction (from tai@irt.de on 2015-06-08)
- Re: Pruning of content elements based on the Intermediate Synchronic Document Construction (from tai@irt.de on 2015-06-05)
- {minutes} TTWG Meeting 2015-06-04 (from nigel.megitt@bbc.co.uk on 2015-06-04)
- {agenda} TTWG Meeting 2015-06-04 (from nigel.megitt@bbc.co.uk on 2015-06-03)
- {agenda} TTWG Meeting 4/9/2014 (from nigel.megitt@bbc.co.uk on 2014-09-03)
- ISSUE-341: ambiguous definition for determination of descendant region identifier [TTML 1.0] (from sysbot+tracker@w3.org on 2014-08-27)
Related notes:
I would suggest that the element is duplicated for each region referenced by a descendant element.
This allows for example:
<style id="div_style" tts:backgroundColor="blue"/>
...
<div style="div_style">
<p region="r1">Hello</p>
<p region="r2">Goodbye</p>
</div>
to resolve effectively to:
<div tts:backgroundColor="blue" region="r1"><p>Hello</p></div>
<div tts:backgroundColor="blue" region="r2"><p>Goodbye</p></div>
Otherwise with the proposal in the Description above, the second p would be drawn without a background colour, which is non-obvious to the author.
As well as duplicating styles this would also apply the same metadata from the div to every p, in case that's used somehow - copyright, lang or role could be examples I suppose.
An additional issue that was discussed on the TTWG mailing list and discussed in the meeting on the 4th of June 2015:
The current algorithm for the construction of an Intermediate Synchronic Document would result in untintended pruning of content. Example:
Given the following simplified TTML document:
<tt>
<head>
<layout>
<region id="divRegion" ...../>
<region id="paragraphRegion" ...../>
</layout>
</head>
<body>
<div region="divRegion">
<p region="paragraphRegion" begin="00:00:00.000" end="00:00:02.000" >Hello world!</p>
</div>
</body>
</tt>
The corresponding ISD for the interval [0s, 2s) would look like this:
<tt>
<head>
<layout>
<region id="divRegion" ...../>
<region id="paragraphRegion" ...../>
</layout>
</head>
</tt>
Before I can fully resolve my understanding of the intended semantics, I believe we need to determine which of the following semantics apply when @region is specified on an element A and one of its descendant elements D and the two specified regions, R(A) and R(D), are different:
1. R(D) (temporarily) OVERRIDES the region on A, forcing A to be selected into R(D); in this case, D is not selected when evaluating R(A), but A is selected when evaluating R(D): thus D is selected for R(D), but not selected for R(A)
2. R(A) (temporarily) OVERRIDES the region on D, forcing D to be selected into R(A); in this case, D is selected when evaluating R(A), but A is not selected when evaluating R(D): thus D is selected for R(A), but not selected for R(D)
3. R(D) DOES NOT OVERRIDE the region on A; in this case, D is not selected when evaluating R(A), and A is not selected when evaluating R(D): thus D is never selected
4. R(A) DOES NOT OVERRIDE the region on D; in this case, A is not selected when evaluating R(D), and D is not selected when evaluating R(A): thus D is never selected
Of these four options, I believe #1, R(D) overrides R(A), is the most intuitive and useful choice.
Comment duplicated in the equivalent issue https://github.com/w3c/ttml1/issues/194
Display change log