This section is informative.
The SMIL 3.0 specification adds the Identity Module to the SMIL 2.1 Structure Module [SMIL21-structure]. It also adds the xml:id attribute, which should be used to assign identity to elements instead of the id attribute, which has been deprecated in SMIL 3.0.
This section is informative
This Section defines the SMIL Structure module and the Identity Module.
The Structure module provides
the base elements for structuring SMIL content. These elements act as the
root in the content model of all SMIL Host
Language conformant language profiles. The Structure module is a
mandatory module for SMIL Host Language conformant language profiles. The
SMIL Structure module is composed of the smil, head, and body elements, and is compatible with SMIL
1.0 [SMIL10]. The corresponding SMIL 1.0
elements form a subset of the Structure module, both in syntax and semantics,
as their attributes and content model is also exposed by the Structure
module. Thus, the Structure module is backwards compatible with SMIL 1.0.
The Identity Module provides attributes to identify the SMIL version and the SMIL profile.
This section is normative
This section defines the elements and attributes that make up the SMIL 3.0 Structure module.
The smil element acts as the root element for all SMIL Host Language conformant language profiles.
The smil element may have the following attributes:
The smil element may contain the following elements:
The head element contains information that is not related to the temporal behavior of the presentation. Three types of information may be contained by head. These are meta information, layout information, and author-defined content control.
The head element may have the following attributes:
The head element contains elements depending on the other modules and specific syntax included in the language profile integrating this module.
The body element contains information that is related to the temporal and linking behavior of the document. It acts as the root element of the timing tree.
The body element has the timing semantics of a time container equal to that of the seq element [BasicTimeContainers module]. Note, that in other language profiles, where a body element from another (Structure) Module is in use, that body element may have different timing semantics. For example, in the XHTML+SMIL language profile (still in progress and not yet a W3C Recommendation), the body element comes from HTML, and acts as a par time container.
The body element may have the following attributes:
The timing attributes defined in the various SMIL 3.0 Timing modules are part of the body element so far as the corresponding timing modules, such as BasicInlineTiming, are part of the language profile. When a timing module is included in a language profile, the features of that module should be supported on the body element just as they are supported on the other elements in the profile. For example, the syncMaster attribute should be supported on the body element if the SyncMaster module is included in the integrating profile.
The body element contains elements depending on the other modules and specific syntax included in the language profile integrating this module.
This section is normative
When this module is included in a language profile, the xml:id, class, and title attributes defined in this module must be included on all elements from all modules used in the profile, including those from other module families and of non-SMIL origin. The integrating profile should also consider adding the xml:lang attribute to the applicable elements.
The SMIL Structure module is the starting module when building any SMIL Host Language conformant language profile. The Structure module may not be used for building other, non-SMIL Host Language conformant language profiles. This implies that the SMIL Structure module must at least be accompanied with the other modules mandatory for SMIL Host language conformance, and the elements in the structure module must include at least the minimum content models required for SMIL Host language conformance.
When modules from outside the SMIL 3.0 namespace are integrated in the language profile, it must be specified how the elements from those non-SMIL modules fit into the content model of the used SMIL modules (and vice versa). For example, with respect to the SMIL Structure module, the Profiling Entities in the DTD should be overridden. This creates a so-called hybrid document type [XMOD]. In case of a so-called compound document type, the rules of XML namespaces must be satisfied [XML-NS].
This section is normative
This module contains two attributes, version and baseProfile, which are used to identify which version of SMIL and for which Profile the document is written for.
The Identity Module does not contain any element definitions.
This section defines the attributes that make up the SMIL 3.0 Identity
Module.
version-number ::= "3.0"
profile-name ::= "Language" | "UnifiedMobile" | "Daisy" | "Tiny"
| "smilText" | user-defined-profile-name
user-defined-profile-name ::= "x-" NMTOKEN
This section is informative
Example of version and baseProfile attribute use
<smil xml:id="root" xmlns="http://www.w3.org/ns/SMIL" version="3.0" baseProfile="Tiny" > <head xml:id="head"> ... </head> <body xml:id="body"> ... </body> </smil>
It is the responsibility of the language profile to specify which elements support the version and baseProfile attributes. All profiles should at least support these two attributes on the top-level smil element.