From 8ea3727c7af08ceb5376a87b93bf717772621cd2 Mon Sep 17 00:00:00 2001 From: Glenn Adams Date: Sat, 3 Aug 2019 07:45:41 +0800 Subject: [PATCH 1/2] Constrain ttp:profile's @use attribute (#1029). --- spec/ttml2.xml | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/spec/ttml2.xml b/spec/ttml2.xml index 1a3947fd1..164fc411f 100644 --- a/spec/ttml2.xml +++ b/spec/ttml2.xml @@ -1434,6 +1434,10 @@ consist of one or more inline areas.

A constituent profile of a nesting profile, i.e., one of the descendant ttp:profile element(s) of a higher level (ancestor) ttp:profile element. A given ttp:profile may serve as both a nested profile and a nesting profile.

+ +

A nested profile may appear in a timed text content document instance or +a timed text profile document instance.

+
@@ -1939,7 +1943,7 @@ about which see .

A profile defined by a ttp:profile element that appears as a child -of the head element.

+of the head element of a timed text content document instance.

@@ -4071,7 +4075,7 @@ otherwise it is referred to as a non-nest combine = ("leastRestrictive" | "mostRestrictive" | "replace") : replace designator = xsd:string type = ("processor" | "content") : processor - use = xsd:string + use = <absolute-profile-designator> | <relative-profile-designator> xml:base = <uri> xml:id = ID Content: Metadata.class*, ((ttp:features*, ttp:extensions*)|ttp:profile*) @@ -4119,14 +4123,25 @@ be specified on a ttp:profile element that appears in a TTML profile definition document instance, and, if not specified, the defining context (e.g., an external specification) must specify a designator in its accompanying definition text.

+ +

If specified, the use attribute must adhere to the -<uri> value syntax, and, furthermore, must denote a profile designator in -accordance with . In this case, -the profile designator must refer to (1) a standard, predefined -profile definition document as defined by , -or (2) a feasibly dereferenceable resource representing a valid Profile Definition -Document instance. In either case, the referenced profile serves as the +<absolute-profile-designator> or +<relative-profile-designator> +value syntax and must refer to either (1) a standard, predefined +profile as defined by +or (2) a feasibly dereferenceable resource representing a valid +profile definition document instance. +In either case, the referenced profile serves as the baseline profile of the specifying ttp:profile element.

+ + +

Since the use attribute must refer to an entire (whole) profile definition document, +it cannot be used to refer to a top level profile or a nested profile. +This rules out using a use attribute which <uri> value contains a +fragment component.

+
+

If the use attribute is not specified, then the baseline profile of the ttp:profile element must be considered to be the empty (null) profile, i.e., an undesignated profile definition containing no From 6d87ef40709224f2702530e0098799d1b03b4f44 Mon Sep 17 00:00:00 2001 From: Glenn Adams Date: Sat, 3 Aug 2019 07:55:21 +0800 Subject: [PATCH 2/2] Remove temporary whitespace. --- spec/ttml2.xml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/spec/ttml2.xml b/spec/ttml2.xml index 164fc411f..ad003aaf4 100644 --- a/spec/ttml2.xml +++ b/spec/ttml2.xml @@ -4123,8 +4123,6 @@ be specified on a ttp:profile element that appears in a TTML profile definition document instance, and, if not specified, the defining context (e.g., an external specification) must specify a designator in its accompanying definition text.

- -

If specified, the use attribute must adhere to the <absolute-profile-designator> or <relative-profile-designator> @@ -4134,14 +4132,12 @@ or (2) a feasibly dereferenceable resource representing a valid profile definition document instance. In either case, the referenced profile serves as the baseline profile of the specifying ttp:profile element.

-

Since the use attribute must refer to an entire (whole) profile definition document, it cannot be used to refer to a top level profile or a nested profile. This rules out using a use attribute which <uri> value contains a fragment component.

-

If the use attribute is not specified, then the baseline profile of the ttp:profile element must be considered to be the empty (null) profile, i.e., an undesignated profile definition containing no