- From: Glenn Adams <glenn@skynav.com>
- Date: Fri, 8 Jan 2016 11:56:03 -0700
- To: Nigel Megitt <nigel.megitt@bbc.co.uk>
- Cc: TTWG <public-tt@w3.org>
- Message-ID: <CACQ=j+f7NPqenROKhckW7P4zhbpeL4vU7mr8xwnFyMW5e69EJQ@mail.gmail.com>
On Fri, Jan 8, 2016 at 10:56 AM, Nigel Megitt <nigel.megitt@bbc.co.uk> wrote: > Thanks Glenn, > > This helps answer one of my questions from yesterday's meeting. > > It is tempting to cautiously suggest that we could define the behaviour > for a presentation processor, be it a single profile or multiple profile > IMSC processor, that causes it to exhibit the desired behaviour regardless > of which profile the document actually conforms to, making the decision > process moot in that case. > > In other words: > * processors that support IMSC-I (IPIP) will always successfully process > conforming IMSC-I documents > * processors that support IMSC-T (TPIP) will always successfully > process conforming IMSC-T documents > * processors that support both IMSC-I and IMSC-T (MPIP) will always > successfully process conforming IMSC-I documents and conforming IMSC-T > documents without needing to know which they are in advance of processing > > I'm not sure how long the list will end up being, but for the examples > you've provided here are some potential rules that would hopefully allow > implementations to behave desirably, i.e. to make every effort to present > content in the intended way, inline below: > > From: Glenn Adams <glenn@skynav.com> Date: Thursday, 7 January 2016 19:19 > > Since folks have wondered what type of semantic processing may need to > discriminate on which profile applies, I have collected a small set of > examples that apply to presentation processing without any consideration of > verification/validation. At least one implementation (TTPE) implements code > to handle these cases: > > - nested tt:div > - IMSC-T supports nested div, while IMSC-I does not; an MPIP needs > to respect nesting for the former, but ignore (or collapse divs) or abort > for the latter; > > An MPIP or IPIP encountering a div with an image attribute and one or more > descendant child div, p, span or br elements shall process the image > attribute and may ignore the div's content and child elements. > An MPIP or IPIP encountering a div D with an image attribute where D has a > parent div element may ignore D. > > > - tts:displayAlign > - IMSC-T supports all values, while IMSC-I prohibits its use; so an > MPIP would need to use displayAlign when processing the former, but ignore > or abort for the latter; > > An MPIP or IPIP may ignore any specified value of displayAlign when > presenting images. > > (in this case I don't think the value of displayAlign has any impact > anyway since the image is required to be equal in size to the region) > > > - tts:padding > - IMSC-T supports padding on region, while IMSC-I does not; an MPIP > needs to respect the former, and ignore (or abort) the latter > > An MPIP or IPIP encountering an image attribute on a div whose applicable > region has a non-zero tts:padding style attribute on any edge shall ignore > the padding when presenting the image. > > > - tts:writingMode > - IMSC-T supports all values, while IMSC-I prohibits vertical > modes; so an an MPIP would need to enable all modes for the former, but > ignore or abort if vertical mode is used with the latter; > > An MPIP or IPIP encountering an image attribute on a div whose applicable > region has a vertical writing mode (as enumerated by the > #writingMode-vertical feature in TTML1) shall present the image without > rotation or reflection. > > > MPIP = Multiple-Profile IMSC Processor > IPIP = Image Profile IMSC Processor > TPIP = Text Profile IMSC Processor > > Might this be a helpful approach? Reasons I can think of why it might not > be helpful are: > 1) it could invalidate existing implementations > 2) the list may be so long that we cannot complete this exercise sensibly > > In many cases the only scenario I can construct where an MPIP might have > to worry about these rules is one where it is processing a non-conformant > document instance, i.e. one that would be rejected by validating > processors for either profile. Perhaps we would be able to limit the list > to scenarios that could reasonably be encountered by valid documents. > > Thoughts welcome, positive or negative. > Your proposal is merely using a heuristic, inline mechanism for determining whether image or text profile applies; namely, you have substituted "when presenting an image (during runtime processing)" with "determine which profile applies (in advance)". In your modified approach, one might end up processing images that appear in a document that purports to use the Text profile. Furthermore, your approach would preclude the presentation processor from also performing content verification/validation, either inline or as a preliminary step. Both types of implementation are permitted by IMSC, since (1) it leaves the details of processing non-conforming content to the implementation, and (2) it leaves the decision of whether to verify/validate content to the implementation. In any case, your alternative approach is not equivalent to an a priori resolution of the applicable profile, as indicated above. > (I need more time to look at the proposed text in the other related email > – I just got to this one first) > > Nigel > > > > ---------------------------- > > http://www.bbc.co.uk > This e-mail (and any attachments) is confidential and may contain personal > views which are not the views of the BBC unless specifically stated. > If you have received it in error, please delete it from your system. > Do not use, copy or disclose the information in any way nor act in > reliance on it and notify the sender immediately. > Please note that the BBC monitors e-mails sent or received. > Further communication will signify your consent to this. > > --------------------- >
Received on Friday, 8 January 2016 18:56:52 UTC