Closed skynavga closed 5 years ago
@nigelmegitt you do realize that these changes are exactly what we have already accepted and merged into TTML3, and that making a change here would create an inconsistency with TTML3? see https://github.com/w3c/ttml3/pull/30 for confirmation.
@skynavga I seem to recall there was disquiet about those changes in TTML3 also. In my view it may be that the best approach is to fix it here and then port these changes as incremental changes onto TTML3 also, or it may be that we think TTML3 has a different set of constraints on modules than TTML2. Either way, my comments still stand.
@nigelmegitt can we merge this PR and deal with your comments by way of another issue? since it proposes an additional follow-on substantive change that would affect both this spec and TTML3?
I have attempted to address various comments in https://github.com/w3c/ttml2/pull/1096/commits/2f67bbdd1c2b9c71f5de0b8675a20e5238e88c5c, and, in particular, I have changed the adjectives internal/external to core/extension w.r.t. to characterizing modules and simplified language.
I have also removed the definition and references to a TTWG controlled Module Registry, which I still think is a good idea that will assist interoperability and implementation activity.
The net effect of removing the registry is that anyone may define an extension module that adds a content element or an attribute that it wishes to be treated as a style property regardless of whether it is in a TTWG controlled namespace or not.
I firmly believe this will lead to interoperability problems in the future, but we shall see.
@skynavga I have approved the PR. Cyril and Nigel had much stronger opinions on this since they are writing "modules", so I encourage you to check with them.
@cconcolato @nigelmegitt please check
@palemieux please mark your conversation https://github.com/w3c/ttml2/pull/1096#pullrequestreview-261049337 as resolved, or ask me to do so
Even though this PR impacts both document syntax and processing semantics, it is not interoperably testable as such, since whether or not a given implementation implements a feature defining module is dependent upon that implementation, and, if it does not implement it, then the default pruning rules will prune any elements or attributes added by a given module specification. Note, however, that element and/or attribute syntax associated with a given module specification could be tested for validity on an implementation that does support the module. Such tests would also need to specify a profile that requires support for any feature defined by the associated module that is being tested.
@cconcolato I've tried to address your comment in 7c3ef1c:
the current definition of modules mixes everything from syntactical elements (attributes) to specifications, which is strange to me
there are no other outstanding, actionable comments at this time, so based on the current three approvals, I'm proceeding with merging
Closes #1066.