14:00:49 RRSAgent has joined #tt 14:00:49 logging to http://www.w3.org/2017/07/27-tt-irc 14:00:51 RRSAgent, make logs public 14:00:51 Zakim has joined #tt 14:00:53 Zakim, this will be TTML 14:00:53 ok, trackbot 14:00:54 Meeting: Timed Text Working Group Teleconference 14:00:54 Date: 27 July 2017 14:01:00 scribe: nigel 14:01:03 Regrets: Dae 14:02:23 Present: Andreas, MIke, Nigel 14:02:26 Chair: Nigel 14:02:37 s/Ike/ike 14:05:31 Present+ Thierry 14:05:38 Present+ Pierre 14:06:07 Regrets+ Glenn 14:06:13 Topic: This meeting 14:07:11 Nigel: Not much for TPAC, there's the TAG meeting to discuss, as far as I know there's not 14:07:56 .. been much activity on WebVTT or IMSC. We might discuss the issue recently raised about 14:08:14 .. TTML1 including things defined in the TT namespace by other specs. 14:08:32 .. We published the HDR in PNG Note. 14:09:07 .. Any thing anyone particularly wants to cover, or "other business"? 14:09:12 group: [silence] 14:09:29 Topic: TAG Report/CSS styling equivalents of TTML2 and IMSC features 14:10:14 Nigel: I sent a summary of yesterday's meeting to the reflector yesterday. Getting an hour 14:10:21 .. of TAG time to discuss TTML2 was quite a luxury. 14:11:48 atai has joined #tt 14:12:08 .. One of the key things is a recommendation to base TTML2 styling semantics normatively 14:12:28 .. on CSS where possible, and it's acceptable in W3C for a Recommendation to reference 14:13:05 .. normatively another spec in CR. CSSWG publishes annual snapshots of what they consider 14:13:56 .. stable and the recommendation is to use the most recent one of those as the basis. 14:14:58 Pierre: It's strange because things can change after the reference has been made. 14:15:59 Thierry: It's been this way for a while. I think the snapshots all point to CRs, but it is still 14:16:06 .. possible that things could be removed from those CRs. 14:18:05 q+ 14:18:55 Mike: It's important to reference with stable URLs. 14:19:10 Nigel: All the documents on /TR have dated URLs, so they are stable and persistent. 14:19:14 Thierry: [confirms this] 14:19:40 Nigel: From a personal perspective I don't think this is a very consistent message - the 14:19:52 .. CSS specs that are stuck in CR are there because the test suites are not complete, but 14:21:02 .. we are being encouraged to reference them because the semantics are better defined, 14:21:09 .. even though interoperability has not been demonstrated. 14:21:23 .. The counter-argument is that if we don't move with the times we will be left behind, 14:21:32 .. and the times are very much moving away from XSL-FO towards CSS. 14:21:36 ack atai 14:22:09 Andreas: Note that things do change in CR - look at TTML1 for example. 14:22:46 Nigel: That was the main action for us. The other was very positive, that they agreed that 14:22:57 .. the styling requirements for subtitles and captions should be met by CSS. 14:23:21 .. It turns out that the CSSWG is meeting in Paris next week and they've invited me to 14:23:28 .. join remotely some time on Friday next week. 14:24:24 .. The idea is that I relay the TAG's message and hopefully decide on some actions resulting, 14:24:37 .. so that when I invite CSSWG to a joint meeting probably on the Friday of TPAC (to avoid 14:24:50 .. clashing with the AC) that meeting can be a progress follow-up rather than a kick-off. 14:25:15 Pierre: Thanks Nigel for doing this - it is a step in the right direction. 14:25:28 .. We now need to convince the folk from CSS. 14:26:29 Nigel: Yes! Hopefully the CSS Requirements wiki will help. You may have noticed that 14:26:45 .. I didn't try to map ipd, bpd, origin and position, and that was because I think it depends 14:28:02 .. on the chosen layout used in CSS. If anyone wants to describe the layout requirements 14:28:27 .. and map them to CSS layout, that would be really helpful. Last time we discussed this 14:28:34 .. I think Pierre said "flex" was the best way. 14:28:48 Pierre: Specifically to align divs and other block level elements, yes. 14:29:33 Nigel: Is there already work we can effectively copy across, saying "here's the layout 14:29:49 .. algorithm and in that algorithm this is how ipd, bpd, origin and position are mapped"? 14:31:15 Pierre: Yes. Before spending a lot of time crafting a proposal, I'd like to know we have 14:31:36 .. agreement to work alongside CSS. 14:32:16 Nigel: I think we can save a lot of time if we already know of a good layout mapping 14:32:30 .. and can remove a topic for discussion because the layout requirements are already met. 14:32:38 .. Or if they are not met, then we need to highlight that. 14:32:46 .. I'm asking for help really in completing that part of the wiki page. 14:33:04 Pierre: I think flex works for the root container, but I need to go back and check it exactly. 14:33:20 .. Flex is used in imsc.js for positioning the root container in the page and also for 14:33:39 .. displayAlign. That's really where it's not possible to emulate displayAlign other than using flex. 14:34:27 Nigel: Do you put each div and p in a separate flex box? 14:34:41 Pierre: Just the div, it doesn't matter for p because the flex controls the flow of all block 14:34:43 .. level elements. 14:34:44 pal has joined #tt 14:35:38 -> https://github.com/sandflow/imscJS/blob/master/src/main/js/html.js IMSC.JS code 14:36:01 Pierre: Around line 465 shows how displayAlign is turned into flex. It's really straightforward. 14:36:26 Nigel: How do you do positioning? 14:36:45 Pierre: The top left is positioned absolutely. Origin and extent are dealt with as absolute 14:36:48 .. positioning in pixels. 14:37:09 Nigel: That's a start, thank you - I am not sure how things like ipd and bpd fit into that. 14:37:14 Pierre: I haven't tried that, I don't know. 14:37:56 Nigel: Those were the main points. I did also cover the issue of TextTrackCues and the 14:38:46 .. problem that we've had, and they gave some pointers there, like talking to the HTMLWG 14:39:04 .. and making sure there are issues raised against the browsers that don't support 14:39:11 .. direct instantiation of TextTrackCue. 14:39:26 Andreas: What I need to do is check with the TPAC2016 breakout session participants on 14:39:39 .. how to use the WICG to come to a solution, and I plan to do this before TPAC, hopefully 14:39:58 .. in the next month. That's not necessarily something for the TTWG for the moment but 14:40:12 .. its useful possibly to follow that discussion. That's the missing action from my side and 14:40:18 .. how I imagine the next steps on this topic. 14:40:57 Nigel: While we're on the topic of other groups, I've been invited to the horizontal review 14:41:07 .. session of the Privacy WG later today. 14:41:50 .. Thierry, you've done some work on the self-review questionnaire? 14:42:00 Thierry: Yes I sent it to Glenn and Nigel for review so its still pending. 14:46:50 Nigel: [reads through] That all looks fine, I'll forward to the reflector. 14:48:07 Mike: There was IETF feedback on an IANA media registration unrelated to TTML that XML 14:49:16 .. that permits foreign namespace content could undo some of those provisions. 14:49:21 atai has joined #tt 14:49:28 Nigel: The draft form response is at: 14:49:42 -> https://lists.w3.org/Archives/Public/public-tt/2017Jul/0066.html Draft Security and Privacy Questionnaire response for TTML2 14:49:51 Mike: I'll take a look at that offline and post any comments. 14:50:19 Nigel: Thanks, reviews appreciated. 14:50:35 Topic: TTML1 & TTML2 issues, actions, PRs, editorial actions etc 14:50:55 -> https://github.com/w3c/ttml1/issues/251 Use of attributes in TTML namespace but NOT defined in TTML1 #251 14:51:24 s/comments./comments. By the way all your answers seem fine to me - that was just a general comment. 14:52:25 Nigel: I think the question is if anything defined in the TT namespace is permitted 14:52:36 .. according to the grammar of TTML1, in a TTML1 document instance. 14:52:51 Andreas: Not only that but also who is allowed to define things in the TT namespace. 14:53:38 Nigel: I take the view that the TT namespace can only be changed by us. 14:53:50 Andreas: There are two points: one is where the syntax and grammar is defined, which 14:54:03 .. is testable for conformance. In this respect it doesn't matter where the attribute is 14:54:14 .. defined in the TT Style namespace for example. On the other hand the semantic meaning 14:54:26 .. and where the attribute is defined is a different matter. 14:54:41 .. My question is more just for the syntax on testing and validity conformance if it would be 14:54:52 .. an error to have tts:foo or whatever and if it is valid against this grammar. 14:55:28 Mike: We discussed this a couple of months ago. 14:55:41 Nigel: Did we? I thought we discussed foreign namespace stuff? 14:55:45 Pierre: We discussed elements. 14:55:59 Mike: We dismissed attributes because we were clear about it, so it was a short discussion. 14:56:12 .. I'm not sure how we got here, can someone help? 14:56:36 Andreas: As Pierre asked, it just says "{any attribute in TT Style namespace}" but it doesn't 14:56:51 .. define where the contents of that namespace are defined. I cannot find any specification 14:57:01 .. text that says that. 14:57:53 Nigel: In ยง5.1: https://www.w3.org/TR/ttml1/#vocabulary-namespaces 14:58:04 .. it says "All TTML Namespaces are mutable [NSState]; all undefined names in these namespaces are reserved for future standardization by the W3C." 14:58:45 q+ 14:58:58 Nigel: This closes down part of the problem space, about who can define, but it doesn't 14:59:13 .. explain if TTML2 defined style attributes in the TT Style namespace are included in a 14:59:18 .. TTML1 document instance. 15:00:04 Pierre: There are two orthogonal things: who gets to define new attributes in the tts namespace, 15:00:24 .. and what is the behaviour of TTML1 parsers when they encounter attributes in the tts 15:00:44 .. namespace if they do not know them. The phrase "any attribute in TT style namespace" 15:01:01 .. can be interpreted narrowly as just in this specification or broadly as anything defined 15:01:11 .. anywhere in the tts namespace. That's how I read it for what it's worth. 15:01:24 Andreas: I agree with that interpretation. The two things need to be separated. I also put 15:01:41 .. this question in the tracker because it relates to IMSC and how IMSC attributes are handled, 15:01:56 .. and I asked myself if IMSC and TTML have different strategies for this. As I read it an 15:02:14 .. IMSC processor needs to at least accept any attribute in the itts or any other namespace 15:02:27 .. defined by IMSC, so the current 1.0.1 additions would not break any IMSC processor. 15:02:42 .. I wondered if that interpretation is the same as in TTML1 that any TTML1 processor 15:02:54 .. shall not stop processing when it encounters an attribute in the TTML namespace that 15:03:05 .. it does not recognise. Of course it would have no meaning but it would be allowed 15:03:11 .. syntactically. 15:03:40 Nigel: That's interesting - were you thinking about TTML1 processors dealing with 15:03:44 .. TTML2 document instances? 15:04:01 Andreas: Yes partly, and there are other constellations where this comes into play. IMSC 15:04:21 .. doesn't allow any TTML namespace attributes but it does allow any itts or ittp namespace 15:04:37 .. attributes. Then what happens if an IMSC processor encounters a TTML document with 15:04:48 .. syntax for which support is not required by IMSC? 15:05:25 .. This is more about standard conformance of documents. Then the question is how 15:05:36 .. should a processor handle a document that may not conform to the grammar. 15:05:49 .. If you have the position that a non-conformant document is allowed to stop processing 15:06:12 .. because of its non-conformance, that may be implemented in some places. 15:06:38 Mike: I agree with that. Then what's the concern? It arguably confuses TTML1 conformance. 15:06:54 .. I see the things that you've pointed out, but is there any disagreement in the intent? 15:07:07 .. Is there anyone who thinks that a TTML1 document is conformant with lots of tts things 15:07:17 .. that are not defined in TTML1? 15:07:21 Pierre: That was how I read it. 15:08:55 Nigel: Me too, and I think it's probably a good thing. That's because it allows TTML2 15:09:22 q+ 15:09:43 .. document instances to be processed by TTML1 processors simply by ignoring the 15:10:00 .. unrecognised syntax. There's also separately the profile mechanism for tightening up 15:10:05 .. what's allowed. 15:10:20 Mike: I'm not seeing a problem here. A TTML1 document containing non-TTML1 syntax 15:10:40 .. in the tts namespace shouldn't be considered a conformant TTML1 document. 15:10:44 ack atai 15:11:06 Andreas: Would a TTML1 processor be allowed to process that document or shall it reject it? 15:11:24 Mike: Why would a real processor do that? My answer based on the spec is that it could. 15:11:42 Andreas: Then the second question is with IMSC without, say, itts:lineGap. So would a current 15:11:56 .. IMSC1 processor be allowed to stop processing because it encounters attributes in 15:12:19 .. itts namespace not in the IMSC1 spec? 15:14:03 Mike: We started with a TTML question and now we have moved to IMSC - that's a different question. 15:14:15 Andreas: You're right they're two different but related specs but I wanted to know if they 15:14:22 .. take the same approach and check the understanding. 15:15:03 Pierre: I would have to study IMSC1 to check that. 15:15:24 The namespaces defined by this specification are mutable [namespaceState]; all undefined names in these namespaces are reserved for future standardization by the W3C. 15:15:31 Nigel: The section on Namespaces in IMSC 1 says: the above. 15:16:27 .. It also says "A Document Instance may contain elements and attributes that are neither specifically permitted nor forbidden by a profile." 15:16:48 Andreas: This wording is not explicit in TTML. 15:16:51 Nigel: It is quite useful. 15:18:19 .. I also see that in the Conformance section the normative provisions from TTML1 apply, 15:18:36 .. which deals with the syntax, but the semantic support is only required for things specified 15:18:42 .. as permitted by the profile. 15:18:47 Mike: That's what it should say. 15:19:14 Andreas: But if there are TT namespace attributes that affect the presentation then there's 15:19:27 .. no contract to do something acceptable, so it should be okay to stop processing. I can 15:19:36 .. see it the other way around that it's better to do something than nothing. 15:19:50 Mike: It's the difference between the explicit or implicitly signalled profile. If a document 15:20:10 .. claims to be 1.0.1 document and it has a bunch of other stuff in it then its an invalid document. 15:20:14 Nigel: I don't agree. 15:20:31 Mike: I don't think the intent was to allow arbitrary attributes and claim conformance with TTML1. 15:21:38 .. If that were hypothetically true then yeah maybe the presentation wouldn't be as intended. 15:23:00 Nigel: But this is exactly how web specs work - processors need to be forgiving to 15:23:12 .. unrecognised syntax and future specs may define things. The idea is that older 15:23:24 .. processors should try to do something at least okay with the subset of syntax they do 15:23:43 .. support even if it's not ideal. For example tts:ruby attributes would be ignored by a TTML1 15:23:57 .. processor and would lead to radically different presentation but hopefully it wouldn't 15:24:03 .. be completely useless. 15:24:29 Mike: I wouldn't expect a TTML1 processor to process documents with tts namespace attributes from TTML2. 15:24:45 Pierre: How would you expect new attributes to be added? 15:24:57 Mike: It's not sufficient only to have the namespace, so the profiling or versioning mechanism 15:25:08 .. would need to be used. There shouldn't be any expectation on a TTML1 decoder to do a 15:25:17 .. successful processing job on TTML2 documents. 15:25:59 Pierre: That would mean that a TTML1 document would be considered non-conformant 15:26:15 .. from a specification standpoint if it had a tts: attribute not in TTML1? 15:26:19 Mike: Correct, that's my view. 15:26:37 Pierre: Then what if I want in TTML1.1 to add an attribute that is supplementary in such a 15:26:45 .. way that it would not break TTML1 processors - how would I do that/ 15:26:51 s|/|? 15:27:09 Mike: One option is to create extensions in another namespace. In TTML2 we chose not 15:27:20 .. to do that but to reuse the TTML1 namespace and this creates that side effect. 15:27:46 Pierre: Thanks, I think I understand. What coloured my interpretation is that web standards 15:27:53 .. tend to be really loose and allow things in the same namespace. 15:28:29 Mike: I don't disagree with that - we're talking about specs not processors. 15:28:43 Pierre: So to add any new feature a new namespace is needed to avoid breaking conformance? 15:28:56 Mike: There are concrete examples in other places that use XML that do exactly that. They 15:29:14 q+ 15:30:39 .. create new features in new namespaces. 15:31:12 Nigel: I want to avoid content providers having to provide processor-version-specific 15:31:39 .. documents, which the new namespace idea can do. 15:31:58 Pierre: The mutable namespace statement makes this more confusing. 15:32:15 Andreas: I wanted to raise this not to pursue one particular outcome but to establish if 15:32:34 .. there is a common reading of the spec; it is clear from this discussion that there is not. 15:32:49 .. Then we may need to add something to TTML1 or not depending on what our view is. 15:36:47 q+ 15:39:24 ack atai 15:40:00 Nigel: I think we've gone as far as we can on this for the time being without Glenn's input. 15:40:19 Topic: HDR in PNG 15:40:30 .. We published this Note at https://www.w3.org/TR/png-hdr-pq/ 15:40:41 Pierre: Someone noticed a typo. How do we deal with that? 15:40:53 Thierry: Publication of a WG Note is really easy so we can do it whenever we like. It's just 15:41:01 .. a matter of a WG decision how to proceed. 15:41:30 Pierre: It's literally a typo. 15:41:44 Nigel: I think just fix it and publish - it's completely obvious what the typo is, so nobody 15:41:52 .. is going to be upset with it being fixed in place. 15:42:07 Pierre: I'll try the auto publishing system - Thierry I may need your help! 15:42:11 Thierry: okay! 15:43:28 Nigel: Thanks all, we've run out of agenda for today. I'm not around on 17th and 24th August 15:43:40 .. so if anyone wants to step in and chair, let me know, otherwise the default will be we 15:43:55 .. have no meetings those weeks. Thanks everyone! [adjourns meeting] 15:44:01 rrsagent, make minutes 15:44:01 I have made the request to generate http://www.w3.org/2017/07/27-tt-minutes.html nigel 15:49:05 s/That was the main action for us/That [referencing CSS for styling semantics] was the main action for us 15:52:50 rrsagent, make minutes 15:52:50 I have made the request to generate http://www.w3.org/2017/07/27-tt-minutes.html nigel 15:52:55 atai has left #tt 15:57:02 s/.. We published/Nigel: We published 15:57:05 rrsagent, make minutes 15:57:05 I have made the request to generate http://www.w3.org/2017/07/27-tt-minutes.html nigel 15:57:28 scribeOptions: -final -noEmbedDiagnostics 15:57:29 rrsagent, make minutes 15:57:29 I have made the request to generate http://www.w3.org/2017/07/27-tt-minutes.html nigel 18:01:23 Zakim has left #tt