This section is informative.
The SMIL 3.0 smilText profile is a new profile introduced in SMIL 3.0. It was not part of the SMIL 2.1.
This section is normative.
The SMIL 3.0 smilText profile is a collection of SMIL 3.0 modules that provide support for the specification of an external streaming text container. This container allows the functionality of the SMIL 3.0 smilText modules to be referenced outside of the content of a SMIL file.
This profile is suitable for systems which require simple streaming timed text. A separate smilText rendering engine will be required to process documents defined using this profile. In many cases, SMIL 3.0 engines will provide this capability, but other stand-alone implementations may also be developed.
This section is informative.
The SMIL 3.0 smilText profile is defined as a markup language. The syntax of this language is formally described by a document type definition (DTD), or an XML or RelaxNG Schema which is based on the modules as defined in "SMIL 3.0 Modules" section.
The smilText profile design requirements are:
Examples of use cases for this profile are SMIL rendering engines, plus stand-alone media players that wish to support a simple, streamable timed-text format.
This section is normative.
Within this profile specification, the term smilText profile will be considered to refer exclusively to the SMIL 3.0 smilText profile as defined in this document.
The definition of conformance for the SMIL 3.0 profile is given in the Definitions section of the SMIL 3.0 Scalability Framework. Based on these definitions, the smilText profile is a Conformant SMIL 3.0 Profile.
Within the referenced sections of the Scalability Framework, the following definitions should be used:
http://www.w3.org/2008/SMIL30/smilText
.
xmlns="http://www.w3.org/ns/SMIL"
<!DOCTYPE smilText PUBLIC "-//W3C//DTD SMIL 3.0 smilText //EN" "http://www.w3.org/2008/SMIL30/SMIL30smilText.dtd">If a document contains this declaration, it must be a valid XML document. Note that this implies that extensions to the syntax defined in the DTD (or in the corresponding XML or RelaxNG schemas) are not allowed. If the document is invalid, the user agent should issue an error.
http://www.w3.org/2008/SMIL30/informative-DTD/SMIL30smilText.dtd
version="3.0" baseProfile="smilText "As a consequence of the two requirements above, the effective root element declaration for a smilText profile document must be:
<smilText xmlns="http://www.w3.org/ns/SMIL" version="3.0" baseProfile="smilText "> ... </smil>The root element may be extended as required with additional atttributes.
Language designers and implementors wishing to extend the smilText profile must consider the implications of the use of namespace extension syntax. Please consult the section on Scalable Profiles for restrictions and recommendations for best practice when extending SMIL.
The smilText profile specifies additional rules for smilText profile, document and user-agent conformance. It also specifies the elements and attribute values, plus any restrictions, required to support the smilText profile. This section provides a normative definition of these three aspects.
The smilText profile is not a SMIL host-language conformant profile. The smilText profile does not support extension using the SMIL 3.0 Scalability Framework.
This version of the smilText profile provides a definition of strictly conforming external smilText profile documents, which are restricted to tags and attributes from the SMIL 3.0 namespace. In the future, the language described in this profile may be extended by other W3C Recommendations, or by private extensions. For these extensions, the following rule must be obeyed:
An external smilText document is a conforming smilText profile document if it adheres to the specification of the SMIL 3.0 smilText profile definition. A conforming smilText profile document must meet all of the following criteria:
xmlns="http://www.w3.org/ns/SMIL"The default namespace name will be reused in any update of SMIL 3.0 which is made for the purpose of clarification or bug fixes. These changes will be minor in that they do not (a) change the meaning of existing documents written using the namespace, or (b) affect the operation of existing software written to process such documents. The SYMM working group MAY reuse this namespace URI in a future specification that revises the SMIL 3.0 DTD, thus affecting the validity of published documents.
<!DOCTYPE smilText PUBLIC "-//W3C//DTD SMIL 3.0 smilText//EN" "http://www.w3.org/2008/SMIL30/SMIL30smilText.dtd">The DTD referenced in the DOCTYPE declaration will, among other things, define default values for the language version number and the base profile name associated with the DTD. If a document contains a DOCTYPE declaration, it must be a valid XML document. Note that this implies that extensions to the syntax defined in the DTD are not allowed. A document is a conforming smilText profile document if it satisfies the requirements of the smilText profile specification and is valid per the normative DTD identified by the profile. As per section 7.6 of the W3C Process Document, W3C will make every effort to make this normative DTD available in its original form at this URI. The SYMM WG also publishes a non-normative DTD identified by:
http://www.w3.org/2008/SMIL30/SMIL30smilText.dtdThe SYMM WG plans to make changes to this DTD over time to correct errata. If you choose to refer to this DTD, please note that it is subject to change without notice at any time. The SYMM WG MAY publish a normative "snapshot" of the corrected DTD at a new URI by following the W3C Process for modifying a Recommendation. Individuals are free to use either of the two URIs above as the system identifier in the smilText profile's DOCTYPE, according to the desired level of stability.
Neither the smilText profile definition nor these conformance criteria provide designated size limits on any aspect of smilText profile content. There are no maximum values on the number of elements, the amount of character data, or the number of characters in attribute values.
A conforming smilText profile user agent is a program which can parse and process a smilText profile document and render the contents of the document onto output media. A conforming smilText profile user agent must meet all of the following criteria:
The smilText profile supports the SMIL 3.0 smilText features for the presentation of basic timed text functionality. It uses only modules from the SMIL 3.0 Recommendation. The smilText profile includes the following SMIL 3.0 modules:
The collection names contained in the following table define the smilText 1.0 Profile vocabulary.
smilText Profile | |
---|---|
Module Name | Elements in Module |
Identity | None. |
RequiredContentControl | None. |
BasicText | smilText, tev, clear, br |
TextStyling | div, p, span, textStyle |
TextMotion | None. |
Metainformation |
In the following sections, we define the set of elements and attributes used in each of the modules included in the smilText profile. The content model for each element is described. The content model of an element is a description of elements which may appear as its direct children. The special content model "EMPTY" means that a given element may not have children.
Collection Name | Attributes in Collection |
---|---|
Core | baseProfile 'smilText', version (3.0) '3.0', xml:base (CDATA) [XMLBase], xml:id (ID) |
I18n | its:dir (lro | ltr | rlo | rtl), its:locNote (CDATA), its:locNoteRef (CDATA), its:locNoteType (alert | description), its:term (no | yes), its:termInfoRef (CDATA), its:translate (no | yes), xml:lang (CDATA) |
The xml:id attributes in the collection Core are defined for all the elements of the smilText profile. The xml:id attribute is used in the smilText profile to assign a unique XML identifier to every element in a smilText document.
The smilText profile integrates the baseProfile and version attributes from the Identity module into the Core collection.
The smilText profile integrates the systemRequired attribute from the RequiredContentControl module as an attribute of the smilText root element.
The smilText Modules provide a light-weight method of defining timed text in an external container format. The smilText Modules section of SMIL 3.0 define semantics for the smilText, tev, clear, br, span, p, div, textStyle elements and their attributes. The smilText profile includes the smilText functionality of the BasicText, TextStyling, and TextMotion modules.
In the smilText profile, smilText elements may have the following attributes and content model:
Text Module | ||
---|---|---|
Elements | Attributes | Content model |
smilText | Core, I18n, systemRequired, TextExternal, textAlign (center | end | inherit | left | right | start) 'inherit', textConceal (both | final | inherit | initial | none) 'inherit', textMode (append | crawl | inherit | jump | replace | scroll) 'inherit', textPlace (center | end | inherit | start) 'inherit', textRate 'auto', textWrapOption (inherit | noWrap | wrap) 'wrap', textWritingMode (inherit | lr | lr-tb | rl | rl-tb | tb-lr | tb-rl) 'inherit', | (#PCDATA | | tev | clear | br | span | p | div) |
tev | Core, I18n, begin, next | ()* |
clear | Core, I18n, begin, next | ()* |
br | Core, I18n, | ()* |
div | Core, I18n, TextAttributes, textAlign (center | end | inherit | left | right | start) 'inherit', textWrapOption (inherit | noWrap | wrap) 'wrap', textWritingMode (inherit | lr | lr-tb | rl | rl-tb | tb-lr | tb-rl) 'inherit' | (#PCDATA | | tev | clear | br | div | p | span) |
p | Core, I18n, TextAttributes, textWrapOption (inherit | noWrap | wrap) 'wrap', textWritingMode (inherit | lr | lr-tb | rl | rl-tb | tb-lr | tb-rl) 'inherit' | (#PCDATA | | tev | clear | br | span) |
span | Core, I18n, TextAttributes, textDirection (inherit | ltr | ltro | rtl | rtlo) 'inherit', textWrapOption (inherit | noWrap | wrap) 'wrap' | (#PCDATA | | tev | clear | br | span) |
textStyle | Core, I18n, TextAttributes, textAlign (center | end | inherit | left | right | start) 'inherit', textConceal (both | final | inherit | initial | none) 'inherit', textDirection (inherit | ltr | ltro | rtl | rtlo) 'inherit', textMode (append | crawl | inherit | jump | replace | scroll) 'inherit', textPlace (center | end | inherit | start) 'inherit', textRate 'auto', textWrapOption (inherit | noWrap | wrap) 'wrap', textWritingMode (inherit | lr | lr-tb | rl | rl-tb | tb-lr | tb-rl) 'inherit' | ()* |
textStyling | Core, I18n | (()*, (textStyle, ()*)+) |
The SMILtext functionality is used to define the Attribute set "TextAttributes":
Collection Name | Attributes in Collection |
---|---|
TextAttributes | textBackgroundColor 'transparent', textColor, textFontFamily 'inherit', textFontSize 'inherit', textFontStyle (inherit | italic | normal | oblique | reverseOblique) 'inherit', textFontWeight (bold | inherit | normal) 'inherit', textStyle, xml:space (default | preserve) 'default' |
The smilText profile also integrates attribute definitions in the TextExternal attribute set from the BasicLayout module (backgroundColor 'transparent', height, and width) and the BasicTimeContainers module (dur). While these modules do not form a part of the smilText profile, the attributes used have the same meaning as in the referenced module specifications.
Collection Name | Attributes in Collection |
---|---|
TextExternal | version '1.0 (1.0)', backgroundColor 'transparent', height, width, dur |
The Metainformation Module provides a framework for describing a document, either to inform the human user or to assist in automation. The Metainformation Module defines semantics for element. In addition, this module defines semantics for the label attribute. The smilText profile includes the Metainformation functionality of the Metainformation module.
In the smilText profile, Metainformation elements may have the following attributes and content model:
Metainformation Module | ||
---|---|---|
Elements | Attributes | Content model |
Core, I18n | EMPTY |
This profile adds the element to the content model of all of the elements in the profile, with the exception of the metadata element itself.
The content model of metadata is empty. Profiles that extend the smilText Profile may define their own content model of the metadata element.
This section is normative.
The SMIL 3.0 smilText profile Document Type Definition is defined as a set of SMIL 3.0 modules. All SMIL 3.0 modules are integrated according to the guidelines in the W3C Note "Synchronized Multimedia Modules based upon SMIL 1.0" [SMIL-MOD], and defined within their respective module sections.