Cette section est informative.
Cette section définit le module de structure de SMIL. Le module Structure fournit les éléments de base pour structurer un contenu SMIL. Ces éléments agissent comme la racine dans le modèle de contenu de tous les profils de langage conformes au langage hôte SMIL. Le module Structure est un module obligatoire pour les profils de langage conformes au langage hôte SMIL.
Le module SMIL Structure est composé des éléments smil, head et body, et il est compatible avec SMIL 1.0 [SMIL10]. Les éléments SMIL 1.0 correspondants forment un sous-ensemble du module Structure, à la fois dans la syntaxe et la sémantique, leurs attributs et le modèle de contenu étant également exposés par le module Structure. Par conséquent, le module Structure a une compatibilité ascendante avec SMIL 1.0.
Cette section est normative.
Cette section définit les éléments et attributs qui composent le module Structure de SMIL 2.0.
L'élément SMIL smil agit comme l'élément racine pour tous les profils de langage conformes au langage hôte SMIL.
L'élément smil peut avoir les attributs suivants :
L'élément smil peut contenir les éléments suivants :
L'élément head contient de l'information qui n'est pas liée au comportement temporel de la présentation. Trois types d'information peuvent être contenus par head. Ce sont la méta-information, l'information de disposition et le contrôle de contenu défini par l'auteur.
L'élément head peut avoir les attributs suivants :
L'élément head contient des éléments dépendants des autres modules et de la syntaxe spécifique inclus dans le profil du langage intégrant ce module.
L'élément body contient de l'information qui est liée au comportement temporel et des liens du document. Il agit comme l'élément racine de l'arbre de temporisation.
L'élément body a une sémantique de temporisation d'un conteneur de temps égale à celle de l'élément seq [module BasicTimeContainers]. Notez que, dans d'autres profils de langage, où l'élément body d'un autre module (Structure) est en vigueur, cet élément body peut avoir différentes sémantiques de temporisation. Par exemple, dans le profil de langage XHTML+SMIL (encore en étude et pas encore prêt pour l'examen final), l'élément body provient de XHTML et agit comme un conteneur temporel par.
L'élément body peut avoir les attributs suivants :
Les attributs temporels définis dans les divers modules de temporisation de SMIL 2.0 font partie de l'élément body, autant que les modules de temporisation correspondants, tel que BasicInlineTiming, font partie du profil de langage. Quand un module de temporisation est inclus dans un profil de langage, les fonctionnalités de ce module devraient être gérées par l'élément body exactement comme elles sont gérées par les autres éléments dans le profil. Par exemple, l'attribut syncMaster devrait être géré par l'élément body si le module SyncMaster est inclus dans le profil d'intégration.
L'élément body contient des éléments dépendants des autres modules et de la syntaxe spécifique inclus dans le profil de langage intégrant ce module.
Cette section est normative.
Quand ce module est inclus dans un profil de langage, les attributs id, class et title définis dans ce module doivent être inclus dans tous les éléments de tous les modules utilisés dans ce profil, y compris ceux d'autres familles de module et d'origine non-SMIL. Le profil d'intégration devrait aussi considérer l'ajout de l'attribut xml:lang aux éléments concernés.
Le module Structure de SMIL est le module de départ quand on construit un quelconque profil de langage conforme au langage hôte SMIL. Le module Structure ne peut pas être utilisé pour construire d'autres profils de langage non conformes au langage hôte SMIL. Ceci implique que le module Structure de SMIL doit au moins être accompagné d'autres modules obligatoires pour la conformité avec le langage hôte SMIL et les éléments du module de structure doivent au moins inclure les modèles de contenu minimum exigés pour la conformité avec le langage hôte SMIL.
Quand des modules externes à l'espace de nommage SMIL 2.0 sont intégrés dans le profil de langage, on doit indiquer comment adapter les éléments de ces modules non-SMIL dans le modèle de contenu du module SMIL utilisé (et vice-versa). Par exemple, en ce qui concerne le module Structure de SMIL, les entités de profilage dans le DTD doivent être surclassées. Ceci crée ce qu'on appelle un type de document hybride [XMOD]. Dans le cas de ce qu'on appelle un type de document composé, les règles des espaces de nommage XML doivent être satisfaites [XML-NS].