TTML Media Type Definition and Profile Registry

W3C Editor's Draft

This version:
https://w3c.github.io/tt-profile-registry/
Latest published version:
https://www.w3.org/TR/ttml-profile-registry/
Latest editor's draft:
https://w3c.github.io/tt-profile-registry/
Editors:
Glenn Adams (Skynav)
Mike Dolan (TBT)
Repository:
We are on Github.
File a bug.
Commit history.

Abstract

This document defines the application/xml+ttml media type and provides a registry of compact (short) identifiers that may be used to identify TTML processor profiles. A processor profile specifies a set of capabilities that a processor must support in order to process a document, where this profile may be defined in a specification document, in a TTML Profile Definition Document , inline within a TTML Document Instance, or by using a combination of these methods. This document only considers the first two of these methods since the third method (the use of inline profile definitions) is not considered to be an identifiable, shared profile definition, but rather, a private profile definition scoped to the document instance in which it is defined.

Status of This Document

This is a preview

Do not attempt to implement this version of the specification. Do not reference this version as authoritative in any way. Instead, see https://w3c.github.io/tt-profile-registry/ for the Editor's draft.

This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at https://www.w3.org/TR/.

Status of this Document

This is a registry and may be updated without any notices.

This document was published by the Timed Text Working Group as an Editor's Draft.

Comments regarding this document are welcome. Please send them to public-tt@w3.org ( archives ) with [TTML-Profile-Registry] at the start of your email's subject .

Publication as an Editor's Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

This document was produced by a group operating under the W3C Patent Policy . W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy .

This document is governed by the 1 February 2018 W3C Process Document .

1. Purpose

This section is non-normative.

A MIME type and subtype combination, application/ttml+xml , was initially defined in [ TTML1-1e ], Appendix C, and subsequently updated by [ TTML1-2e ] and [ TTML1-3e ] in order to identify the content type of TTML resources. In addition, TTML as well as other W3C and non- W3C specifications define a number of processor profiles which specify requirements on processors that may decode and process a TTML document. This document augments the definition of this MIME type by specifying a new codecs MIME type parameter and a set of publicly registered compact (short) identifiers to be used with this parameter during the exchange of TTML document entities.

In certain use cases, it is desirable for a processor to perform resource fetch, decode, and processing operations only if it can be determined that the referenced resource is tentatively processable. In order to satisfy such use cases, it is possible for the referencing context to enumerate one or more identified processor profiles, which, if supported by the processor, would allow a first-order determination to be made about whether a resource may be processed. We say first order here since during actual decoding of a TTML resource, the processor profile declarations contained within the resource may result in the resource being rejected.

This registry is intended to provide a central location for enumerating identified TTML profiles, or, more strictly speaking, TTML decoder/processors, where each entry in the registry identifies a particular profile which is understood to implement a processor capable of satisfying the constraints of a defined TTML processor profile that takes the form of a TTML Profile Definition Document. By utilizing a common registry, it is possible to avoid name collisions among different profile defining fora.

Note

In the context of this registry, the term profile means processor profile . It explicitly does not mean content profile . That is, nothing about the use of the profile parameter described here is intended to be used to identify or make claims about whether a TTML resource conforms with a TTML Content Profile or any type of TTML Profile that may be interpreted in whole or in part as making statements about the conformance of a TTML resource or the features of TTML (or other external specifications) actually used in the resource.

Applications using the entries in this registry are encouraged to adopt the following combination syntax:

Employ two combination operators, '+' (AND) and '|' (OR), which may be used to specify, respectively, that multiple processor profiles apply (simultaneously) or that any processor profile of a list of profiles may apply individually. If both operators are used in a codecs value, then the '+' operator has precedence.

The example: "A+B|C+D|E" states that a TTML processor that implements any one of A+B or C+D or E processor profiles satisfies the requirements to fetch and begin decode/processing of a TTML document, where X+Y means that both X and Y processor profiles must be supported, and X|Y means that either X or Y processor profile must be supported.

For more information about processor profile combination, see TTML2 Profile Combination (https://www.w3.org/TR/ttml2/#profile-attribute-processorProfileCombination) [ TTML2-1e ].

2. Media Type Registration

This section updates the media type, "application/ttml+xml" to add a new parameter, codecs . All other provisions of the media type specification remain the same. This updated registration supersedes the initial registration information specified in [ TTML1-1e ], Appendix C, as updated by [ TTML1-2e ], Appendix C.

This section is in conformance with BCP 13 and W3CRegMedia . The information that follows has been submitted to and accepted by the Internet Engineering Steering Group (IESG) for registration with the Internet Assigned Numbers Authority (IANA).

Type name:

application

Subtype name:

ttml+xml

Required parameters:

None.

Optional parameters:
charset

If specified, the charset parameter must match the XML encoding declaration, or if absent, the actual encoding. See also Encoding Considerations below.

profile

The document profile of a TTMLDocument Instance may be specified using an optional profile parameter, which, if specified, the value of which must adhere to the syntax and semantics of ttp:profile parameter defined by TTML 1.0 Second Edition, Section 6.2.8 ttp:profile of the published specification.

codecs

The optional codecs parameter provides a short form version of the profile parameter with multiple-profile combinatorial capability. If a short (4-character) form of a profile is registered in the TTML Profile Registry , it is recommended that this codecs parameter be used and not the profile parameter. The nominal value of this parameter is a single 4 character code from the registry.

Additionally, applications using the entries in the registry are encouraged to adopt the following combination syntax:

Employ two combination operators, '+' (AND) and '|' (OR), which may be used to specify, respectively, that multiple processor profiles apply (simultaneously) or that any processor profile of a list of profiles may apply individually. If both operators are used in a codecs value, then the '+' operator has precedence.

The example: "A+B|C+D|E" states that a TTML processor that implements any one of A+B or C+D or E processor profiles satisfies, at first order, the requirements to fetch and begin decode/processing of a TTML document, where X+Y means that both X and Y processor profiles must be supported, and X|Y means that either X or Y processor profile must be supported.

For more information about processor profile combination, see TTML2 Profile Combination .

Encoding considerations:

Same for application/xml, except constrained to either UTF-8 or UTF-16. See IETF RFC 7303, XML Media Types, Section 3.2 . For the purpose of filling out the IANA Application for Media Type (http://www.iana.org/cgi-bin/mediatypes.pl), the value binary applies.

Security considerations:

As with other XML types and as noted in IETF RFC 7303, XML Media Types, Section 10 , repeated expansion of maliciously constructed XML entities can be used to consume large amounts of memory, which may cause XML processors in constrained environments to fail.

In addition, because of the extensibility features for TTML and of XML in general, it is possible that "application/ttml+xml" may describe content that has security implications beyond those described here. However, TTML does not provide for any sort of active or executable content, and if the processor follows only the normative semantics of the published specification, this content will be outside TTML namespaces and may be ignored. Only in the case where the processor recognizes and processes the additional content, or where further processing of that content is dispatched to other processors, would security issues potentially arise. And in that case, they would fall outside the domain of this registration document.

Although not prohibited, there are no expectations that XML signatures or encryption would normally be employed.

Interoperability considerations:

The published specification describes processing semantics that dictate behavior that must be followed when dealing with, among other things, unrecognized elements and attributes, both in TTML namespaces and in other namespaces.

Because TTML is extensible, conformant "application/ttml+xml" processors may expect (and enforce) that content received is well-formed XML, but it cannot be guaranteed that the content is valid to a particular DTD or Schema or that the processor will recognize all of the elements and attributes in the document.

Published specification:

This media type registration is extracted from the TTML Profile Registry .

Applications that use this media type:

TTML is used in the television industry for the purpose of authoring, transcoding and exchanging timed text information and for delivering captions, subtitles, and other metadata for television material repurposed for the Web or, more generally, the Internet.

There is partial and full support of TTML in components used by several Web browsers plugins, and in a number of caption authoring tools.

Additional information:
Magic number(s):
File extension(s):

.ttml

Macintosh file type code(s):

"TTML"

Fragment identifiers:

For documents labeled as application/ttml+xml, the fragment identifier notation is intended to be used with xml:id attributes, as described in section 7.2.1 of the Timed Text Markup Language 1 (TTML1) specification.

Person & email address to contact for further information:

Timed Text Working Group (public-tt@w3.org)

Intended usage:

COMMON

Restrictions on usage:

None

Author:

The published specification is a work product of the World Wide Web Consortium's Timed Text (TT) Working Group.

Change controller:

The W3C has change control over this specification.

3. Registration Entry Requirements and Update Process

  1. Each entry must include a unique identification, where the scope of uniqueness is the set of identifiers defined in this registry. An identifier must conform with the element non-terminal of RFC6381 and, furthermore, may not contain any of the characters in the regular expression character class [+|].
  2. Each entry must include an absolute URI that serves as the TTML Profile Designator that identifies the processor profile.
  3. Each entry should include a link that references a TTML Profile Definition Document that formally specifies the processor profile using TTML profile definition vocabulary.
  4. Each entry should include a link that references a public available specification (PAS) that defines the identified processor profile.
  5. Each entry must include contact information of the requestor.

An update to this registry is an addition, change or deletion of an entry. Any person can request an update to this registry by email notice to the chairman of the Timed Text Working Group who will place it on an upcoming meeting agenda and notify the requestor. Consideration and disposition of the request is by consensus of the W3C Timed Text Working Group. The Chair will then notify the requestor of the outcome and update the registry accordingly. Although profiles can be deleted, there is no intent to re-use deleted profile values. That is, the intent is that profile entries are "stable".

4. Registry

This section is the registry of short form profile identifiers. The first sub-section details how such identifiers should be dereferenced to profile designators, the specifications that define those profiles, and the contact organisation for each profile. The second sub-section describes the mechanism used by each profile to permit identification of the profile of a TTML Document Instance by inspection of that document.

4.1 Profile designator and specifications

The following table defines the Profile Designator for each short form Profile Identifier in this Registry, alongside the public specification document in which the profile is defined, and the relevant contact organisation. Entries are ordered alphabetically according to the short profile identifier.

Profile Identifier Profile Designator Public Specification(s) Requestor Contact
cfi1 http://www.decellc.org/profile/cff-tt-image-1.1 [ UV-DMedia ] DECE
cft1 http://www.decellc.org/profile/cff-tt-text-1.1 [ UV-DMedia ] DECE
ede1 urn:IRT:ebu-tt-basic-de:2013-07 IRT Technical Guidelines IRT
etd1 urn:ebu:tt:distribution:2014-01 [ EBU-TT-D-1 ] EBU
etd2 urn:ebu:tt:distribution:2018-04 [ EBU-TT-D-1-0-1 ] EBU
etl1 urn:ebu:tt:live:2017-05 [ EBU-TT-Live-1-0 ] EBU
etx1 urn:ebu:tt:exchange:2012-07 [ EBU-TT-1-0 ] EBU
etx2 urn:ebu:tt:exchange:2015-09 [ EBU-TT-1-0 ] EBU
etx3 urn:ebu:tt:exchange:2017-05 [ EBU-TT-1-2 ] EBU
im1i http://www.w3.org/ns/ttml/profile/imsc1/image [ IMSC1.0.1 ] TTWG
im1t http://www.w3.org/ns/ttml/profile/imsc1/text [ IMSC1.0.1 ] TTWG
im2i http://www.w3.org/ns/ttml/profile/imsc1.1/image [ IMSC1.1 ] TTWG
im2t http://www.w3.org/ns/ttml/profile/imsc1.1/text [ IMSC1.1 ] TTWG
tt1f http://www.w3.org/ns/ttml/profile/dfxp-full [ TTML1-3e ] TTWG
tt1p http://www.w3.org/ns/ttml/profile/dfxp-presentation [ TTML1-3e ] TTWG
tt1s http://www.w3.org/ns/ttml/profile/sdp-us [ TTML1-SDP-US ] TTWG
tt1t http://www.w3.org/ns/ttml/profile/dfxp-transformation [ TTML1-3e ] TTWG

4.2 Path and value

The following table describes how to identify the profile of a given TTML Document Instance for each profile in this Registry, by inspecting the document, where possible. The XPATH defines where a profile-identifying value can be found within the document instance, and the Value column specifies the value that the resultant data has if the document instance claims conformance to the profile. Where a TTML Profile Definition Document is available this is also listed. Entries are ordered alphabetically according to the short profile identifier.

Profile Identifier XPATH to element or attribute* Value of element or attribute* Profile Definition Document
cft1 ... ... n/a
cfi1 ... ... n/a
ede1 /tt/preceding-sibling::comment()[1] Profile: EBU-TT-D-Basic-DE n/a
etd1 /tt/head/metadata/ebuttm:documentMetadata/ebuttm:documentEbuttVersion urn:ebu:tt:distribution:2014-01 n/a
etd2 /tt/head/metadata/ebuttm:conformsToStandard (preferred) or
/tt/head/metadata/ebuttm:documentMetadata/ebuttm:conformsToStandard (deprecated)
urn:ebu:tt:distribution:2018-04 n/a
etl1 /tt/head/metadata/ebuttm:conformsToStandard (preferred) or
/tt/head/metadata/ebuttm:documentMetadata/ebuttm:conformsToStandard (deprecated)
urn:ebu:tt:live:2017-05 n/a
etx1 /tt/head/metadata/ebuttm:documentMetadata/ebuttm:documentEbuttVersion v1.0 n/a
etx2 /tt/head/metadata/ebuttm:documentMetadata/ebuttm:documentEbuttVersion urn:ebu:tt:exchange:2015-09 n/a
etx3 /tt/head/metadata/ebuttm:conformsToStandard (preferred) or
/tt/head/metadata/ebuttm:documentMetadata/ebuttm:conformsToStandard (deprecated)
urn:ebu:tt:exchange:2017-05 n/a
im1i /tt/@ttp:profile http://www.w3.org/ns/ttml/profile/imsc1/image n/a
im1t /tt/@ttp:profile or
/tt/head/metadata/ebuttm:documentMetadata/ebuttm:conformsToStandard
http://www.w3.org/ns/ttml/profile/imsc1/text n/a
im2i /tt/@ttp:contentProfiles http://www.w3.org/ns/ttml/profile/imsc1.1/image n/a
im2t /tt/@ttp:contentProfiles http://www.w3.org/ns/ttml/profile/imsc1.1/text n/a
tt1f /tt/head/ttp:profile/@use or
/tt/@ttp:profile
http://www.w3.org/ns/ttml/profile/dfxp-full DFXP Full Profile
tt1p /tt/head/ttp:profile/@use or
/tt/@ttp:profile
http://www.w3.org/ns/ttml/profile/dfxp-presentation DFXP Presentation Profile
tt1s /tt/head/ttp:profile/@use http://www.w3.org/ns/ttml/profile/sdp-us SDP US Profile
tt1t /tt/head/ttp:profile/@use or
/tt/@ttp:profile
http://www.w3.org/ns/ttml/profile/dfxp-transformation DFXP Transformation Profile

The following considerations apply when resolving the XPATH expressions:

The elements ebuttm:conformsToStandard and ebuttm:documentMetadata are defined by [ EBU-TT-M ].

Note

The EBU-TT subtitle file format is intended for archiving, exchange and live subtitle transmission. [ EBU-TT-M ] defines metadata entities intended to support industry accepted practises established by legacy formats. In addition, where relevant, defined values for metadata entities have been extended from legacy uses to cater for subsequent developments in the broadcast industry (e.g. frame rates) since these legacy formats were standardised.

EBU-TT Metadata can be used in TTML documents other than EBU-TT profile documents.

A. References

A.1 Normative references

[EBU-TT-1-0]
EBU TECH 3350: "EBU-TT Subtitling format definition", Version 1.0 . European Broadcasting Union. July 2012. URL: https://tech.ebu.ch/docs/tech/tech3350v1-0.pdf
[EBU-TT-1-2]
EBU TECH 3350: "EBU-TT Subtitling format definition", Version 1.2 . European Broadcasting Union. May 2017. URL: https://tech.ebu.ch/docs/tech/tech3350v1-2.pdf
[EBU-TT-D-1]
EBU TECH 3380: "EBU-TT-D Subtitling Distribution Format", Version 1 . European Broadcasting Union. March 2015. URL: https://tech.ebu.ch/docs/tech/tech3380v1_0.pdf
[EBU-TT-D-1-0-1]
EBU TECH 3380: "EBU-TT-D Subtitling Distribution Format", Version 1.0.1 . European Broadcasting Union. May 2018. URL: https://tech.ebu.ch/docs/tech/tech3380v1_0_1.pdf
[EBU-TT-Live-1-0]
EBU TECH 3370: "EBU-TT, Part 3 Live Subtitling Applications", Version 1.0 . European Broadcasting Union. May 2017. URL: https://tech.ebu.ch/docs/tech/tech3370v1_0.pdf
[EBU-TT-M]
EBU TECH 3390: "EBU-TT, Part M Metadata Definitions" . European Broadcasting Union. May 2017. URL: https://tech.ebu.ch/docs/tech/tech3390.pdf
[IMSC1.0.1]
TTML Profiles for Internet Media Subtitles and Captions 1.0.1 (IMSC1) . Pierre-Anthony Lemieux. W3C. 24 April 2018. W3C Recommendation. URL: https://www.w3.org/TR/2018/REC-ttml-imsc1.0.1-20180424/
[IMSC1.1]
TTML Profiles for Internet Media Subtitles and Captions 1.1 . Pierre-Anthony Lemieux. W3C. 08 8 November 2018. W3C Recommendation. URL: https://www.w3.org/TR/2018/REC-ttml-imsc1.1-20181108/
[TTML1-1e]
Timed Text Markup Language (TTML) 1.0 . Glenn Adams. W3C. 18 November 2010. W3C Recommendation. URL: https://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/
[TTML1-2e]
Timed Text Markup Language (TTML) 1.0 (2nd 1 (TTML1) (Second Edition) . Glenn Adams. W3C. 24 September 2013. W3C Recommendation. URL: https://www.w3.org/TR/2013/REC-ttml1-20130924/
[TTML1-3e]
Timed Text Markup Language (TTML) 1.0 (3rd 1 (TTML1) (Third Edition) . Glenn Adams; Pierre-Anthony Lemieux. W3C. 08 8 November 2018. W3C Recommendation. URL: https://www.w3.org/TR/2018/REC-ttml1-20181108/
[TTML1-SDP-US]
TTML Simple Delivery Profile for Closed Captions (US) . Glenn Adams; Monica Martin; Sean Hayes. W3C. 05 5 February 2013. W3C Working Group Note. URL: https://www.w3.org/TR/2013/NOTE-ttml10-sdp-us-20130205/
[UV-DMedia]
Common File Format & Media Formats Specification version 2.2 . DECE. 31 July 2015. URL: http://uvcentral.com/sites/default/files/files/PublicSpecs/CFFMediaFormat-2_2.pdf

A.2 Informative references

[TTML2-1e]
Timed Text Markup Language 2 (TTML2) . Glenn Adams; Cyril Concolato. W3C. 08 8 November 2018. W3C Recommendation. URL: https://www.w3.org/TR/2018/REC-ttml2-20181108/