Re: profile definition and resolution [was RE: ISSUE-261: signaling docoument profile conformance is separate from decoder presentation requirements [TTML.next]

On Tue, Jul 16, 2013 at 12:10 PM, Michael Dolan <mdolan@newtbt.com> wrote:

> It is rather clear to me that conformant SDP-US decoders are not required
> to implement any tts:color syntax other than what is defined in 5.2.
>

That would be an incorrect interpretation of the current SDP-US spec, since
it clearly requires a conforming decoder to support #color as defined in
TTML.


> The rationale, as I mentioned below, is that if it is required to support
> the full syntax then there would be no point at all in prohibiting all the
> other syntax in the instance documents. Therefore a conformant decoder does
> not have to support all syntax.
>

That may have been the intention, but it isn't what is written. To fix it,
we would need to change the TT Profile document in Section 9 or alter the
conformance language in Section 3.


> Therefore the profile requiring support for the feature
> …ttml/feature#color is an error in the profile.
>

That's a possible reading, depending on your assumptions about the
intentions.


> ****
>
> ** **
>
> However, debating the perhaps arguable language in SDP-US is not really
> the point of this thread.  The point is that there exist features in
> profiles of TTML that cannot be properly represented by the set of features
> defined in TTML.
>

Let's distinguish *features* from *feature designations*., where *features* is
a general concept and *feature designations* are the designations and
semantics defined in TTML 1.0 Appendix D. So, what you are really saying is:

there exist *features* in profiles of TTML that do not have
corresponding *feature
designators* defined in TTML

And, for this, I agree.

> And in those cases, using such a TTML feature in the profile definition is
> just wrong since such a constrained decoder would be required to reject
> such a document requiring full support.
>
"Just wrong" depends on the intentions of the authors. If it were the
intentions of the authors of SDP-US that a conforming presentation
processor (decoder) require no more than necessary to support the *features* of
a conforming SDP-US document, then I would agree. However, I can't answer
this question, since I came along rather late in the editing process, and
Section 9 had already been established (though subsequently fine tuned).

I don't recall the issue of the present thread coming up while we were
editing/discussing SDP-US, so I don't have a recollection of intentions in
this area.

If we wish, we can simple declare that the intentions were different, and
set about to changing it.

> ****
>
> ** **
>
> However, the solution is to redefine the feature as an extension in a new
> profile namespace subject to however the feature is really intended and
> defined by the controlling prose.  And, if the new definition is a strict
> subset of TTML, then the schema and documents of such a constrained profile
> can still use the TTML document namespace.
>
To be more particular about terminology, I believe you are suggesting that
we:

(1) define new extension designations in SDP-US, along with their semantic
descriptions, as needed to redefine Section 9 to better match processor
requirements to content usage;
(2) revise (replace) Section 9 to use these new extension designations;

I've also mentioned an alternative, which is to revise Section 3, and
continue to use the same contents of Section 9. The latter would require
less normative spec work and would better interoperate with fielded
decoders (that should know the feature designations already defined but
won't know new feature designations you propose). I have a slight
preference for my approach because it simplifies editing work.


> ****
>
> ** **
>
> Alternatively, I suppose we could create a dependency of the feature
> definitions on the profile itself.  That is, e.g. …ttml/feature#color means
> one thing for the dfxp-presentation profile and another thing for the
> sdp-us profile. But I don’t think that was the intent.
>
Barring errata, the definition of a given (fully specified, absolute)
feature designation should not change according to context.


> ****
>
> ** **
>
> And, it is now clear that SDP-US needs to either alter its profile along
> the lines of this thread (if my interpretation is correct), or it needs to
> alter the prose throughout to require support for the full syntax and
> require decoder semantics consistent with the TTML features that it claims
> are required (if your interpretation is correct). My money is on the former.
>
My interpretation is correct according to what is written, but yours may be
correct according to what was intended. It is a moot argument. Best to
simply propose and adopt changes that fix what folks don't like.

> ****
>
> ** **
>
> Regards,****
>
> ** **
>
>                 Mike****
>
> ** **
>
> *From:* Glenn Adams [mailto:glenn@skynav.com]
> *Sent:* Monday, July 15, 2013 7:17 PM
> *To:* Michael Dolan
> *Cc:* Timed Text Working Group
> *Subject:* Re: profile definition and resolution [was RE: ISSUE-261:
> signaling docoument profile conformance is separate from decoder
> presentation requirements [TTML.next]****
>
> ** **
>
> ** **
>
> On Mon, Jul 15, 2013 at 6:46 PM, Michael Dolan <mdolan@newtbt.com> wrote:*
> ***
>
> Glenn-****
>
>  ****
>
> One thing that helps is the clarification that the profile namespace is
> not necessarily bound to the document namespace. ****
>
> ** **
>
> That's saying too much. The correct statement is that the profile
> namespace and the document namespace have nothing to do with each other.**
> **
>
>  ****
>
> And, therefore, SDP-US could define a new feature, e.g. #color, however it
> wishes in its own profile namespace, even though the **document**
> namespace remains ttml. Maybe that solves the problem.****
>
> ** **
>
> Actually, what you suggest below is not using "its own *profile namespace*",
> it is using an "*other extension namespace*" in order to define a new
> (and different) extension designation:****
>
> ** **
>
> http://www.w3.org/ns/sdp-us/feature/#color****
>
> ** **
>
> which is distinct from****
>
> ** **
>
> http://www.w3.org/ns/ttml/feature/#color****
>
> ** **
>
> Though perhaps a bit unusual to use a URI containing 'feature' to refer to
> an 'extension', it is perfectly legal for TTML.****
>
> ** **
>
> Profile namespaces are used in profile designators, while
> feature/extension namespaces are used in feature/namespace designations.**
> **
>
>  But I still can’t resolve what all you say below about how features work
> with the statement that the SDP-US profile is accurate as is.****
>
> I say this because SDP-US is not just the profile document defined in
> Section 9 [1], but also all of the normative language that comes before,
> e.g.,****
>
> ** **
>
> *R0013* - A document *must not* contain a *<color>* expression value used
> with the tts:color attribute that does not conform to the #rrggbbaa expression
> format as defined by [TTML10<http://www.w3.org/TR/2013/NOTE-ttml10-sdp-us-20130205/#bib-TTML10>],
> Section 8.3.2.****
>
> ** **
>
> By this statement, a conforming SDP-US document cannot use any (TTML)
> #color syntax that is not of the form #rrggbbaa. This statement is not
> expressible in TTML 1.0 profile vocabulary as presently defined, though
> with the new 'prohibited' value keyword we have introduced in 1.1, and in
> combination with new, not yet defined standard #feature designations (e.g.,
> #color-rgb-function, #color-rgba-function, #color-rrggbb), such a
> constraint could be expressed.****
>
> Since SDP-US is designed explicitly **not** to support the full tts:color
> syntax, then including the feature #color from the TTML profile namespace
> is clearly an error.****
>
> It's not an error, its just (potentially) misleading (clearly so since you
> have misinterpreted it). It says (1) a processor must support all of the
> #color syntax, *and* (2) a document must not use any syntax other than
> #rrggbb). So it effectively demands a processor to support more than it
> would need to support only conformant SDP-US documents. Perhaps that could
> be interpreted as an error, but strictly speaking, Section 3 says:****
>
> ** **
>
> This profile defines (1) constraints on documents and (2) minimum
> requirements for a TTML presentation processor capable of presenting such
> constrained documents.****
>
> ** **
>
> But *does not say* that (1) and (2) are equal. It only says that (2) is
> capable of presenting (1). Which is true. The definition of (2) *and not
> (1)* is based on the TT Profile document in Section 9:****
>
> A TTML presentation processor conforms to this profile if it:****
>
> **1.   **implements support for the profile definition specified in Features
> in TTML 1.0 Used in This Profile<http://www.w3.org/TR/2013/NOTE-ttml10-sdp-us-20130205/#Features_in_TTML_1.0_Used>;
> and****
>
> **2.   **implements support for all other semantics explicitly defined by
> this profile.****
>
> A decoder would not be able to disambiguate TTML #color from what was
> really defined/implemented.****
>
> Keep in mind that designation fragments, like *#color*, are only relative
> URIs, based on the applicable base URI. There are two different URIs you
> cite here when writing them in their full, absolute form:****
>
> ** **
>
> http://www.w3.org/ns/ttml/feature/#color****
>
> http://www.w3.org/ns/sdp-us/feature/#color****
>
> ** **
>
> If we were to define the latter in a revised version of SDP-US, in order
> to bring the definition of required processor support closer to the
> definition of a conforming document, then I would suggest using something
> like:****
>
> ** **
>
> http://www.w3.org/ns/ttml/sdp-us/extension/#color-rrggbbaa****
>
> We might also want to add new standard feature designations in TTML.next:*
> ***
>
> ** **
>
> http://www.w3.org/ns/ttml/feature/#color-rrggbb****
>
> http://www.w3.org/ns/ttml/feature/#color-rrggbbaa****
>
> ...****
>
>  ****
>
> Dealing only with tts:color (and not the other constrained features),
> doesn’t the SDP-US profile have to be modified along the lines of:****
>
>  ****
>
> <?xml version="1.0" encoding="utf-8"?>****
>
> <profile xmlns="http://www.w3.org/ns/ttml#parameter">****
>
>   <features xml:base="http://www.w3.org/ns/ttml/feature/">****
>
>     <!-- required (mandatory) feature support -->****
>
>     <feature value="required">#animation</feature>****
>
>     <feature value="required">#backgroundColor-block</feature>****
>
>     <feature value="required">#backgroundColor-inline</feature>****
>
>     <feature value="required">#color</feature>****
>
>     <feature value="required">#content</feature>****
>
>     <feature value="required">#core</feature>****
>
>     <feature value="required">#display-region</feature>****
>
>     <feature value="required">#displayAlign</feature>****
>
>     <feature value="required">#extent-region</feature>****
>
>     <feature value="required">#fontFamily-generic</feature>****
>
>     <feature value="required">#fontSize</feature>****
>
>     <feature value="required">#fontStyle-italic</feature>****
>
>     <feature value="required">#frameRate</feature>****
>
>     <feature value="required">#frameRateMultiplier</feature>****
>
>     <feature value="required">#layout</feature>****
>
>     <feature value="required">#length-percentage</feature>****
>
>     <feature value="required">#length-positive</feature>****
>
>     <feature value="required">#lineBreak-uax14</feature>****
>
>     <feature value="required">#presentation</feature>****
>
>     <feature value="required">#profile</feature>****
>
>     <feature value="required">#structure</feature>****
>
>     <feature value="required">#styling</feature>****
>
>     <feature value="required">#styling-inheritance-content</feature>****
>
>     <feature value="required">#styling-inheritance-region</feature>****
>
>     <feature value="required">#styling-inline</feature>****
>
>     <feature value="required">#styling-referential</feature>****
>
>     <feature value="required">#textAlign-absolute</feature>****
>
>     <feature value="required">#textDecoration-under</feature>****
>
>     <feature value="required">#textOutline-unblurred</feature>****
>
>     <feature value="required">#time-offset</feature>****
>
>     <feature value="required">#timing</feature>****
>
>     <feature value="required">#writingMode-horizontal-lr</feature>****
>
>   </features>****
>
>   <extensions xml:base="http://www.w3.org/ns/sdp-us/feature/">****
>
>     <extension value="required">#color</extension>****
>
>   </extensions>****
>
> </profile>****
>
>  ****
>
> We could do this, but IMO, it wouldn't be because the current definition
> is broken, it would be because we might want a definition of SDP-US
> processor support that more closely aligns with SDP-US content
> possibilities. ****
>
> SDP-US would then need to formally state that the extension #color is the
> definition in 5.2.****
>
> Yes, if we defined a new extension designation, we could define it in a
> way that matches the document constraints more closely. ****
>
>  ****
>
> The same would therefore be true for any SDP-US constrained features that
> have syntax or semantics constrained beyond the minimum defined in any TTML
> feature.****
>
> Yes, we could do that as well. But it isn't logically necessary to do so.
> We could also rewrite step (1) under processor conformance in Section 3 to
> read something like:****
>
> ** **
>
> (1) implements support for the profile definition specified in Features in
> TTML 1.0 Used in This Profile where the use and presence of such features
> is to be understood to be further constrained by statements in this profile
> that apply to document conformance;****
>
> ** **
>
> and further add the following Notes (or normative text):****
>
> ** **
>
> Note: When processing the semantics of a TTML 1.0 document that claims to
> make use of or otherwise conform with this (SDP-US) profile, a conforming
> presentation processor should not reject or otherwise abort processing a
> document that merely refers (directly or indirectly) to a standard TTML
> feature designation whose definition includes semantics not permitted by a
> conforming SDP-US document.****
>
> ** **
>
> Note: If a TTML 1.0 document that claims to make use of or otherwise
> conform with this (SDP-US) profile makes use of a standard TTML feature or
> some aspect of such a feature that is expressly prohibited by this profile,
> then a compliant presentation processor should ignore the construct that
> includes the prohibited feature or feature aspect.****
>
>  ****
>
>  ****
>
> SDP-US retains the TTML **document** namespace since it is still a strict
> subset.****
>
> Yes, but this is unrelated to the above discussion. We wouldn't be
> redefining TT vocabulary in a new SDP-US XML namespace.****
>
>  ****
>
>  ****
>
> If you still maintain that the profile for SDP-US is accurate as is, then
> I guess we need to talk more….****
>
>  ****
>
> Regards,****
>
>  ****
>
>                 Mike****
>
>  ****
>
> *From:* Glenn Adams [mailto:glenn@skynav.com]
> *Sent:* Monday, July 15, 2013 5:01 PM
> *To:* Michael Dolan
> *Cc:* Timed Text Working Group
> *Subject:* Re: profile definition and resolution [was RE: ISSUE-261:
> signaling docoument profile conformance is separate from decoder
> presentation requirements [TTML.next]****
>
>  ****
>
>  ****
>
> On Mon, Jul 15, 2013 at 12:19 PM, Michael Dolan <mdolan@newtbt.com> wrote:
> ****
>
> CIL.****
>
>  ****
>
> *From:* Glenn Adams [mailto:glenn@skynav.com]
> *Sent:* Monday, July 15, 2013 9:57 AM****
>
>
> *To:* Michael Dolan
> *Cc:* Timed Text Working Group****
>
> *Subject:* Re: profile definition and resolution [was RE: ISSUE-261:
> signaling docoument profile conformance is separate from decoder
> presentation requirements [TTML.next]****
>
>  ****
>
>  ****
>
> On Mon, Jul 15, 2013 at 9:48 AM, Michael Dolan <mdolan@newtbt.com> wrote:*
> ***
>
> Glenn-****
>
>  ****
>
> The reason that I think a profile document itself is an inadequate tool to
> define a profile is that the granularity of the features has never (to
> date) matched the defined profile capabilities per the related prose for
> those profiles. ****
>
>  ****
>
> But the purpose of the TT Profile Document is not to define a profile. It
> is to specify a set of features/extensions having been defined elsewhere.
> You are talking about the "defined elsewhere" part of this equation, i.e.,
> which features/extensions are defined, whether their definitions are
> adequate or not.****
>
>  ****
>
> The implied contract for a TT Profile Document is that it simply
> enumerates features/extensions and assigns each a value (required,
> optional, etc), and that a TTML Content Processor has a way (or can have a
> way) to determine if it supports an enumerated feature.****
>
>  ****
>
> When a TT document references a feasibly resolvable TT Profile Document,
> it is simply using a shorthand, which it could instead of defined inline,
> i.e., enumerated the features it requires inline.****
>
>  ****
>
> When a processor encounters such a reference it has some options:****
>
>  ****
>
> (1) it has a built-in (cached) form of the referenced profile, so doesn't
> need to make an external reference (though it may choose to do so to update
> its cache);****
>
>  ****
>
> (2) it doesn't have a cached form or it wants to update its cache, so it
> attempts to resolve and parse the referenced profile, which may succeed or
> fail;****
>
>  ****
>
> (3) if (2) fails, then it consults its system/user preferences to
> determine whether to continue processing or abort the document;****
>
>  ****
>
> If the processor did resolve the profile to a TT Profile Document, then it
> knows which features it supports and which it doesn't, at least for those
> defined at the time it was constructed/updated. If the TT Profile Document
> (as parsed and possibly augmented by inline profile elements) requires a
> feature it doesn't support, then it again consults its preferences, and
> either continues or aborts.****
>
>  ****
>
> MD>> Yes.  Understand all this. The above and its process is not in
> debate. The summary of my chain of logic:****
>
>  ****
>
> 1.         The TTML feature list is not granular enough to be accurate
> relative to the known profiles today.****
>
>  ****
>
> So, define new features (in W3C) or externally (in which case they are
> called 'extensions').****
>
>  ****
>
> 2.         Therefore, an actual profile document is not useful (in fact
> harmful in all known cases – see below).****
>
>  ****
>
> Yes it is. It is a formal mapping from a URI to a list of requirement
> specifications. It can be parsed. It can be cached. It can be referred to
> normatively to define what is required to process a document. I fail to see
> why this isn't useful, especially since it is what we intended it to do.
> Recall that the entire TTML Profile mechanism was defined as a way to
> express the kind of information expressed by SVG's requiredFeatures [1]
> requiredExtensions [2] attributes, and SMIL's system test attributes [3].*
> ***
>
>  ****
>
> [1]
> http://www.w3.org/TR/SVG/struct.html#ConditionalProcessingRequiredFeaturesAttribute
> ****
>
> [2]
> http://www.w3.org/TR/SVG/struct.html#ConditionalProcessingRequiredExtensionsAttribute
> ****
>
> [3]
> http://www.w3.org/TR/SMIL2/smil-content.html#ContentControlNS-PredefinedSystemTest
> ****
>
>  ****
>
> You are faulting the mechanism when it is the policy of its usage that is
> the problem.****
>
>  ****
>
> 3.         Therefore, if there is no profile document it does not need to
> be resolvable.****
>
> A profile always applies whether specified or not. Absent a profile
> reference, the dfxp-transformation profile applies. There should always be
> a TT Profile Document for every defined profile. I would say that a claim
> that a profile is defined without a TT Profile Document is a non-sequitor
> as far as TTML is concerned.****
>
> Without explicit restriction, a feature must be assumed to be fully
> supported.****
>
> Features (and extensions) are defined by the W3C (and 3rd parties)
> respectively. Their definitions must adequately specify what 'support'
> means, elsewise they are underspecified.****
>
>  ****
>
> The TT profile document says what the processor is to do if it isn't
> supported and its value is 'required' or 'used'. It is up the processor to
> determine if it supports the feature or not according to wherever the
> feature is defined. In  the present TTML profiles, that is Appendix D or
> SDP-US.****
>
>  ****
>
> MD>>  If the decoder must fall back on prose to understand the true
> meaning, then how is a profile document helpful? The feature definition
> must be detailed enough to cover the constraint set, and today they are not.
>  ****
>
>  ****
>
> For example, let’s use tts:color.  SDP-US constrains the color
> representations in ways that are not covered in the TTML profile feature,
> #color. The granularity of this feature in TTML is all or nothing.
> Therefore, if an SDP-US (only) decoder were to receive a profile (URI or
> inline) that contained the #color feature, it would be forced to reject the
> instance document since the decoder does not support all the
> representations.****
>
>  ****
>
> That's correct, at least in the sense that the syntactic representations
> of color supported in TTML must be supported; however, it doesn't mean the
> semantic meaning must be supported [1]:****
>
>  ****
>
> A TTML presentation processor supports the #color feature if it (1)
> implements presentation semantic support for the tts:color<http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#style-attribute-color> attribute
> and (2) is capable of displaying or generating an output display signal
> that distinguishes between at least sixteen (16) values of color, including
> all primary and secondary colors of the SRGB color space.****
>
>  ****
>
> [1] http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#feature-color****
>
>  ****
>
> MD>> Right.  But this is all irrelevant if the decoder can’t even decode
> all the syntax requried by #color.****
>
>  ****
>
> In that case, it can't claim to support #color. So if you are asking what
> to do if you want to define a profile that doesn't define all of the syntax
> of #color, then you need to define an extension designator and specify its
> meaning somewhere in prose. The designator is just a shorthand for that
> meaning, wherever it is defined. It is not the purpose of the TT Profile
> Document to define the meaning of feature or extension designators.****
>
>  ****
>
>  ****
>
> Furthermore, even if the processor didn't support these semantics, the
> author could simply override the feature requirement by making it optional:
> ****
>
>  ****
>
> <profile use="dfxp-presentation">****
>
>   <features>****
>
>     <feature value="optional">#color</feature>****
>
>   </features>****
>
> </profile>****
>
>  ****
>
> MD>>  Of course, but then what’s’ the point of a profile document if every
> feature that is constrained in a manner not covered by the TTML feature set
> now has to be optional? That’s at odds with the purpose of communicating
> the feature set to the decoder. They’re not optional, they’re required,
> just constrained.****
>
>  ****
>
> A constrained feature/extension as you put it will need to have its own
> feature/extension designator defined if it is to be referred to be a
> profile.****
>
>  ****
>
> The extension mechanism cannot, at least as I read the spec, be applied to
> TTML features, only 3rd party features – that is, extensions to TTML, not
> TTML itself. And, 3rd parties are prohibited from defining new features
> in the TTML namespaces.****
>
> Why is this a problem? Extensions are just an alias for "non-standard
> features". Any 3rd party, or even the W3C itself is free to define new
> extension URIs which may be referenced by TT Profile documents or by TTML
> documents. If the TTWG wants to formally standardize on an extension, i.e.,
> promote it to a "standard feature", then it just defines such a feature in
> some document.****
>
>  ****
>
> MD>>  I said below (highlight new): “The feature mechanism cannot be
> extended by 3rd parties.”  Then you asked: “…since a non-standard
> "feature" is just what we call an "extension". Or do you have something
> else in mind by "extended"?”  I tried to answer your question as “no”.
> Extensions don’t seem to solve this (but read on).****
>
>  ****
>
> Since it is common practice today is to define profiles with features
> constrained in ways not pre-defined in TTML 1.0, how is it possible to
> create a useful profile document? Perhaps I am missing something about the
> profile/feature/extension mechanism?****
>
> (1) third parties can define new extension URIs along with some definition
> thereof;****
>
> (2) authors of TT Profile documents can include references to such
> extensions;****
>
> (3) authors of TTML documents can reference predefined TT Profile
> documents and can at their discretion augment or restrict those definitions
> by specifying feature/extension references inline (as in above example);**
> **
>
>  ****
>
> MD>> So, are you saying that 3rd parties (including W3C Notes) can define
> a new profile namespace, then define a new feature constraint, e.g.
> #color-sdp-us, to constrain an existing TTML feature?****
>
>  ****
>
> Sure. Why not, that is the current mechanism's design after all?****
>
>  ****
>
> First, we must distinguish between *Profile Designators* [4], *Feature
> Designations* [5], and *Extension Designations* [6], all of which take
> the syntactic form of a URI.****
>
>  ****
>
> [4] http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#vocabulary-profiles
> ****
>
> [5]
> http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#feature-designations***
> *
>
> [6]
> http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#extension-designations*
> ***
>
>  ****
>
> Each of these designators/designations are divided into a *namespace* part
> and a *designation* part. For profile designators, we enumerate 4 (of an
> infinite set) in Table 2 [7].****
>
>  ****
>
> [7] http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#profile-vocab-table
> ****
>
>  ****
>
> The TT Profile namespace part we define in Table 1 [8] as
> http://www.w3.org/ns/ttml/profile/. We set aside this part (as a URI
> prefix) for standardization purposes for the W3C. However, we allow any
> other URI to use with a different namespace part (prefix):****
>
>  ****
>
> All profile designators which have the TT Profile Namespace as a prefix
> but are otherwise not listed in *Table 2 – Profiles*<http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#profile-vocab-table> are
> reserved for future standardization, and must not be appear in a conformant
> *Document Instance*. Nothwithstanding this constraint, a profile
> designator is not restricted to the set of designators enumerated in *Table
> 2 – Profiles*<http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#profile-vocab-table>,
> but may be any URI that feasibly dereferences a TTML *Profile Definition
> Document* provided it does not use the TT Profile Namespace as a prefix.**
> **
>
>  ****
>
> So you or anyone else may go define a TT Profile Document and refer to it
> using a URI of your choice as long as it doesn't use the TT Profile
> Namespace.****
>
>  ****
>
> Now, as for features and extension designations (we use the term
> 'designation' instead of 'designator' to make note of the fact that they
> take a slightly different form, i.e., with a fragment identifier), each of
> these are also uniquely identified with a URI. We state [5] that all
> 'feature' designations *must* use the unique prefix we define as the TT
> Feature Namespace http://www.w3.org/ns/ttml/feature/. However, for
> 'extension' designations, we state [6] that either the TT Extension
> Namespace http://www.w3.org/ns/ttml/extension/ or an *Other Extension
> Namespace* may be used. It is up to a 3rd party to decide what to use as
> an Other Extension Namespace. We give an example of such in an Example
> Fragment [8], namely http://example.org/ttml/extension/.****
>
>  ****
>
> [8]
> http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#parameter-vocabulary-extension
> ****
>
>  ****
>
> Nowhere do we constrain what an extension 'means', so it could mean the
> same as an existing defined 'feature', an extended form of an existing
> defined 'feature', a constrained (restricted) form of an existing defined
> feature, or a completely unrelated, non-standard feature (such as the
> #prefilter-by-language designator in the example fragment [8]).****
>
>  ****
>
> So a third party can define any of:****
>
>    - new profiles labelled and  referenced by new non-standard (from the
>    TTML sense) profile designators;****
>    - new extensions (= non-standard features) labelled and referenced by
>    new non-standard (from the TTML sense) extension designations;****
>
> A content author can then reference any combination of standard and
> non-standard profiles and also define inline profile extensions
> (supersets)/restrictions (subsets) by directly referring to both standard
> feature designations and non-standard extension designations.****
>
>  ****
>
> If so, then can there be a namespace for the profile that is different
> from the namespace of the document (many of the profiles do not define a
> new namespace for the TTML subset)?****
>
>  ****
>
> I'm not sure what you mean by "namespace of the document". But the
> namespaces for profiles are unrelated to namespaces for
> elements/attributes. So it sounds like the answer is YES. ****
>
>  ****
>
> But if we can’t make a useful profile document, there is little point in
> requiring the URI for it to be resolvable to a physical document.****
>
> You can make a useful profile document. I'm not getting why you think that
> is hard or impossible. Perhaps if you give me a more concrete example of
> what you would like to do, I can explain how to do it with the current
> mechanisms.****
>
>  ****
>
> MD>> I don’t see how yet.  See above.  I thought I was helping by using
> SDP-US and #color and the problem was obvious.  If the profile defined in
> Section 9 of SDP-US were sent to a decoder, and the decoder did not support
> all the syntax of tts:color (the strong implication is that it does not -
> see 5.2), then the decoder MUST reject the document.  You say above: “…
> the syntactic representations of color supported in TTML must be supported
> ”****
>
>  ****
>
> Since SDP-US requires support for #color, which means syntactic support
> for all TTML colors, then the decoder you describe above is not an SDP-US
> decoder. If you are just asking about an arbitrary decoder that makes no
> claims about conforming to a processor profile, then yes, a decoder that
> didn't support all the syntax of #color would have to make a decision about
> whether to reject the document or not. However, it need not reject the
> document:****
>
>  ****
>
> *6.1.1 ttp:profile*****
>
>  ****
>
> A conformant TTML processor is not required to be able to dereference a *Profile
> Definition Document* that is not one of the standard, predefined profiles
> defined by *F Profiles*<http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/#profiles>.
> Furthermore, a conformant TTML processor may make use of a built-in, static
> form of each standard, predefined profile so as not to require
> dereferencing a network resource.****
>
> If a TTML processor is unable to dereference a non-standard *Profile
> Definition Document*, then it must not further process the document
> without the presence of an explicit override from an end-user or some
> implementation specific parameter traceable to an end-user or to a user or
> system configuration setting. If a TTML processor aborts processing of a *Document
> Instance* due to the inability to reference a non-standard *Profile
> Definition Document*, then some end-user notification should be given
> unless the end-user or system has disabled such a notification, or if the
> processor does not permit or entail the intervention of an end-user.****
>
> *6.1.3 ttp:feature*****
>
>  ****
>
> If the value of the value attribute is required or use and the TTML
> processor implementation does not support the feature, or if the value attribute
> is use and the TTML processor implementation supports but has disabled
> that feature, then it must not further process the document without the
> presence of an explicit override from an end-user or some implementation
> specific parameter traceable to an end-user or to a user or system
> configuration setting. If a TTML processor aborts processing of a *Document
> Instance* due to the specification of a required, but unsupported feature
> by this element, then some end-user notification should be given unless the
> end-user or system has disabled such a notification, or if the processor
> does not permit or entail the intervention of an end-user.****
>
>  ****
>
> *6.1.5 ttp:extension*****
>
>  ****
>
> If the value of the value attribute is required or use and the TTML
> processor implementation does not support the extension, or if the value attribute
> is use and the TTML processor implementation supports but has disabled
> that extension, then it must not further process the document without the
> presence of an explicit override from an end-user or some implementation
> specific parameter traceable to an end-user or to a user or system
> configuration setting. If a TTML processor aborts processing of a *Document
> Instance* due to the specification of a required, but unsupported
> extension by this element, then some end-user notification should be given
> unless the end-user or system has disabled such a notification, or if the
> processor does not permit or entail the intervention of an end-user.****
>
>  ****
>
> So, a compliant processor (1) need not dereference a feasibly resolvable
> profile document, (2) need not reject a document that requires a feature it
> doesn't support, and (3) need not reject a document that requires an
> extension it doesn't support. However, in each of these cases, the
> processor must make use of a traceable end-user or system parameter to
> determine whether to proceed regardless of lack of support.****
>
>  ****
>
>  ****
>
> MD>> I think can safely say that a developer reading the SDP-US spec would
> not think to support the full syntax of tts:color.  Or if that support is
> somehow implied then what’s the point in forbidding the document syntax?**
> **
>
> We had to define SDP-US using the tools given, or would have had to resort
> to defining new extension designations, which was a possibility.****
>
>  ****
>
> In any case, it is one thing to require syntactic support and quite
> another to require semantic support. A lint type verifier (TTV supports a
> number of optional warnings) would probably want to flag a document that
> makes syntactic use of a feature for which semantic support isn't required.
> ****
>
>  ****
>
> So, we can perhaps reach faster closure on this thread if you could (I
> don’t know how to) define a decoder profile document that:****
>
>  ****
>
> 1.       Accurately represents the SDP-US profile;****
>
>  ****
>
> We have. It is a WG Note called SDP-US. That's it.****
>
> 2.       Accurately uses “required” and “optional” (hint: #color is
> obviously required by FCC regs); and****
>
> Is there a bug in SDP-US Section 9 [9], then it can be fixed in an errata
> or update. BTW, the prologue in Section 9 should be edited to make it clear
> that the profile document doesn't formally define the profile *on its own.
> * I can see how if one were to read "The following TTML profile
> definition formally defines the SDP US profile", then one would (1) find
> an inconsistency between what I've been saying above and this text and (2)
> would come to the wrong conclusion that the profile definition document is
> sufficient. [If that is your main problem, then we can easily fix that via
> an editorial correction.]****
>
>  ****
>
> [9]
> http://www.w3.org/TR/2013/NOTE-ttml10-sdp-us-20130205/#Features_in_TTML_1.0_Used
> ****
>
>  ****
>
> 3.       Won’t result in a perfectly conformant SDP-US decoder from
> having to reject all documents referencing such a profile.****
>
> Why would such a decoder have to reject all documents referencing SDP-US?*
> ***
>
>  ****
>
> In any case, I can see how it might be useful to further soften the
> language about potentially aborting/rejecting to be qualified by the actual
> use/presence of a feature/extension for which support is required (by the
> combined, merged profile). That is, instead of conservative (let's call
> this strict) rejection if a feature isn't supported, define a "lax"
> rejection if it isn't supported, is required, and is actually used.****
>
>  ****
>
>  ****
>
> (For clarity, I’m using SDP-US and #color as examples that are familiar.
> I can pick other profiles and other features with the same issue.)****
>
> Regards,****
>
>                 Mike****
>
>  ****
>
> *From:* Glenn Adams [mailto:glenn@skynav.com]
> *Sent:* Monday, July 15, 2013 6:58 AM
> *To:* Michael Dolan
> *Cc:* Timed Text Working Group
> *Subject:* Re: ISSUE-261: signaling docoument profile conformance is
> separate from decoder presentation requirements [TTML.next]****
>
>  ****
>
>  ****
>
> On Fri, Jul 12, 2013 at 2:40 PM, Michael Dolan <mdolan@newtbt.com> wrote:*
> ***
>
> Agreed.  But the inline form is already permitted, and I don't see a
> compelling reason to disallow it. That said, I would expect the "normal"
> case is to use a URI.
>
> Since you said "URI" and not URL, it begs that we return to the question of
> resolvability and existence of the TTML syntax profile.  I still maintain
> that the profile must be definable in prose or other means without actually
> creating and/or posting a resolvable profile document that conforms to the
> feature syntax defined in TTML.****
>
>  ****
>
> These are orthogonal issues:****
>
>  ****
>
> (1) defining a profile****
>
> (2) defining a feasibly resolvable profile document****
>
>  ****
>
> The feature granularity is insufficient to
> describe any (I think) of the profiles in use today.****
>
>  ****
>
> Note that the purpose of a feasibly resolvable profile document is not
> intended to formally define a profile (in the more general sense you are
> using it). It is up to us (or extension definers) to be as specific as
> desired in enumerating feature and extension designators.****
>
>  ****
>
> A feasibly resolvable profile document is effectively needed (in the use
> of a non-standard profile and in the absence of an inline profile document)
> in order for a processor to know whether it should process a document based
> on which features are implemented by the processor.****
>
>  ****
>
> Minimally there are
> certainly profile examples that cannot be (sdp-us and cff-tt). The feature
> mechanism cannot be extended by 3rd parties.****
>
>  ****
>
> If by "extended by 3rd parties" you mean defining new non-standard
> "features", then yes it is supported, since a non-standard "feature" is
> just what we call an "extension". Or do you have something else in mind by
> "extended"?****
>
>  ****
>
> This effectively forces
> permitting the profiles to be defined by other means, and therefore, there
> cannot necessarily be a profile document, and therefore cannot be
> resolvable
> in all cases.****
>
>  ****
>
> The definition of a profile document and its accessibility by a processor
> is not related to the definition of a profile itself. It (the document
> referenced by the URI) serves an operational purpose only.****
>
>  ****
>
> I see no legitimate reason for anyone to define a TTML profile (as
> presently defined) and fail to define a feasibly resolvable profile
> document instance.****
>
>  ****
>
>
> Regards,
>
>         Mike****
>
>
> -----Original Message-----
> From: Pierre-Anthony Lemieux [mailto:pal@sandflow.com]
> Sent: Friday, July 12, 2013 1:24 PM
> To: Glenn Adams
> Cc: Timed Text Working Group
> Subject: Re: ISSUE-261: signaling docoument profile conformance is separate
> from decoder presentation requirements [TTML.next]
>
> > Is there a use case for having a document include inline the definition
> of
> a content profile it claims to conform to?
>
> Such a use case does not immediately come to (my) mind.
>
> -- Pierre
>
> On Fri, Jul 12, 2013 at 1:18 PM, Glenn Adams <glenn@skynav.com> wrote:
> > Is there a use case for having a document include inline the
> > definition of a content profile it claims to conform to? Or is it
> > sufficient to allow a document to refer to a URI which is feasibly
> > resolvable to a definition of a content profile?
> >
> >
> > On Fri, Jul 12, 2013 at 2:08 PM, Pierre-Anthony Lemieux
> > <pal@sandflow.com>
> > wrote:
> >>
> >> > > Some means must be defined to separately signal these different
> >> > > semantics.
> >> > For example, we could create a new element and attribute -
> >> > <ContentProfile> and contentProfile.
> >>
> >> Sounds good. I also see value in exploring means for (a) defining a
> >> content profile and (b) signaling conformance of a document to one or
> >> more content profile.
> >>
> >> > <ContentProfile>
> >>
> >> What about following the <ttp:profile> template with the following
> tweaks:
> >>
> >> - adding a @designator attribute allowing the content profile
> >> designator to be specified
> >> - @use can contain one or more URIs, each identifying a content
> >> profile to be included in its entirety by reference, thereby avoiding
> >> having to repeat all features already defined in another profile.
> >> Perhaps @use can reference "profile" even when defining
> >> "contentProfile" so that existing content designator can be used.
> >> - allowing constraints over a base content profile to be specified
> >> using value="prohibited"
> >>
> >> <contentprofile designator="http://example.noname/profile1"
> >> use="http://example.noname/profile4 http://example.noname/profile3"
> >> xmlns="http://www.w3.org/ns/ttml#parameter">
> >>      <features xml:base="http://www.w3.org/ns/ttml/feature/">
> >>        <feature value="prohibited">#fontStyle-italic</feature>
> >>        <feature value="use">#fontStyle-bold</feature>
> >>      </features>
> >>     <extensions xml:base="http://example.noname/profile1">
> >>         <ttp:extension
> >> value="required">#prefilter-by-language</ttp:extension>
> >>     </ttp:extensions>
> >> </contentprofile>
> >>
> >> > @contentProfile
> >>
> >> What about a list of one or more content profile designator URIs,
> >> each indicating conformance to a content profile, e.g.
> >>
> >> <tt ttp:contentProfile="http://example.noname/profile1
> >> http://example.noname/profile2">
> >>
> >> Best,
> >>
> >> -- Pierre
> >>
> >> On Thu, Jul 11, 2013 at 9:16 AM, Timed Text Working Group Issue
> >> Tracker <sysbot+tracker@w3.org> wrote:
> >> > ISSUE-261: signaling docoument profile conformance is separate from
> >> > decoder presentation requirements [TTML.next]
> >> >
> >> > http://www.w3.org/AudioVideo/TT/tracker/issues/261
> >> >
> >> > Raised by: Mike Dolan
> >> > On product: TTML.next
> >> >
> >> > The profile element and attribute currently signal a feature set
> >> > that a decoder must implement in order to reasonably present the
> >> > document. Although it also hints at what features the document
> >> > instance may include, it does not signal document instance conformance
> today.
> >> >
> >> > There is currently no mechanism to signal what profile a document
> >> > instance conforms to (e.g. sdp-us).
> >> >
> >> > It is desirable to add this capability to TTML. However, simply
> >> > adding this semantic to the existing profile element and attribute
> >> > overly constrains the existing (decoder) and desired (document)
> >> > semantics. It is unreasonable to require that the single element
> >> > and attribute simultaneously signal both. For example, the fact
> >> > that a document instance conforms to dfxp-full does and should not
> >> > automatically infer that an sdp-us decoder could not properly
> >> > present it. That is instance dependent. This situation is aggravated
> when multiple profiles are involved.
> >> >
> >> > Some means must be defined to separately signal these different
> >> > semantics. For example, we could create a new element and attribute
> >> > - <ContentProfile> and contentProfile.
> >> >
> >> >
> >> >
> >> >
> >>
> >****
>
>  ****
>
>  ****
>
>  ****
>
> ** **
>

Received on Tuesday, 16 July 2013 19:38:21 UTC