5
Les constituants de base
d'une application HyTime
5.1
Hyperdocuments: entrée, délimitations, nature des données
Un hyperdocument est considéré dans le contexte
HyTime comme le regroupement de plusieurs documents ou de tous autres objets
constituant de l'information, reliés selon une structure de réseau. Il peut
donc s'agir d'un ensemble de textes, de fichiers présents sur le même site ou
d'un ensemble d'objets connectés selon un réseau physique, par exemple un
réseau local ou un réseau téléphonique commuté. Autrement dit, l'ensemble
d'objets formant un hyperdocument n'est pas nécesssairement formé d'objets tous
présents sur le même support (document publié) ou sur un même site. Cette
conception de l'hyperdocument est donc beaucoup plus ouverte que la définition
d'un hypertexte "classique" qui se limite à un seul document
présent. HyTime prend donc en charge la gestion des documents entièrement
électronique. La notion de publication perd son caractère figé: œuvre d'auteur
aboutie et diffusée, pour être remplacée par une notion de modules
d'information vivants présentés à un moment donné selon une ou plusieurs
présentations. La notion d'évolutivité et de mise à jour est donc intégrée
comme un point de départ, puisqu'il s'agit essentiellement ici d'accéder à des
objets informationnels structurés et reliés.
Le document devient dans cette optique
l'assemblage éphémère d'objets formatés "au vol". Les bases
documentaires soumises à des mises à jour rapides peuvent engendrer des
documents différents pratiquement à chaque visualisation. Le niveau de granularité
des documents peut être extrêmement fin. Un "document"est un
assemblage de granules et de liens qui les relient.
5.1.1 Document-pivot:
le point d'entrée
Le point d'entrée dans un hyperdocument se fait
dans un document particulier appelé document-pivot. L'hyperdocument est
considéré comme conforme HyTime si le document-pivot est une instance de
document HyTime. Les autres objets constituant l'hyperdocument ne sont pas
nécessairement, eux, des documents HyTime. Il est ainsi possible de récupérer
dans un hyperdocument HyTime des documents existants, qui peuvent être par
exemple des instances de documents SGML répondant à plusieurs DTDs ou même des
documents non structurés. Bien entendu, le détail du niveau de structure influe
sur les applications possibles par la suite. Plus un document est structuré,
plus l'accès à un élément précis d'information sera aisé, et plus les applications
seront riches.
5.1.2 Ensemble
délimité d'objets
Un hyperdocument HyTime regroupe des documents
reliés les uns aux autres. HyTime permet de définir la frontière de l'ensemble
des objets qui sont destinés à être traités ensemble. Sans cette frontière,
rien n'empêcherait que le système des liens puisse s'étendre vers un nombre
quasi illimité de documents, rendant alors la gestion difficile voire
impossible. HyTime définit ainsi un "ensemble délimité
d'objets" (Bounded Object Set, ou BOS) qui forme la
frontière de l'hyperdocument. La notion de référence bibliographique de HyTime
indique une référence vers un objet externe à l'hyperdocument délimité. Cela
correspond au cas où l'on consulte un document sous forme électronique qui
forme un ensemble cohérent de liens, et où l'on fait référence par exemple à
des documents n'existant que sous forme imprimée. Ce type de référence vers
des objets externes à l'hyperdocument est appelé adresse bibliographique. Il
s'agit de la transposition à l'hyperdocument de ce qui est utilisé depuis
longtemps dans les livres: les références croisées ou renvois internes (du type
"voir chapitre 2" ou "voir page 53") sont considérés comme
des liens internes à l'hyperdocument, alors que les mentions d'autres documents
(du type "voir le Guide d'utilisation de SGML , p. Y") sont faites sous la forme de
références bibliographiques.
5.1.3 Entités
Pour constituer un hyperdocument, HyTime a recours
à la notion classique d'entité déjà à l'œuvre dans SGML, qui permet d'inclure
dans un document n'importe quel objet (qui peut être la forme développée d'une
abréviation, ou un graphique, ou encore un autre document).
<!ENTITY % sousdoc "/graphiques/%g1;" >
│
┌──────────────────────┘
│
<!ENTITY % g1 "/eps/%moteur;"
>
│
┌─────────┘
│
<!ENTITY % moteur "m1" >
Le niveau de complexité atteint peut être assez
élevé, car des entités peuvent être déclarées à l'intérieur d'autres entités,
et les limites de l'hyperdocument
produit peuvent être alors difficiles à maîtriser. Pour ce faire, la forme
architecturale HyDoc a un attribut boslevel qui indique le
nombre de niveaux de résolution des entités auxquels on doit s'arrêter pour
constituer un hyperdocument. Un hyperdocument ayant un boslevel qui vaut 2 sera
constitué du document-pivot et des entités de premier niveau. Toutes les autres
entités appelées dans les entités de premier niveau seront ignorées.
5.1.4 Flux des
données
Les données peuvent être transportées selon le
format SDIF (SGML Document Interchange Format), norme ISO 9069[1].
Un document SGML est transféré vers un "compresseur SDIF" qui permet
son stockage ou sa transmission, selon ASN.1. Le document peut ensuite être
décompressé pour être récupéré sous sa forme SGML d'origine. SDIF est
essentiellement adapté à la transmission de données textuelles. Ce format n'est
pas obligatoire, il est seulement recommandé par la norme HyTime (voir clause
6.2.4). Toutefois, ce format n'est pas adapté comme format d'échange pour les
images animées, le son, ou d'autres parties interactives de documents qui
peuvent être échangées sous leur forme interprétée. La norme HyTime ne
recommande pas de format précis, dans la mesure où les normes d'encodage
d'objets multimédia (JPEG, JBIG, MPEG notamment) n'étaient pas abouties au
moment de la publication de HyTime. Il est cependant conseillé d'utiliser les
formats de compression normalisés existants afin de préserver une ouverture
maximale pour les échanges.
5.2 Méta‑DTDs
HyTime contient une méta-DTD, c'est-à-dire un
ensemble d'objets préétablis servant à créer des DTDs. Une méta-DTD n'est pas
interprétable par une machine. Il s'agit d'un ensemble de règles indiquant
comment construire des DTDs. Si l'on décide d'utiliser un élément donné fourni
par HyTime, celui-ci possède un certain modèle de contenu et une liste
d'attributs parmi lesquels on peut sélectionner ceux qui sont significatifs
pour l'application. La méta-DTD présente dans la norme est tout à fait
générique. Elle permet donc de créer des DTDs qui couvrent de très nombreux cas
possibles. Elle constitue un guide de création de DTDs qui facilite grandement
la conception des documents HyTime. Il est toujours possible d'ajouter des
éléments non prévus par la méta-DTD de référence, fournie avec la norme.
Afin de distinguer les méta-DTDs HyTime des DTDs
SGML, on convient d'utiliser des caractères bas de casse (minuscules) dans les
méta-DTDs et des capitales (majuscules) dans les DTDs.
<!element ... ---->
méta-DTD
<!ELEMENT ... ----> DTD
5.3
Formes architecturales
5.3.1 Deux types de
formes architecturales
Il existe deux types de formes architecturales:
les formes de type élément et les formes de type liste d'attributs.
5.3.1.1 Formes architecturales de type élément
Les formes architecturales de types d'élément
ressemblent aux déclarations d'éléments des DTDs SGML. Sur le plan formel, une
déclaration d'élément HyTime est identique à une déclaration d'élément SGML, à
ceci près que le mot "element" apparaît en bas de casse. Les règles
de syntaxe pour les modèles de contenu sont intégralement reprises de SGML. En
revanche, les identificateurs génériques ont une sémantique. Par exemple, la
ligne suivante:
<!element
measure - O (granule+)>
indique que l'on définit le domaine de mesure
utilisé comme un ensemble de granules élémentaires d'information.
Une déclaration d'élément est ainsi composée de la
façon suivante[2]:
1) "<!element" introduit toute déclaration d'élément.
2) l'identificateur générique, qui est le nom de
la forme architecturale de type élément. Dans l'exemple qui précède,
l'identificateur générique est "measure".
3) les indications de minimisation de balisage
(identiques à celles qui sont définies dans SGML). "-" indique que la
balise est obligatoire, "O" qu'elle peut être omise. Dans la
déclaration précédente "- O" indique donc que la balise de début est
obligatoire, alors que la balise de fin peut être omise.
4) le contenu de l'élément peut être formé soit
d'un contenu déclaré, soit d'un modèle de contenu, qui sont construits de façon
identique aux modèles apparaissant dans les DTDs SGML.
• Contenu déclaré
Les éléments à contenu déclaré peuvent prendre
trois formes différentes:
- CDATA: contenu déclaré
"caractères"
- RCDATA: contenu déclaré
"caractères substituables"
- EMPTY: contenu déclaré
vide
• Modèle de contenu
Les éléments décrits par un modèle de contenu ont
une structure plus ou moins complexe décrite par des indicateurs d'occurrence
et de connecteurs. Dans l'exemple précédent, le modèle de contenu "(granule+)" est très simple. Le symbole "+" indique
que l'élément granule doit être présent au moins une fois dans l'élément "measure" et qu'il peut être répété un nombre indéterminé de
fois. (Les autres symboles d'occurrence possibles sont:
"*", indiquant
que l'élément est optionnel et répétable. Il peut donc être absent, ou être
répété un nombre indéterminé de fois.
"?", indiquant
que l'élément est optionnel.
Quand plusieurs éléments existent dans le modèle
de contenu, ils sont séparés par des connecteurs:
"," indique
que les éléments se suivent dans l'ordre indiqué;
"&"
indique que les éléments sont présents simultanément, mais dans n'importe quel
ordre.
"|" indique
que l'un ou l'autre des éléments est présent.
Les modèles peuvent être constitués de groupes
marqués par des parenthèses.
Ils peuvent également contenir des inclusions ou
des exclusions.
5) Enfin, la déclaration d'élément se termine par
le symbole ">"[3].
5.3.1.2 Formes architecturales de type liste d'attributs
Les éléments HyTime ont une liste d'attributs
associée. La liste d'attributs correspondant dans la méta-DTD HyTime à
l'élément measure est la suivante:
<!attlist
measure HyTime NAME measure
id ID #IMPLIED --
Default:none --
smu -- Standard measurement
unit for domain --
-- Constraint: notation
name of an SMU.
If virtual, it must have
a formal public ID
of "Virtual
Measurement Unit" --
NAME #REQUIRED
>
La liste d'attributs peut soit être reprise
intégralement, soit partiellement. On peut également enrichir la liste
d'attributs fournie par de nouveaux attributs propres à la DTD spécifique à
créer.
Les attributs associés à des éléments ont tous
comme premier nom d'attribut HyTime.
Les attributs peuvent être utilisés soit pour
qualifier un élément, soit pour les notations de contenu textuel.
Les formes architecturales de type liste
d'attributs sont composées de la façon suivante:
a) Comme pour SGML, les listes d'attributs sont
introduites par "<!attlist".
b) On écrit ensuite le nom de l'élément
(l'identificateur générique) auquel se rapport cet attribut, ici measure.
c) Chaque ligne est ensuite composée des
différents attributs qui composent cette liste. Le nom de l'attribut vient
d'abord. Ici, la première ligne contient l'attribut HyTime, la deuxième
l'attribut id, la troisième l'attribut smu.
d) Le nom d'attribut est suivi par la prescription
de valeurs déclarées. La première ligne, par exemple, contient le mot-clé NAME,
qui indique que les valeurs possibles respectent la syntaxe de ce qui est
considéré comme un nom, notamment que le premier caractère doit être une
lettre. Celui-ci peut être suivi de caractères constitutifs du nom, formés de
lettres, de chiffres de points ou de traits d'union[4].
La liste complète des noms pouvant figurer dans la prescription de valeurs
déclarées d'attributs est :
CDATA
ENTITY
ENTITIES
ID
IDREF
IDREFS
NAME
NAMES
NMTOKEN
NMTOKENS
NOTATION
NUMBER
NUMBERS
NUTOKEN
NUTOKENS[5]
e) Ensuite vient la prescription de valeurs par
défaut. Ici measure signifie que c'est la valeur par défaut de
l'attribut HyTime. #IMPLIED dans la deuxième ligne signifie que l'attribut id
est optionnel; le mot-clé #REQUIRED signifie que
l'attribut smu est obligatoire.
Les valeurs par défaut possibles peuvent également
être déclarées comme une liste séparée par des connecteurs "|"
("ou"). Ainsi
"(a|b)" signifie que a ou b peut être choisie comme valeur par
défaut posssible.
La liste complète des mots-clés de valeurs par
défaut possibles est:
#FIXED attribut fixe
#REQUIRED attribut obligatoire
#CURRENT attribut en cours
#CONREF attribut faisant appel au contenu
#IMPLIED attribut optionnel (calculé par
l'application)[6]
f) Chaque ligne peut contenir des commentaires,
notés entre couples de tirets, appelés commentaires conventionnels, qui ont
"force de loi". Ce sont des commentaires indiquant comment écrire la
DTD.
g) La déclaration d'attribut se termine par le
signe ">".
Ainsi, les formes architecturales peuvent être
considérées comme des modes d'emploi pour écrire les DTDs. Le fait de savoir
lire la méta-DTD de la norme représente donc une étape majeure pour la création
de documents HyTime.
Lors de l'écriture d'une DTD, on peut soit
reprendre l'intégralité des attributs définis dans la liste, soit seulement
certains d'entre eux.
Le premier attribut, HyTime, est
obligatoire, car il indique le nom de la forme architecturale à laquelle les
attributs se conforment.
Si la forme définie dans la méta-DTD est reprise
intégralement, le nom redouble. C'est pourquoi l'on trouve deux fois le mot
"measure"dans la première ligne de la liste d'attributs.
Si l'on suppose maintenant que le nom de l'élément
n'est plus "measure", mais le mot français "mesure", et que
le mot "granule" est remplacé par "grain", on aura:
<!ELEMENT mesure -
O (grain+) >
<!ATTLIST mesure HyTime
measure
id ID #IMPLIED
smu NAME #REQUIRED >
Le mot "measure" reste inchangé à droite
dans la première ligne de la liste d'attributs. Ceci indique que
"mesure"est un attribut qui se rattache à la forme architecturale
"measure", définie dans la méta-DTD.
•Formes architecturales de type liste d'attributs
sans éléments associés
Il existe dans HyTime des formes architecturales
sans nom d'élément correspondant. Elles sont syntaxiquement identiques aux
précédentes. Au lieu d'être attachées à un élément unique, elles peuvent être
injectées à l'intérieur de plusieurs listes d'attributs correspondant à des
éléments différents. Elles sont injectables dans la DTD comme complément des
premières, et peuvent se rattacher à certains éléments qui sont précisés sous
la forme d'un commentaire. Elles ne commencent donc pas par l'attribut HyTime, mais intègrent dans un commentaire conventionnel
commençant par "use:" la liste des
éléments auxquels elles peuvent être associées suivent le mot-clé "use".
Par exemple la forme architecturale de type liste
d'attributs multloc est utilisée à l'intérieur des listes d'attributs
des formes architecturales nameloc, dataloc,
treeloc, pathloc, listloc, relloc, proploc, notloc et fcsloc. Le fait d'en faire une forme architecturale en tant que
telle évite de répéter 9 fois la même information.
<!attlist
multloc -- use: nameloc
dataloc treeloc pathloc
listloc
relloc proploc notloc fcsloc --
ordering -- Is ordering of
locations significant? --
(ordered|noorder)
noorder
set -- Make multiple a set by ignoring
duplicates --
(set|notset)
notset
aggloc -- Are multiple locations an aggregate? --
(aggloc|agglink|nagg) nagg
>
Il existe également dans la DTD des cas où le nom
de l'attribut est redoublé et paraît identique à celui de l'élément
correspondant. C'est le cas par exemple de exspec:
<!attlist
exspec -- use: event proscope
modscope --
exspec -- Extent specification --
--
Constraint:multiple references concatenated --
--
reftype(extlist) --
IDREFS
#REQUIRED
>
En réalité, cette déclaration ne doit pas être
confondue avec les déclarations de listes d'attributs se rapportant à un
élément. Il n'y a pas ici d'élément nommé exspec. Cette
déclaration d'attribut est faite pour être insérée à l'intérieur d'autres
déclarations d'attributs et l'attribut exspec vient
simplement s'ajouter à la liste des attributs déclarés. Dans l'exemple
précédent, l'attribut exspec vient s'ajouter aux
listes d'attributs correspondant aux éléments event, proscope et modscope (indiqués à la suite du
mot-clé use. Ainsi, par exemple, la forme architecturale proscope s'écrit:
<!element
proscope -- Projector scope --
-- Defines the scope of an
event projector
as an extent of the unprojected schedule --
- O (projectr) >
<!attlist
proscope HyTime NAME proscope
id ID #IMPLIED -- Default:
none --
-- exspec attributes
--
>
la dernière ligne de la liste d'attributs doit
être remplacée par la déclaration explicite de exspec. De sorte que
l'on obtient pour la liste d'attributs associée à l'élément proscope:
<!attlist
proscope HyTime NAME proscope
id ID #IMPLIED -- Default:
none --
exspec -- Extent specification --
--
Constraint:multiple references concatenated --
--
reftype(extlist) --
IDREFS
#REQUIRED
>
Cette forme architecturale de liste d'attributs
séparés évite donc une redondance de l'information dans la méta-DTD. En
revanche, dans la DTD, cet attribut doit être répété autant de fois qu'il est
nécessaire, à la suite de chaque déclaration d'élément.
• Attributs associés à des notations de contenu
informationnel[7]
Il s'agit ici de l'exploitation d'une
fonctionnalité SGML permettant de déclarer une liste de définitions d'attributs
par leur contenu d'information. On l'utilise pour déclarer des attributs qui se
trouvent à l'intérieur d'une entité[8].
On peut ainsi stocker dans des "conteneurs" plusieurs entités
différentes. Il s'agit en quelque sorte d'une table des matières des entités
externes utilisées dans un hyperdocument. La forme architecturale de la
méta-DTD HyTime s'appelle sbento. Elle provient du terme
japonais "bento" qui désigne une boîte séparée en plusieurs
compartiments organisés de façon esthétique. Sbento est l'acronyme
de "Standard Bento Entity for Natural Transport of Objects" (entité
bento normalisée pour le transport naturel des objets)[9].
5.4
Organisation modulaire de HyTime
La conception de HyTime en modules séparés permet
de concevoir des applications qui ne se conforment qu'à certains d'entre eux.
Les modules ont entre eux des relations
d'interdépendance partielle.
5.4.1 Les six modules
HyTime est formé de six modules:
- module de base
- module de mesure
- module adressage de
lieux
- module hyperliens
- module d'agencement
- module d'exécution
Ces six modules peuvent ne pas être présents
simultanément dans une application. Le module de base est le seul requis pour
qu'une application puisse être considérée comme conforme HyTime.
Le module d'exécution impose la présence du module
d'agencement qui lui-même impose la présence du module de mesure. Les
configurations possibles sont les suivantes:
• module de base seul.
• module de base, module hyperliens.
• module de base, module addressage de lieux.
• module de base, module de mesure.
• module de base, module de mesure, module d'agencement.
• module de base, module de mesure, module
d'agencement, module d'exécution.
La présence du module d'adressage de lieux permet
d'enrichir les fonctionnalités hyperliens et de mesure. On peut donc trouver
également les configurations suivantes:
• module de base, module hyperliens, module
d'adressage des lieux
• module de base, module de mesure, module
d'adressage des lieux.
Dans le dernier cas, le module de mesure peut
également être complété soit par le modules d'agencement, soit par les modules
d'agencement et d'exécution.
Le contenu de chacun des modules sera présenté
dans les chapitres qui suivent.
5.5
Liste des formes architecturales de la méta-DTD HyTime
La liste des formes architecturale est présentée
dans l'ordre de leur apparition dans la méta-DTD HyTime.
5.5.0.1 Formes architecturales de type élément
HyDoc élément
document HyTime
HyBrid élément pont
HyTime/non-HyTime
nHyTime élément
non-HyTime
lexmodel modèle lexical
lexord définition
d'ordre lexicographique
grapheme clé de
comparaison de graphèmes
dvlist liste de
valeurs par défaut
desctab table de
définition de texte descriptif
desctxt texte
descriptif
descdef définition de
texte descriptif
activity politique de
traçage d'activité
propdef définition de
propriété
qpn nom de propriété qualifié
pn nom de propriété
spec spécification
de propriété
qltn nom de
type lexical qualifié
pval valeur de
propriété
dimspec spécification
de dimension
marklist liste de
marqueurs d'axes ou d'équivalents
dimlist liste des
spécifications de dimension
extent étendue
extlist liste
d'étendues agencées
measure domaine de
mesure
granule granule
dimref référence de
dimension
markfun function de
marqueur
nameloc adresse de lieu
nommé
nmlist liste de noms
dataloc lieu défini par
coordonnées
treeloc nœuds d'un
arbre (description classique)
pathloc nœuds d'un
arbre (description matricielle)
listloc nœuds d'une
liste
relloc nœuds
identifiés relativement à une origine
proploc localise un
attribut ou toute autre propriété
notloc localise des
données arbitraires
bibloc référence
bibliographique à objet réel (externe)
nmquery résultat d'une
recherche par interrogation sous forme d'une liste de noms
mrkquery interrogation par
coordonnées
ilink lien
indépendant
clink lien
contextuel
fcs espace fini de
coordonnées
axis définition
d'axe
evsched agenda
d'événements
evgrp groupe
d'événements
event événement
mallobj objet malléable
accanch liste
d'ancrages ayant fait l'objet d'un accès
acctype types
d'éléments ayant fait l'objet d'un accès
acclink élément lien
ayant fait l'objet d'un accès
exrecon stratégie de
réconciliation
fcsloc lieu dans un
espace fini de coordonnées
calspec spécification
de calendrier
date date
juldate date du
calendrier julien
abstime temps absolu
timeoff décalage
horaire pour heure d'été ou fuseau
wandrule règle portant sur
la baguette magique
modrule règle de
modification
wand baguette
magique
modscope champ de
modification
wndpatch patch de la
baguette magique
modpatch patch de
modification
batrule règle du bâton
baton bâton (de
chef d'orchestre)
proscope champ du
projecteur
projectr projecteur
d'événement
profun fonction de
projection
scaleref référence
d'échelle
rendrule règle d'exécution
5.5.0.2 Formes architecturales de type liste d'attributs
Tous les
éléments pré-cités ont une liste d'attributs correspondants.
Attributs
supplémentaires (sans éléments correspondants):
overrun débordement
exspec spécification
d'étendue
schdmeas mesure d'agenda
function fonction marqueur
docmdu unité du
domaine de mesure du document
locsrc lieu origine
multloc lieux multiples
spanloc lieux définis
sur zone
treecom combinaison
d'arbres
query requête
sched agenda
pls2gran nombre de
battements par granule
accend accès à
l'extrémité de lien
calendar calendrier
5.5.0.3 Attributs communs
Certaines formes
architecturales de listes d'attributs commencent par all-. C'est le cas de all-id, all-lex, all-ref, all-bits, all-dvl, all-desc, all-act et all-qual. On les appelle
attributs communs parce qu'ils peuvent être appliqués à tous les types
d'élément, HyTime et non-HyTime.
5.5.0.4 Liste des
attributs communs
all-id identification
all-lex types lexicaux
all-ref niveau de
résolution des références
all-bits taille d'un
élément
all-dvl valeurs par
défaut d'attributs
all-desc texte descriptif
all-act politique de
traçage d'activité
all-qual noms qualifiant
les propriétés
5.5.0.5 Notations
sbento attributs de
la notation sbento de contenu informationnel
any-dcn attributs
utilisés dans dans sbento et dans nHyTime
[1]. SDIF est
définie en ASN.1 (ISO 8824), ce qui assure la compatibilité avec les protocoles
OSI (Open Systems Interconnection).
[2]. On utilise ici
la syntaxe concrète de référence. Comme pour SGML, l'ensemble des symboles utilisés
peut être modifié dans une application, à condition d'en préciser préalablement
les règles. Voir Guide d'utilisation de SGML, p. 90.
[3]. Pour plus de
détails sur la syntaxe des modèles de contenu, voir le Guide d'utilisation
de SGML, p. 67 sqq.
[4]. Voir Norme ISO
8879:1986, SGML, appendice B, section B.5.1.1.
[5]. Pour
l'explication complète de la signification de ces mots-clés, voir la norme ISO
8879:1986, SGML, claude 11.3.3. Voir également le Guide d'utilisation de
SGML, p. 27 où les valeurs déclarées les plus fréquentes sont présentées.
[6]. Pour plus de
détails, voir la clause 11.3.4 de la norme ISO/IEC 8879:1986 (SGML), ou le Guide
d'utilisation de SGML, p. 27.
[7]. Le terme
"data content notation" a été traduit dans la norme SGML par
"notation de contenu textuel". Il est nécessaire de revoir ce terme
dans le contexte de HyTime en traduisant "data" par
"informationnel", car les notations sont utilisées notamment pour
faciliter l'accès à des données multimédia (entrelacement, etc.).
[8]. Voir clause
11.4.1.2 de la norme SGML (ISO/IEC8879:1986, norme française NF EN 28879), p.
51 version française. Voir également Guide d'utilisation de SGML, p.76.
[9]. Cette clause a
été élaborée afin de permettre à Apple de rendre compatible avec HyTime les
notations utilisées dans le logiciel QuickTime, intégré dans le système 7.0 des
ordinateurs Macintosh.