Copyright © 2006 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply.
This document specifies the distribution format exchange profile (DFXP) of the timed text authoring format (TT AF) in terms of a vocabulary and semantics thereof.
The timed text authoring format is a content type that represents timed text media for the purpose of interchange among authoring systems. Timed text is textual information that is intrinsically or extrinsically associated with timing information.
The Distribution Format Exchange Profile is intended to be used for the purpose of transcoding or exchanging timed text information among legacy distribution content formats presently in use for subtitling and captioning functions.
In addition to being used for interchange among legacy distribution
content formats, DFXP content may be used directly as a distribution format,
for example, providing a standard content format to reference from a
<text> or <textstream> media object
element in a [SMIL 2.1] document.
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 http://www.w3.org/TR/.
This is the 16 November 2006 Candidate Recommendation of the Timed Text (TT) Authoring Format 1.0 – Distribution Format Exchange Profile (DFXP). W3C publishes a Candidate Recommendation to indicate that the document is believed to be stable and to encourage implementation by the developer community. The Timed Text (TT) Working Group expects to request that the Director advance this document to Proposed Recommendation once the Working Group has, for each test in the DFXP 1.0 Test Suite, demonstrated support by two interoperable implementations. The Working Group, working closely with the developer community, expects to show these implementations by 16 February 2007. This estimate is based in part on the preliminary DFXP Interoperability Implementation Report. The Working Group does not plan to request to advance to Proposed Recommendation prior to 16 January 2007.
This is a W3C Candidate Recommendation. The second Last Call Working Draft for this specification resulted in a number of Last Call comments which have all been addressed by the working group; a list of all Last Call comments can be found in the Second Last Call Comments List. The list of changes made since the last public Working Draft is available in M.2 Changes from Second Last Call Working Draft to Candidate Recommendation.
During the first Last Call period of this specification, there were unsatisfied comments that the working group was unable to resolve in a manner that satisfied the commenter(s). The status of these comments has not changed during the second Last Call period, as the working group continues to stand by its original responses. See also the First Last Call Disposition of Comments for a complete discussion.
The dynamic flow processing feature, as specified by the tts:dynamicFlow styling
attribute vocabulary, see also B Dynamic Flow
Processing Model, has been determined to be at
risk, and is expected to be given the greatest scrutiny in the
implementation report.
Comments on this document should be sent to the email list public-tt@w3.org, which is the public
mailing list of Timed Text Working Group (list archives). To
subscribe, send an email to public-tt-request@w3.org with the
word subscribe in the subject line.
This document has been produced by the Timed Text (TT) Working Group as part of the W3C Synchronized Multimedia Activity, following the procedures set out for the W3C Process. The authors of this document are listed in the header of this document.
This document is governed by the 24 January 2002 CPP as amended by the W3C Patent Policy Transition Procedure. 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.
Publication as a Candidate Recommendation 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.
1 Introduction
1.1 System Model
1.2 Document Example
2 Definitions
2.1 Acronyms
2.2 Terminology
2.3 Documentation Conventions
3 Conformance
3.1 Content Conformance
3.2 Processor Conformance
3.3 Claims
4 Document Types
4.1 DFXP Content
5 Vocabulary
5.1 Namespaces
5.2 Profiles
5.3 Catalog
5.3.1 Core Catalog
5.3.2 Extension
Catalog
6 Parameters
6.1 Element
Vocabulary
6.2 Attribute
Vocabulary
6.2.1 ttp:cellResolution
6.2.2 ttp:clockMode
6.2.3 ttp:frameRate
6.2.4 ttp:frameRateMultiplier
6.2.5 ttp:markerMode
6.2.6 ttp:pixelAspectRatio
6.2.7 ttp:profile
6.2.8 ttp:smpteMode
6.2.9 ttp:subFrameRate
6.2.10 ttp:tickRate
6.2.11 ttp:timeBase
7 Content
7.1 Element Vocabulary
7.1.1 tt
7.1.2 head
7.1.3 body
7.1.4 div
7.1.5 p
7.1.6 span
7.1.7 br
7.2 Attribute
Vocabulary
7.2.1 xml:id
7.2.2 xml:lang
7.2.3 xml:space
8 Styling
8.1 Element Vocabulary
8.1.1 styling
8.1.2 style
8.2 Attribute
Vocabulary
8.2.1 style
8.2.2 tts:backgroundColor
8.2.3 tts:color
8.2.4 tts:direction
8.2.5 tts:display
8.2.6 tts:displayAlign
8.2.7 tts:dynamicFlow
8.2.8 tts:extent
8.2.9 tts:fontFamily
8.2.10 tts:fontSize
8.2.11 tts:fontStyle
8.2.12 tts:fontWeight
8.2.13 tts:lineHeight
8.2.14 tts:opacity
8.2.15 tts:origin
8.2.16 tts:overflow
8.2.17 tts:padding
8.2.18 tts:showBackground
8.2.19 tts:textAlign
8.2.20 tts:textDecoration
8.2.21 tts:textOutline
8.2.22 tts:unicodeBidi
8.2.23 tts:visibility
8.2.24 tts:wrapOption
8.2.25 tts:writingMode
8.2.26 tts:zIndex
8.3 Style Value
Expressions
8.3.1 <alpha>
8.3.2 <color>
8.3.3 <digit>
8.3.4 <duration>
8.3.5 <familyName>
8.3.6 <genericFamilyName>
8.3.7 <flowFunction>
8.3.8 <flowIntervalFunction>
8.3.9 <hexDigit>
8.3.10 <integer>
8.3.11 <length>
8.3.12 <namedColor>
8.3.13 <quotedString>
8.3.14 <string>
8.4 Style Association
8.4.1 Inline
Styling
8.4.2 Referential Styling
8.4.3 Chained Referential
Styling
8.5 Style Inheritance
8.5.1 Content
Style Inheritance
8.5.2 Region
Style Inheritance
9 Layout
9.1 Element Vocabulary
9.1.1 layout
9.1.2 region
9.2 Attribute
Vocabulary
9.2.1 region
9.3 Region Layout and
Presentation
9.3.1 Synchronic
Region Construction
9.3.2 Synchronic
Flow Processing
9.3.3 Elaborated
Example
9.4 Line Layout
10 Timing
10.1 Element Vocabulary
10.2 Attribute
Vocabulary
10.2.1 begin
10.2.2 end
10.2.3 dur
10.2.4 timeContainer
10.3 Time Value
Expressions
10.3.1 <timeExpression>
10.4 Time Intervals
11 Animation
11.1 Element
Vocabulary
11.1.1 set
11.2 Attribute
Vocabulary
12 Metadata
12.1 Element Vocabulary
12.1.1 metadata
12.1.2 ttm:title
12.1.3 ttm:desc
12.1.4 ttm:copyright
12.1.5 ttm:agent
12.1.6 ttm:name
12.1.7 ttm:actor
12.2 Attribute
Vocabulary
12.2.1 ttm:agent
12.2.2 ttm:role
A Reduced XML Infoset
A.1 Document Information
Item
A.2 Element Information
Item
A.3 Attribute Information
Item
A.4 Character Information
Item
B Dynamic Flow Processing Model
B.1 Introduction
B.2 Flow Buffer
B.3 Flow Interval
Timing Calculation
B.3.1 Computed Fill Timing
Interval
B.3.2 Computed Clear
Timing Interval
B.4 Flow Operations
B.4.1 Fill Operation
B.4.2 Reflow Operation
B.4.3 Clear Operation
B.5 Flow Timers
B.5.1 Fill Timer
B.5.2 Clear Timer
C Schemas
C.1 Relax NG Schema
C.1.1 Driver
C.1.2 Modules
C.1.2.1 Animation Module
C.1.2.2 Classes
Module
C.1.2.3 Content
Module
C.1.2.4 Core
Attributes Module
C.1.2.5 Data
Types Module
C.1.2.6 Document
Module
C.1.2.7 Header
Module
C.1.2.8 Layout
Module
C.1.2.9 Metadata
Module
C.1.2.10 Metadata Items Module
C.1.2.11 Metadata Attributes Module
C.1.2.12 Parameter Attributes Module
C.1.2.13 Styling Attributes Module
C.1.2.14 Styling
Module
C.1.2.15 Timing Attributes Module
C.2 XML Schema Definition (XSD)
Schema
C.2.1 Driver
C.2.2 Modules
C.2.2.1 Animation Module
C.2.2.2 Content
Module
C.2.2.3 Core
Attributes Module
C.2.2.4 Data
Types Module
C.2.2.5 Document
Module
C.2.2.6 Header
Module
C.2.2.7 Layout
Module
C.2.2.8 Metadata
Module
C.2.2.9 Metadata Items Module
C.2.2.10 Metadata Attributes Module
C.2.2.11 Parameter Attributes Module
C.2.2.12 Styling Attributes Module
C.2.2.13 Styling
Module
C.2.2.14 Timing Attributes Module
C.2.2.15 XML
Attributes Module
D Media Type Registration
E References
F Other References (Non-Normative)
G Sample Code (Non-Normative)
G.1 Reduced XML Infoset (RXI) – RXI.SCM
G.2 Abstract Document Instance (ADI)
– ADI.SCM
G.3 Time Interval Resolver (TIR)
– TIR.SCM
G.4 Flow Object Transformer (FOX)
– FOX.SCM
G.5 Dynamic Text Flow Processor (DTF)
– DTF.SCM
G.6 Sample Compile, Load, and Run Session
H Requirements (Non-Normative)
I Vocabulary Derivation (Non-Normative)
I.1 Element Derivation
I.2 Attribute Derivation
J QA Framework Compliance (Non-Normative)
J.1 Requirements
J.2 Guidelines
K Streaming DFXP Content (Non-Normative)
L Acknowledgments (Non-Normative)
M Change History (Non-Normative)
M.1 Changes from First to Second
Last Call Working Draft
M.2 Changes from Second Last Call
Working Draft to Candidate Recommendation
Unless specified otherwise, this section and its sub-sections are non-normative.
The Timed Text Authoring Format (TT AF) Distribution Format Exchange Profile (DFXP) provides a standardized representation of a particular subset of textual information with which stylistic, layout, and timing semantics are associated by an author or an authoring system for the purpose of interchange and potential presentation.
DFXP is expressly designed to meet only a limited set of requirements established by [TTAF1-REQ], and summarized in H Requirements. In particular, only those requirements which service the need of performing interchange with existing, legacy distribution systems are satisfied.
In addition to being used for interchange among legacy distribution
content formats, DFXP content may be used directly as a distribution format,
providing, for example, a standard content format to reference from a
<text> or <textstream> media object
element in a [SMIL 2.1] document. Certain properties of
DFXP support streamability of content, as described in K Streaming DFXP Content.
Note:
While DFXP was not expressly designed for direct (embedded) integration into a SMIL document instance, such integration is not precluded.
Note:
In some contexts of use, it may be appropriate to employ animated content to depict sign language representations of the same content as expressed by a Timed Text document instance. This use case is not explicitly addressed by DFXP mechanisms, but may be addressed by some external multimedia integration technology, such as SMIL.
Use of DFXP is intended to function in a wider context of Timed Text Authoring and Distribution mechanisms that are based upon a system model, depicted in Figure 1 – System Model, wherein the timed text authoring format serves as a bidirectional interchange format among a heterogeneous collection of authoring systems, and as a unidirectional interchange format to a heterogeneous collection of distribution formats after undergoing transcoding or compilation to the target distribution formats as required, and where one particular distribution format is DFXP.
![]() |
A DFXP document instance consists of a tt document element
that contains a header and a body, where the header specifies document level
metadata, styling definitions and layout definitions, and the body specifies
text content intermixed with references to style and layout information and
inline timing information.
<tt xml:lang="" xmlns="http://www.w3.org/2006/10/ttaf1">
<head>
<metadata/>
<styling/>
<layout/>
</head>
<body/>
</tt>
|
Document level metadata may specify a document title, description, and copyright information. In addition, arbitrary metadata drawn from other namespaces may be specified.
<metadata xmlns:ttm="http://www.w3.org/2006/10/ttaf1#metadata"> <ttm:title>Timed Text DFXP Example</ttm:title> <ttm:copyright>The Authors (c) 2006</ttm:copyright> </metadata> |
Styling information may be specified in the form of style specification definitions that are referenced by layout and content information.
In Example Fragment – DFXP Styling, four style sets of specifications are defined, with one set serving as a collection of default styles.
<styling xmlns:tts="http://www.w3.org/2006/10/ttaf1#style">
<!-- s1 specifies default color, font, and text alignment -->
<style xml:id="s1"
tts:color="white"
tts:fontFamily="proportionalSansSerif"
tts:fontSize="22px"
tts:textAlign="center"
/>
<!-- alternative using yellow text but otherwise the same as style s1 -->
<style xml:id="s2" style="s1" tts:color="yellow"/>
<!-- a style based on s1 but justified to the right -->
<style xml:id="s1Right" style="s1" tts:textAlign="end" />
<!-- a style based on s2 but justified to the left -->
<style xml:id="s2Left" style="s2" tts:textAlign="start" />
</styling>
|
Layout information defines one or more regions into which content is
intended to be presented. A region definition may reference one or more sets
of style specifications in order to permit content flowed in the region to
inherit from these styles. In Example
Fragment – DFXP Layout, the region definition makes reference to
style specification s1 which allows all content flowed into the
region to inherit from the region's styles (in the case that a style is not
already explicitly specified on content or inherited via the content
hierarchy.)
<layout xmlns:tts="http://www.w3.org/2006/10/ttaf1#style">
<region xml:id="subtitleArea"
style="s1"
tts:extent="560px 62px"
tts:padding="5px 3px"
tts:backgroundColor="black"
tts:displayAlign="after"
/>
</layout>
|
The content of a DFXP document instance is expressed in its body, which is
organized in terms of block and inline text elements. The hierarchical
organization of content elements serves a primary role in determining both
spatial and temporal relationships. For example, in Example Fragment – DFXP Body, each
paragraph (p element) is flowed into its target region in the
specified lexical order; furthermore, the active time interval of each
paragraph is timed in accordance to its parent or sibling according to the
applicable time containment semantics — in this case, the division parent
is interpreted as a parallel time container.
<body region="subtitleArea">
<div>
<p xml:id="subtitle1" begin="0.76s" end="3.45s">
It seems a paradox, does it not,
</p>
<p xml:id="subtitle2" begin="5.0s" end="10.0s">
that the image formed on<br/>
the Retina should be inverted?
</p>
<p xml:id="subtitle3" begin="10.0s" end="16.0s" style="s2">
It is puzzling, why is it<br/>
we do not see things upside-down?
</p>
<p xml:id="subtitle4" begin="17.2s" end="23.0s">
You have never heard the Theory,<br/>
then, that the Brain also is inverted?
</p>
<p xml:id="subtitle5" begin="23.0s" end="27.0s" style="s2">
No indeed! What a beautiful fact!
</p>
<p xml:id="subtitle6a" begin="28.0s" end="34.6s" style="s2Left">
But how is it proved?
</p>
<p xml:id="subtitle6b" begin="28.0s" end="34.6s" style="s1Right">
Thus: what we call
</p>
<p xml:id="subtitle7" begin="34.6s" end="45.0s" style="s1Right">
the vertex of the Brain<br/>
is really its base
</p>
<p xml:id="subtitle8" begin="45.0s" end="52.0s" style="s1Right">
and what we call its base<br/>
is really its vertex,
</p>
<p xml:id="subtitle9a" begin="53.5s" end="58.7s">
it is simply a question of nomenclature.
</p>
<p xml:id="subtitle9b" begin="53.5s" end="58.7s" style="s2">
How truly delightful!
</p>
</div>
</body>
|
The first subtitle Subtitle 1 –
Time Interval [0.76, 3.45) is presented during the time interval 0.76
to 3.45 seconds. In this example, the default metric for time expressions is
seconds since no metric is specified in the expressions. This subtitle
inherits its font family, font size, foreground color, and text alignment
from the region into which it is presented. Since no region is explicitly
specified on the paragraph, the nearest ancestor that specifies a region
determines the region. Note also that content is presented at the bottom
(after edge) of the containing region due to the
tts:displayAlign="after" being specified on the region
definition.
Note:
The notation "[X,Y]" denotes a closed interval from X to Y, including X and Y; "[X,Y)" denotes a right half-open interval from X to Y, including X but not including Y; "(X,Y]" denotes a left half-open interval from X to Y, not including X but including Y; "(X,Y)" denotes an open interval from X to Y, not including X or Y.
![]() |
The second subtitle continues with the default style, except that it
contains two lines of text with an intervening author-specified line break.
Note the effects of the use of tts:textAlign="center" to specify
the paragraph's alignment in the inline progression direction.
![]() |
The third subtitle continues, using a variant style which overrides the default style's foreground color with a different color.
![]() |
The fourth subtitle reverts to the default style.
![]() |
The fifth subtitle continues, again using a variant style which overrides the default style's foreground color with a different color.
![]() |
During the next active time interval, two distinct subtitles are simultaneously active, with the paragraph expressing each subtitle using a different style that overrides color and paragraph text alignment of the default style. Note that the flow order is determined by the lexical order of elements as they appear in the content hierarchy.
![]() |
The next subtitle is specified in a similar manner using a style override to give a paragraph right (end) justified in the inline progression direction.
![]() |
The eighth subtitle uses the same style override as the previous subtitle in order to maintain the right (end) justification of the paragraph.
![]() |
During the final (ninth) active time interval, two distinct subtitles are again simultaneously active, but with a different style applied to the second paragraph to override the default color. Note that the flow order is determined by the lexical order of elements as they appear in the content hierarchy.
![]() |
The examples shown above demonstrate the primary types of information that may be authored using DFXP: metadata, styling, layout, timing, and content. In typical cases, styling and layout information are separately specified in a document instance. Content information is expressed in a hierarchical fashion that embodies the organization of both spatial (flow) and timing information. Content makes direct or indirect references to styling and layout information and may specify inline overrides to styling.
| DFXP | Distribution Format Exchange Profile |
| TT | Timed Text |
| TT AS | Timed Text Authoring System |
| TT AF | Timed Text Authoring Format |
| TT WG | Timed Text Working Group |
An instance of an abstract data set as represented by a Reduced XML Infoset.
A set of constraints that defines a class of XML Information Sets [XML InfoSet].
Each specified or defaulted attribute of an XML document corresponds with an attribute information item as defined by [XML InfoSet], §2.3.
Each data character appearing in an XML document corresponds with a character information item as defined by [XML InfoSet], §2.6.
A logical region into which rendered content is placed when modeling or performing presentation processing.
Each element appearing in an XML document corresponds with an element information item as defined by [XML InfoSet], §2.2.
A profile (subset) of the TT AF that serves a set of needs for content exchange.
A logical construct that models authorial intention regarding desired or potential presentation processing, and which is represented as a rectangular area of a presentation surface into which content is composed and rendered during presentation processing.
An XML Information Set [XML InfoSet] that satisfieds the constraints specify by A Reduced XML Infoset.
A logical region that establishes a coordinate system into which content regions are placed and optionally clipped.
Textual information that is intrinsically or extrinsically associated with timing information.
A content type that represents timed text media for the purpose of interchange among authoring systems.
A content authoring system capable of importing and exporting timed text authoring format content.
Within normative prose in this specification, the words may, should, and must are defined as follows:
Conforming documents and/or TT AF processors are permitted to, but need not behave as described.
Conforming documents and/or TT AF processors are strongly recommended to, but need not behave as described.
Conforming documents and/or TT AF processors are required to behave as described; otherwise, they are in error.
All normative syntactic definitions of XML representations and other related terms are depicted with a light orange background color and labeled as "XML Representation" or "Syntax Representation", such as in the following:
<example
count = integer
size = (large|medium|small) : medium>
Content: (all | any*)
</example>
|
In an XML representation, bold-face attribute names (e.g. count above) indicate a required attribute information
item, and the rest are optional. Where an attribute information item has an
enumerated type definition, the values are shown separated by vertical bars,
as for size above; if there is a default value, it is shown
following a colon. Where an attribute information item has a built-in simple
type definition defined in [XML Schema Part 2], a
hyperlink to its definition therein is given.
The allowed content of the information item is shown as a grammar
fragment, using the Kleene operators ?, * and
+. Each element name therein is a hyperlink to its own
illustration.
All content of this specification that is not explicitly marked as non-normative is considered to be normative. If a section or appendix header contains the the expression "Non-Normative", then the entirety of the section or appendix is considered non-normative.
All paragraphs marked as a Note are considered non-normative.
Example code fragments are depicted with a light blue-green background color and labeled as "Example Fragment", such as in the following:
<tt xml:lang="" xmlns="http://www.w3.org/2006/10/ttaf1">
<head>
<metadata/>
<styling/>
<layout/>
</head>
<body/>
</tt>
|
This section specifies the general conformance requirements for TT AF content and processors.
A TT AF document instance conforms to this specification if the following criteria are satisfied:
When transporting a document instance in a context in which a MIME
Media Type [MIME] identifies the content type
of the interchanged document instance, then the specified media type is
application/ttaf+xml in conformance with [XML Media Types] § 7, with which an optional
profile parameter may appear, the value of which conforms to
the values defined by 5.2
Profiles.
The document instance is or can be represented as a Reduced XML Infoset as defined by A Reduced XML Infoset.
The Reduced XML Infoset that corresponds to the document instance is or can be associated with one of the TT AF Abstract Document Types defined by 4 Document Types.
The Reduced XML Infoset that corresponds to the document instance is a Valid Abstract Document Instance of the associated Abstract Document Type.
The Reduced XML Infoset satisfies all additional mandatory syntactic and semantic constraints defined by this specification. In addition, this Infoset should satisfy the web content accessibility guidelines specified by [WCAG].
A TT AF processor conforms to this specification if the following criteria are satisfied:
The processor provides at least one mechanism for notionally instantiating a Reduced XML Infoset representation of a conformant TT AF document instance.
If a process does or can perform validation of a candidate TT AF document instance, then it provides at least one mechanism to implicitly or explicitly associate the Reduced XML Infoset representation of a conformant TT AF document instance with one of the TT AF Abstract Document Types defined by 4 Document Types.
The processor does not a priori reject or abort the processing of a conformant TT AF document instance.
The processor supports all mandatory processing semantics defined by this specification.
If the processor claims to support presentation processing in order to produce a rendition of TT AF content on a visual medium, then it must implement the region and line layout semantics defined by 9.3 Region Layout and Presentation and 9.4 Line Layout, respectively. In addition, the processor should satisfy the user agent accessibility guidelines specified by [UAAG].
If the processor supports some optional processing semantics defined by this specification, then it does so in a manner consistent with the defined semantics.
Any claim of compliance with respect to TT AF content or processor conformance must make reference to an implementation compliance statement (ICS).
An implementation compliance statement must identify all mandatory and optional features of this specification that are satisfied by the content or processor implementation. In particular, the statement must identify the utilized or supported TT AF vocabulary profile(s) as defined by 5.2 Profiles, and, if a subset or superset profile is used or supported, then what features are excluded or included in the subset or superset profile.
A TT AF document instance for which a compliance claim is made must
specify a ttp:profile attribute on its root element as defined
by 6.2.7 ttp:profile.
This section defines the following TT AF Abstract Document Types:
Each abstract document type consists of the following constraints:
a non-empty collection of element types, where each element type consists of a name, a (possibly empty) collection of attributes, and a content specification
a non-empty collection of element types that may appear as the document element
An Abstract Document Instance may be assessed in terms of validity, and is considered to be a Valid Abstract Document Instance if it satisfies the following condition: if after
pruning all element information items whose names are not members of the collection of element types defined by the associated abstract document type, then
pruning character information item children from any remaining element in case that all character children of the element denote XML whitespace characters and the element's type is defined as empty in the associated Abstract Document Type, and then
pruning all attribute information items having expanded names such that the namespace URI of the expanded names are not listed in Table 1 – Namespaces,
then the document element is one of the document element types permitted by the associated abstract document type, the descendants of the document element satisfy their respective element type's content specifications, all required attributes are present, and the declared value of each attribute satisfies the type declared by the associated abstract document type.
Note:
While a conformant processor may not a priori reject a conformant document instance, a given document instance may be constrained by the author or authoring tool to satisfy a more restrictive definition of validity.
DFXP Content is an abstract document type of the Timed Text Authoring Format intended to be used for interchange among distribution systems. This document type is defined in terms of the element and attribute vocabulary specified in 5 Vocabulary.
This specification defines two types of normative schemas that may be used to validate a subset of conformant DFXP document instances:
The (root) document element of a DFXP document instance must be a
tt element, as defined by 7.1.1 tt.
This section defines the namespaces, profiles, and vocabulary (as an element an attribute catalog) of the Timed Text Authoring Format (TT AF) as follows:
The Timed Text Authoring Format (TT AF) employs a number of namespaces for elements and certain global attributes. The following table specifies this set of namespaces and indicates the default prefix used within this specification and the normative URI that denotes each namespace.
Note:
In a specific document instance, it is not required that the default prefixes shown below are used. Any prefix or namespace binding that satisfies the constraints of XML Namespaces may be used that is associated with the specified namespace URI.
| Name | Prefix | Value |
|---|---|---|
| TT | tt: |
http://www.w3.org/2006/10/ttaf1 |
| TT Parameter | ttp: |
http://www.w3.org/2006/10/ttaf1#parameter |
| TT Style | tts: |
http://www.w3.org/2006/10/ttaf1#style |
| TT Style Extensions | ttsx: |
http://www.w3.org/2006/10/ttaf1#style-extension |
| TT Metadata | ttm: |
http://www.w3.org/2006/10/ttaf1#metadata |
| TT Metadata Extensions | ttmx: |
http://www.w3.org/2006/10/ttaf1#metadata-extension |
Note:
If a reference to an element type is used in this specification and the name of the element type is not namespace qualified, then the TT Namespace applies.
The Timed Text Authoring Format (TT AF) employs a number of profiles of its vocabulary and associated semantics. The following table specifies this set of profiles and indicates a normative name for each profile.
| Name | Value |
|---|---|
| DFXP | http://www.w3.org/2006/10/ttaf1#profile-dfxp |
A convention is defined for use by content authors to indicate use of a
subtractive or additive delta to a predefined profile by using an optional
sub-profile suffix of a profile URI: if a sub-profile is subtractive
(results in a proper subset), then the sub-profile is expressed as
"-token"; if additive (results in a proper superset), then it is expressed as
"+token", where token expresses an author determined sub-profile
that adheres to the xsd:NCName data type defined in [XML Schema Part 2], §3.3.7.
All tokens used in a sub-profile suffix that do not start with the prefix
x- are reserved for future standardization.
The profile of a document instance is specified using a
ttp:profile attribute as defined by 6.2.7 ttp:profile.
Note:
A TT AF authoring system may indicate the profile of TT AF used in a
document instance by specifying a ttp:profile attribute. A TT AF
content processor may make use of this profile value to associate a document
instance with a schema or processing functions.
An example of an author defined "tiny" subtractive sub-profile of DFXP is shown below in Example Fragment – DFXP Subtractive Profile.
<tt ttp:profile="http://www.w3.org/2006/10/ttaf1#profile-dfxp-x-tiny" xml:lang="" xmlns="http://www.w3.org/2006/10/ttaf1" xmlns:ttp="http://www.w3.org/2006/10/ttaf1#parameter"> ... </tt> |
Note:
Because the above example is an author defined sub-profile (as opposed to
a future W3C defined profile), the sub-profile token contains the prefix
x-.
The vocabulary of the Timed Text Authoring Format (TT AF) is defined in the following major catalogs (divisions of vocabulary):
The core catalog defines the baseline, core vocabulary of the TT AF, and, in particular, the vocabulary of DFXP. The extensions catalog serves as a placeholder for extensions to the core vocabulary defined by DFXP.
The core vocabulary catalog is intended to satisfy the needs of DFXP while providing a baseline vocabulary for future profiles. This vocabulary is divided into distinct categories, specified in detail in the following sections:
The core element vocabulary specified for use with a TT AF document instance is enumerated in Table 3 – Element Vocabulary.
| Module | Elements |
|---|---|
| Animation | set |
| Content | body, div, p, span, br |
| Document | tt |
| Head | head |
| Layout | layout, region |
| Metadata | metadata |
| Metadata Items | ttm:actor, ttm:agent, ttm:copyright, ttm:desc, ttm:name, ttm:title |
| Styling | styling, style |
Element vocabulary groups that are used in defining content models for TT AF element types are enumerated in Table 4 – Element Vocabulary Groups.
| Group | Elements |
|---|---|
| Animation.class | set |
| Block.class | div | p |
| Inline.class | span
| br |
#PCDATA |
| Metadata.class | metadata | ttm:agent | ttm:copyright | ttm:desc | ttm:title |
The attribute vocabulary specified for use with the core vocabulary catalog is enumerated in Table 5 – Attribute Vocabulary.
| Module | Attributes |
|---|---|
| Core Attributes | xml:id, xml:lang, xml:space |
| Layout | region |
| Metadata Attributes | ttm:agent, ttm:role |
| Parameter Attributes | ttp:cellResolution, ttp:clockMode, ttp:frameRate, ttp:frameRateMultipler, ttp:markerMode, ttp:pixelAspectRatio, ttp:profile, ttp:smpteMode, ttp:subFrameRate, ttp:tickRate, ttp:timeBase |
| Styling | style |
| Styling Attributes | tts:backgroundColor, tts:color, tts:direction, tts:display, tts:displayAlign, tts:dynamicFlow, tts:extent, tts:fontFamily, tts:fontSize, tts:fontStyle, tts:fontWeight, tts:lineHeight, tts:opacity, tts:origin, tts:overflow, tts:padding, tts:showBackground, tts:textAlign, tts:textDecoration, tts:textOutline, tts:unicodeBidi, tts:visibility, tts:wrapOption, tts:writingMode, tts:zIndex |
| Timing Attributes | begin, dur, end, timeContainer |
Note:
All vocabulary defined by the TT AF consistently makes use of the so-called lowerCamelCase naming convention. In some cases, this results in the change of a name when the name was based upon another specification that used a different naming convention.
The extension vocabulary catalog is intended for use by future profiles of the TT AF.
In this version of this specification, no standardized extension vocabulary is defined. Two namespaces are specifically reserved by Table 1 – Namespaces for metadata and style extension vocabulary:
TT Style Extensions
TT Metadata Extensions
In addition to standardized extension vocabulary, a conforming TT AF document instance may contain arbitrary namespace qualified elements that reside in any namespace other than those namespaces defined for use with this specification. Furthermore, a conforming TT AF document instance may contain arbitrary namespace qualified attributes on TT AF defined vocabulary where such attributes reside in any namespace other than those defined for use with this specification.
This section specifies the parameters matter of the core vocabulary catalog, where parameters are to be understood as information that is either (1) essential or (2) of significant importance for the purpose of interpreting the semantics of other types of information expressed by core vocabulary items or for establishing a processing context by means of which TT AF content can be related to an external environment.
No parameters related element vocabulary is defined for use in the core vocabulary catalog.
The following attributes are defined in the TT Parameter Namespace.
Unless explicitly stated otherwise, linear white-space (LWSP) may appear between tokens of a value of a TT Parameter.
The ttp:cellResolution attribute may be used by an author to
express the number of horizontal and vertical cells into which the root
container region area is divided for the purpose of expressing presentation
semantics in terms of a uniform grid.
If specified, the value of this attribute must adhere to the following syntax:
ttp:cellResolution : columns rows // columns != 0; rows != 0 columns | rows : <digit>+ |
If not specified, the number of columns and rows must be considered to be 32 and 15, respectively. If specified, then columns or rows must not be zero (0).
Note:
The choice of values 32 and 15 are based on this being the maximum number of columns and rows defined by [CEA-608-C].
A ttp:cellResolution attribute is considered to be
significant only when specified on the tt element.
Note:
The use of a uniform grid is employed only for the purpose of measuring lengths and expressing coordinates. In particular, it is not assumed that the presentation of text or the alignment of individual glyph areas is coordinated with this grid. Such alignment is possible, but requires the use of a monospaced font and a font size whose EM square exactly matches the cell size.
The ttp:clockMode attribute is used to specify the
interpretation of time expressions as real-time time coordinates when
operating with time base of clock as defined by 6.2.11 ttp:timeBase.
Note:
See 10.3 Time Value Expressions for the specification of time expression syntax.
If specified, the value of this attribute must adhere to the following syntax:
ttp:clockMode : "local" | "gps" | "utc" |
If the time base, defined by 6.2.11 ttp:timeBase, is
designated as clock, then this parameter applies as follows: if
the parameter's value is local, then time expressions are
interpreted as local wall-clock time coordinates; if utc, then
time expressions are interpreted as UTC time coordinates [UTC]; if gps, then time expressions are
interpreted as GPS time coordinates [GPS].
Note:
The primary difference between GPS time and UTC time is that GPS time is not adjusted for leap seconds, while UTC time is adjusted as follows: UTC = TAI (Temp Atomique International) + leap seconds accumulated since 1972. TAI is maintained by the Bureau International des Poids et Mesures (BIPM) in Sevres, France. The GPS system time is steered to a Master Clock (MC) at the US Naval Observatory which is kept within a close but unspecified tolerance of TAI.
If not specified, the value of this parameter must be considered to be
utc.
A ttp:clockMode attribute is considered to be significant
only when specified on the tt element.
The ttp:frameRate attribute is used to specify the frame rate
of a related media object or the intrinsic frame rate of a document instance
in case it is intended to function as an independent media object.
If specified, the value of this attribute must adhere to the following syntax:
ttp:frameRate : <digit>+ // value > 0 |
The frame rate that applies to a document instance is used to interpret time expressions that are expressed in frames as defined by 10.3.1 <timeExpression>.
A frame is interpreted as a division of a second of media time, such that if the frame rate is specified as F, then a second of media time is divided into F intervals of equal duration, where each interval is labeled as frame f, with f ∈ [0…F−1].
If not specified, the frame rate must be considered to be equal to some application defined frame rate, or if no application defined frame rate applies, then thirty (30) frames per second. If specified, then the frame rate must be greater than zero (0).
A ttp:frameRate attribute is considered to be significant
only when specified on the tt element.
The ttp:frameRateMultiplier attribute is used to specify a
multiplier to be applied to the frame rate specified by a
ttp:frameRate attribute in order to compute the effective frame
rate.
If specified, the value of this attribute must adhere to the following syntax:
ttp:frameRateMultiplier : numerator ( ":" denominator )? // denominator != 0 numerator | denominator : <digit>+ |
A frame rate multiplier is used when the desired frame rate cannot be expressed as an integral number of frames per second.
If not specified, the frame rate multiplier must be considered to be equal to one (1:1). If a denominator is specified, then it must not be zero (0).
A ttp:frameRateMultiplier attribute is considered to be
significant only when specified on the tt element.
Note:
The frame rate multiplier used for synchronizing with NTSC [SMPTE 170M] formatted video objects at 30 frames per second is nominally 1000:1001. The nominal frame rate of NTSC video is defined as the chrominance sub-carrier frequency of 3,579,545.45…Hz (= 5.0MHz × 63/88) times the ratio 2/455 divided by the number of horizontal lines per frame of 525, which yields a frame rate of 29.970029970029… (= 30 × 1000/1001) frames per second. Other frame rate multipliers apply to different regions of usage and video format standards.
Note:
Except in the case of PAL/M, the frame rate multiplier used for synchronizing with PAL formatted video objects at 25 frames per second is nominally 1:1.
The ttp:markerMode attribute is used to specify constraints
on the interpretation and use of time expressions that correspond with [SMPTE 12M] time coordinates when operating with time
base of smpte as defined by 6.2.11 ttp:timeBase.
If specified, the value of this attribute must adhere to the following syntax:
ttp:markerMode : "continuous" | "discontinuous" |
If the time base, defined by 6.2.11 ttp:timeBase, is
designated as smpte, then this parameter applies as follows: if
the parameter's value is continuous, then [SMPTE 12M] time coordinates may be assumed to be linear
and either monotonically increasing or decreasing; however, if
discontinuous, then any assumption must not be made regarding
linearity or monotonicity of time coordinates.
If not specified, the value of this parameter must be considered to be
continuous.
A ttp:markerMode attribute is considered to be significant
only when specified on the tt element.
If a value of discontinuous applies, then time expressions
must not be converted to either media time or real time coordinates,
arithmetical operators (addition, multiplication) are not defined on time
expressions, and, consequently, any expression of a duration must be
ignored.
Note:
When operating with smpte time base and
discontinuous marker mode, there is no effective time coordinate
space; rather, all time expressions are interpreted as labeled
synchronization events (markers), where some external synchronization context
emits these events, which, when they correspond with time expressions that
denote the same label, cause a temporal interval to begin or end
accordingly.
An additional side-effect of operating in discontinuous mode
is that time expressions of children have no necessary relationship with time
expressions of their temporal container; that is, temporal containers and
children of these containers are temporally activated and inactivated
independently based on the occurrence of a labeled synchronization (marker)
event.
Note:
The notion of marker discontinuity as captured by this parameter is
logically independent from the method used to count frames as expressed by
the ttp:smpteMode parameter. In particular, even if the
ttp:smpteMode parameter is specified as dropNTSC or
dropPAL, the marker mode may be specified as
continuous, even in the presence of frame count discontinuities
induced by the frame counting method, unless there were some other
non-linearity or discontinuity in marker labeling, for example, two
consecutive frames labeled as 10:00:00:00 and
10:00:01:00.
The ttp:pixelAspectRatio attribute may be used by a content
author to express the aspect ratio of non-square pixels in the production of
content that makes use of pixel coordinates.
If specified, the value of this attribute must adhere to the following syntax:
ttp:pixelAspectRatio : width ":" height // width != 0; height != 0 width | height : <digit>+ |
If not specified, then square pixels (i.e., aspect ratio 1:1) must be assumed to apply. If specified, then width or height must not be zero.
A ttp:pixelAspectRatio attribute is considered to be
significant only when specified on the tt element.
Note:
This parameter may be used by a content transcoder or translator in order to convert pixel measurements between different pixel aspect ratios while still maintaining authorial layout intentions.
The ttp:profile attribute may be used by a content author to
express the profile of the Timed Text Authoring Format (TT AF) used in a
document instance.
If specified, the value of this attribute must adhere to the
xsd:anyURI data type defined by [XML Schema
Part 2], §3.2.17, and, further, must specify a profile URI as defined by
5.2 Profiles.
If not specified, then the Distribution Format Exchange Profile (DFXP) must be assumed to apply.
A ttp:profile attribute is considered to be significant only
when specified on the tt element.
The ttp:smpteMode attribute is used to specify constraints on
the interpretation and use of frame counts that correspond with [SMPTE 12M] time coordinates when operating with time
base of smpte as defined by 6.2.11 ttp:timeBase.
If specified, the value of this attribute must adhere to the following syntax:
ttp:smpteMode : "dropNTSC" | "dropPAL" | "nonDrop" |
If the time base, defined by 6.2.11 ttp:timeBase, is
designated as smpte, then this parameter applies as follows: if
the parameter's value is nonDrop, then, within any given second
of a time expression, frames count from 0 to N−1, where N
is the value specified by the ttp:frameRate parameter, but while
ignoring any value specified by the ttp:frameRateMultiplier
parameter.
Note:
When operating in nonDrop mode, a second of a time expression
may or may not be equal to a second of real time during normal (1x speed)
forward playback. If the ttp:frameRateMultiplier parameter is
specified and is not equal to 1:1, then a second of a time expression will
either be shorter or longer than a second of elapsed play in real time.
If this parameter's value is dropNTSC, then, within any given
second of a time expression except the second 00, frames count
from 0 to N−1, where N is the value specified by the
ttp:frameRate parameter, but while ignoring any value specified
by the ttp:frameRateMultiplier parameter. If the second of a
time expression is 00 and the minute of the time expression is
not 00, 10, 20, 30,
40, or 50, then frame codes 00 and
01 are dropped during that second; otherwise, these frame codes
are not dropped.
Note:
For example, when operating in dropNTSC mode with
ttp:frameRate of 30, a discontinuity in frame count
occurs between consecutive frames as shown in the following sequence of time
expressions: 01:08:59:28, 01:08:59:29,
01:09:00:02, 01:09:00:03.
If this parameter's value is dropPAL, then, within any given
second of a time expression except the second 00, frames count
from 0 to N−1, where N is the value specified by the
ttp:frameRate parameter, but while ignoring any value specified
by the ttp:frameRateMultiplier parameter. If the second of a
time expression is 00 and the minute of the time expression is
even but not 00, 20, or 40, then frame
codes 00 through 03 are dropped during that second;
otherwise, these frame codes are not dropped.
Note:
For example, when operating in dropPAL mode with
ttp:frameRate of 30, a discontinuity in frame count
occurs between consecutive frames as shown in the following sequence of time
expressions: 01:09:59:28, 01:09:59:29,
01:10:00:04, 01:10:00:04.
Note:
The dropPAL mode is also known as the M/PAL or
PAL (M) drop-frame code, which uses PAL modulation with the NTSC
frame rate of ~29.97 frames/second. The M/PAL system is used primarily in
Brazil.
If not specified, then nonDrop must be assumed to apply.
A ttp:smpteMode attribute is considered to be significant
only when specified on the tt element.
The ttp:subFrameRate attribute is used to specify the
sub-frame rate of a related media object or the intrinsic sub-frame rate of a
document instance in case it is intended to function as an independent media
object.
If specified, the value of this attribute must adhere to the following syntax:
ttp:subFrameRate : <digit>+ // value > 0 |
The sub-frame rate that applies to a document instance is used to interpret time expressions that are expressed in sub-frames as defined by 10.3.1 <timeExpression>.
A sub-frame is interpreted as a division of a frame of media time, such that if the sub-frame rate is specified as S, then a frame of media time is divided into S intervals of equal duration, where each interval is labeled as sub-frame s, with s ∈ [0…S−1].
If not specified, the sub-frame rate must be considered to be equal to one (1). If specified, then the sub-frame rate must be greater than zero (0).
A ttp:subFrameRate attribute is considered to be significant
only when specified on the tt element.
Note:
The sub-frame is sometimes referred to as a field in the context of synchronization with an interlaced video media object.
The ttp:tickRate attribute is used to specify the tick rate
of a related media object or the intrinsic tick rate of content of a document
instance in case it is intended to function as an independent media
object.
If specified, the value of this attribute must adhere to the following syntax:
ttp:tickRate : <digit>+ // value > 0 |
The tick rate that applies to a document instance is used to interpret
time expressions that are expressed in ticks by using the
t metric as defined by 10.3.1
<timeExpression>.
A tick is interpreted as an integral division of a second of media time, such that if the tick rate is specified as T, then a second of media time is divided into T intervals of equal duration, where each interval is labeled as tick t, with t ∈ [0…T−1].
If not specified, then if a frame rate is specified, the tick rate must be considered to be the effective frame rate multiplied by the sub-frame rate (i.e., ticks are interpreted as sub-frames); or, if no frame rate is specified, the tick rate must be considered to be one (1) tick per second of media time. If specified, then the tick rate must not be zero (0).
Note:
There is no predefined relationship between ticks and frames or sub-frames. Ticks are an arbitrary division of seconds that permit use of fixed point arithmetic rather than fractional (and potentially inexact) expressions of seconds.
A ttp:tickRate attribute is considered to be significant only
when specified on the tt element.
The ttp:timeBase attribute is used to specify the temporal
coordinate system by means of which time expressions are interpreted in a
document instance.
If specified, the value of this attribute must adhere to the following syntax:
ttp:timeBase : "media" | "smpte" | "clock" |
If the time base is designated as media, then a time
expression denotes a coordinate in some media object's time line, where the
media object may be an external media object with which the content of a
document instance is to be synchronized, or it may be the content of a
document instance itself in a case where the timed text content is intended
to establish an independent time line.
Note:
When using a media time base, if that time base is paused or scaled positively or negatively, then it is expected that the presentation of associated Timed Text content will be similarly paused, accelerated, or decelerated, respectively. The means for controlling an external media time base is outside the scope of this specification.
If the time base is designated as smpte, then a time
expression denotes a [SMPTE 12M] time coordinate with
which the content of a document instance is to be synchronized. In this case,
the value of the ttp:markerMode and ttp:smpteMode
parameters apply, as defined by 6.2.5 ttp:markerMode and 6.2.8 ttp:smpteMode,
respectively
If the time base is designated as clock, then the time
expression denotes a coordinate in some real-world time line as established
by some real-time clock, such as the local wall-clock time or UTC
(Coordinated Universal Time) or GPS (Global Positioning System) time
lines.
If not specified, the default time base must be considered to be
media.
A ttp:timeBase attribute is considered to be significant only
when specified on the tt element.
When operating with either media or smpte time
bases, a diachronic presentation of a document instance may be subject to
transformations of the controlling time line, such as temporal reversal,
dilation (expansion), or constriction (compression); however, when operating
with the clock time base, no transformations are permitted, and
diacrhonic presentation proceeds on a linear, monotonically increasing time
line based on the passage of real time.
Note:
Due to there being only one time base parameter that applies to a given document instance, the interpretation of time expressions is uniform throughout the document instance.
This section specifies the content matter of the core vocabulary catalog.
The following elements specify the structure and principal content aspects of a document instance:
The tt element serves as the root, document element of a
document instance.
The tt element accepts as its children zero or one
head element followed by zero or one body
element.
The temporal beginning and ending of a document instance represented by a
tt element is defined in relationship with some external
application or presentation context. The temporal interval defined by these
points is referred to subsequently as the external time interval.
A document instance has an implicit duration that is equal to the implicit
duration of the body element of the document, if present, or
zero, if not present.
An xml:lang attribute must be specified on the
tt element. If the attribute value is empty, it signifies that
there is no default language that applies to the text contained within the
document instance.
If no xml:space attribute is specified upon the
tt element, then it must be considered as if the attribute had
been specified with a value of default.
The head element is a container element used to group header
matter, including metadata, styling, and layout information.
The head element accepts as its children zero or more
elements in the Metadata.class element group, followed by zero
or one styling element, followed by zero or one
layout element.
Any metadata specified by children in the Metadata.class
element group applies semantically to the document instance as a whole, and
not just the head element.
A styling child element is used to specify style constructs
that are referenced from other style constructs, by layout constructs, and by
content elements.
A layout child element is used to specify layout constructs
that are referenced by content elements.
To the extent that time semantics apply to the content of the
head element, the implied time interval of this element is
defined to be coterminous with the external time interval.
The body element functions as a logical container and a
temporal structuring element for a sequence of textual content units
represented as logical divisions.
The body element accepts as its children zero or more
elements in the Metadata.class element group, followed by zero
or more elements in the Animation.class element group, followed
by zero or more div elements.
Any metadata specified by children in the Metadata.class
element group applies semantically to the body element and its
descendants as a whole.
Any animation elements specified by children in the
Animation.class element group apply semantically to the
body element.
<body begin = <timeExpression> dur = <timeExpression> end = <timeExpression> region = IDREF style = IDREFS timeContainer = (par|seq) xml:id = ID xml:lang = string xml:space = (default|preserve) {any attribute in TT Metadata namespace ...} {any attribute in TT Style namespace ...} {any attribute not in default or any TT namespace ...}> Content: Metadata.class*, Animation.class*, div* </body> |
An author may specify a temporal interval for a body element
using the begin, dur, and end
attributes. If the begin point of this interval remains unspecified, then the
begin point is interpreted as the begin point of the external time interval.
Similarly, if the end point of this interval remains unspecified, then the
end point is interpreted as the end point of the external time interval.
Note:
A TT AF document instance referenced from a SMIL presentation is expected to follow the same timing rules as apply to other SMIL media objects.
If relative begin or end times are specified on the body
element, then these times are resolved by reference to the begin and end time
of the external time interval.
If the external time interval is shorter than the computed duration of the
body element, then the active time interval of a document
instance is truncated to the active end point of the external time
interval.
If no timeContainer attribute is specified, then a
body element must be interpreted as having sequential
time containment semantics.
If the tts:extent attribute is specified on the
body element, then it specifies the spatial extent of the root
container region in which content regions are located and presented. If no
tts:extent attribute is specified, then the spatial extent of
the root container region is considered to be determined by the external
authoring or presentation context.
An author may associate a set of style properties with a body
element by means of either the style attribute or inline style
attributes or a combination thereof.
Note:
Style properties that are associated with a body element in a
document instance are available for style inheritance by descendant content
elements such as div, p, and span.
The declared value of an inline style attribute on a body
element must not be inherit.
The div element functions as a logical container and a
temporal structuring element for a sequence of textual content units
represented as logical paragraphs.
Note:
When rendered on a continuous (non-paged) visual presentation medium, a
div element is expected to generate a single block area that
contains zero or more child block areas generated by the div
element's child p elements.
If the single block area generated by a div element does not
contain any child areas, then it is not expected to be presented.
The div element accepts as its children zero or more elements
in the Metadata.class element group, followed by zero or more
elements in the Animation.class element group, followed by zero
or more p elements.
Note:
The core vocabulary intentionally does not support nested divisions in order to reduce the complexity of the profile to match that of the legacy distribution formats with which the core vocabulary was designed to interoperate.
Any metadata specified by children in the Metadata.class
element group applies semantically to the div element and its
descendants as a whole.
Any animation elements specified by children in the
Animation.class element group apply semantically to the
div element.
<div begin = <timeExpression> dur = <timeExpression> end = <timeExpression> region = IDREF style = IDREFS timeContainer = (par|seq) xml:id = ID xml:lang = string xml:space = (default|preserve) {any attribute in TT Metadata namespace ...} {any attribute in TT Style namespace ...} {any attribute not in default or any TT namespace ...}> Content: Metadata.class*, Animation.class*, Block.class* </div> |
If no timeContainer attribute is specified, then a
div element must be interpreted as having parallel time
containment semantics.
An author may associate a set of style properties with a div
element by means of either the style attribute or inline style
attributes or a combination thereof.
Note:
Style properties that are associated to a div element in a
document instance are available for style inheritance by descendant content
elements such as p and span.
A p element represents a logical paragraph, serving as a
transition between block level and inline level formatting semantics.
The p element accepts as its children zero or more elements
in the Metadata.class element group, followed by zero or more
elements in the Animation.class element group, followed by zero
or more span element, br element, or text nodes
interpreted as anonymous spans.
Any metadata specified by children in the Metadata.class
element group applies semantically to the p element and its
descendants as a whole.
Any animation elements specified by children in the
Animation.class element group apply semantically to the
p element.
<p begin = <timeExpression> dur = <timeExpression> end = <timeExpression> region = IDREF style = IDREFS timeContainer = (par|seq) xml:id = ID xml:lang = string xml:space = (default|preserve) {any attribute in TT Metadata namespace ...} {any attribute in TT Style namespace ...} {any attribute not in default or any TT namespace ...}> Content: Metadata.class*, Animation.class*, Inline.class* </p> |
If a sequence of children of a p element consists solely of
character information items, then that sequence must be considered to be an
anonymous span for the purpose of applying style properties that
apply to span elements.
The span element functions as a logical container and a
temporal structuring element for a sequence of textual content units having
inline level formatting semantics.
When presented on a visual medium, a span element is intended
to generate a sequence of inline areas, each containing one or more glyph
areas.
The span element accepts as its children zero or more
elements in the Metadata.class element group, followed by zero
or more elements in the Animation.class element group, followed
by zero or more br element or text nodes interpreted as
anonymous spans.
Note:
The core vocabulary intentionally does not support nested spans in order to reduce the complexity of the profile to match that of the legacy distribution formats with which the core vocabulary was designed to interoperate.
Any metadata specified by children in the Metadata.class
element group applies semantically to the span element and its
descendants as a whole.
Any animation elements specified by children in the
Animation.class element group apply semantically to the
span element.
<span begin = <timeExpression> dur = <timeExpression> end = <timeExpression> region = IDREF style = IDREFS timeContainer = (par|seq) xml:id = ID xml:lang = string xml:space = (default|preserve) {any attribute in TT Metadata namespace ...} {any attribute in TT Style namespace ...} {any attribute not in default or any TT namespace ...}> Content: Metadata.class*, Animation.class*, Inline.class* </span> |
The br element denotes an explicit line break.
<br style = IDREFS xml:id = ID xml:lang = string xml:space = (default|preserve) {any attribute in TT Metadata namespace ...} {any attribute in TT Style namespace ...} {any attribute not in default or any TT namespace ...}> Content: Metadata.class*, Animation.class* </br> |
When presented on a visual medium, the presence of a br
element must be interpreted as a forced line break.
Note:
The visual presentation of a br element is intended to
produce the same effect as the ASCII control code CR followed by
the control code NL when presented on a teletype device.
Therefore, two br elements in sequence will produce a different
effect than a single br element.
This section defines the following common attributes used with many or all element types in the core vocabulary catalog:
The xml:id attribute is used as defined by [XML ID].
The xml:id attribute may be used with any element in the core
vocabulary catalog.
The xml:lang attribute is used as defined by [XML 1.1], §2.12, Language Identification.
The xml:lang attribute must be specified on the
tt element and may be specified by an instance of any other
element type in the core vocabulary catalog.
The xml:space attribute is used as defined by [XML 1.1], §2.10, White Space Handling.
The xml:space attribute may be used with any element in the
core vocabulary catalog.
The semantics of the value default are fixed to mean that
when performing presentation processing of a document instance as described
by 9.3.2 Synchronic Flow
Processing, processing must occur as if the following properties were
specified on the affected elements of the intermediate XSL-FO document:
suppress-at-line-break="auto"
linefeed-treatment="treat-as-space"
white-space-collapse="true"
white-space-treatment="ignore-if-surrounding-linefeed"
Similarly, the semantics of the value preserve are fixed to
mean that when performing presentation processing, processing must occur as
if the following properties were specified on the affected elements of the
intermediate XSL-FO document:
suppress-at-line-break="retain"
linefeed-treatment="preserve"
white-space-collapse="false"
white-space-treatment="preserve"
When performing other types of processing intended to eventually result in
a visual presentation by means other than those described in this
specification, the semantics of space collapsing and preservation as
described above should be respected. For other types of processing, the
treatment of the xml:space attribute is processor dependent, but
should respect the semantics described above if possible.
This section specifies the styling matter of the core vocabulary catalog, where styling is to be understood as a separable layer of information that applies to content and that denotes authorial intentions about the presentation of that content.
No normative use of an <?xml-stylesheet ... ?>
processing instruction is defined by this specification.