1 Domaine
2
Références normatives
3
Définitions
3.1 Définitions
3.2 Abréviations
4
Généralités
5
Conformité
5.1 Conformité d’un objet d’information
5.1.1 Profils
5.1.2 Codage
5.1.3 Syntaxe
5.1.4 Sémantique
5.2 Conformité d’implémentation
5.2.1 Requêtes de conformité
5.2.2 Documentation de conformité
5.3 Conformité d’application
5.4 Méthodes des test
6
Aperçu général
6.1 Méthodologie de description
6.2 Opérations de traitement de données
6.3 Accès aux données et fonctions externes
7
Relations entre MHEG et MHEG-3
7.1 Entités MHEG
7.2 Entités fonctionnelles
7.3 Interpréteur de représentation d’échange de script (SIR MHEG)
8
Composants de la représentation de script pour les échanges MHEG (SIR
MHEG)
8.1 Types de données
8.1.1 Types prédéfinis
8.1.2 Types construits déclarés
8.2 Données
8.2.1 Valeurs immédiates
8.2.2 Constantes
8.2.3 Variables
8.3 Fonctions
8.3.1 Routines
8.3.2 Services
8.3.3 Fonctions prédéfinies
8.4 Messages
8.4.1 Exceptions de bloc
8.4.2 Messages prédéfinis
8.5 Instructions
8.6 Identificateurs
8.6.1 Identificateurs de type
8.6.2 Identificateurs de données
8.6.3 Identificateurs de fonctions
8.6.4 Identificateurs de messages
9
La machine virtuelle SIR MHEG
9.1 Structure de la machine virtuelle SIR MHEG
9.2 Structures et notations
9.2.1 Table
9.2.2 Pile
9.2.3 Pile de paramètres
9.2.4 File d’attente
9.2.5 Représentation des données
9.3 Zones de mémoire
9.3.1 Zone de mémoire de mh-script
9.3.2 Zones de mémoire du rt-script
9.4 Etats des scripts
9.4.1 Etat d’un mh-script
9.4.2 Etats d’un rt-script
9.5 Unités de traitement
9.5.1 Réception de message
9.5.2 Initialisation de mh-script
9.5.3 Initialisation de rt-script
9.5.4 Unité d’exécution de rt-script
9.5.5 Unité d’exécution d’instructions SIR MHEG
10 Dispositions pour l’accès à un
environnement d’exécution
10.1 Modèle général
10.2 Déclaration des interfaces IDL
10.3 Invocation d’opérations externes dans un programme SIR MHEG
10.4 Manipulation d’exceptions externes dans un programme SIR MHEG
10.5 Invocation d’opérations externes par un moteur MHEG-3
10.6 Manipulation des exceptions externes par un moteur MHEG-3
11 Dispositions pour la manipulation
d’objets MHEG
11.1 Invocation
d’action MHEG
11.1.1 Envoi de messages à d’autres scripts
11.1.2 Echange d’information avec des objets
MHEG
11.2 Réception de messages MHEG
11.2.1 Opération run de l’API MHEG-3
11.2.2 Exceptions de l’API MHEG
12 Déclarations de la SIR MHEG
12.1 Déclaration de type
12.1.1 Identificateur de type
12.1.2 Description de type
12.2 Déclaration de constante
12.2.1 Identificateur de donnée
12.2.2 Identificateur de type
12.2.3 Valeur de constante
12.3 Déclaration de variable globale
12.3.1 Identificateur de donnée
12.3.2 Identificateur de type
12.3.3 Référence à constante
12.4 Déclaration de bloc
12.4.1 Identificateur de bloc
12.4.2 Nom
12.4.3
Description de service
12.4.4 Description d’exception
12.5 Déclaration de filet
12.5.1 Identificateur de message
12.5.2 Identificateur de fonction
12.6 Déclaration de routine
12.6.1 Identificateur de fonction
12.6.2 Identificateur de type
12.6.3 Description de paramètre
12.6.4 Déclaration de variable locale
12.6.5 Code programme
13 Instructions de la SIR MHEG
13.1 Méthodologie de présentation
13.1.1 Conditions d’erreur
13.1.2 Spécification formelle
13.1.3 Notation de table de données (data table)
13.1.4 Notation d’instruction générique
13.1.5 Primitives
13.2 Classification des instructions de la SIR MHEG
13.3 Description des instructions
13.3.1 Pas d'opération (no operation)
13.3.2 Remise (Yield)
13.3.3 Retour (Return)
13.3.4 Libération (Free)
13.3.5 Non (Not)
13.3.6 Ou (Or)
13.3.7 Ou exclusif (Exclusive or)
13.3.8 Et (And)
13.3.9 Egalité de référence (Equal reference)
13.3.10 Egal (Equal)
13.3.11 Inférieur à (Less than)
13.3.12 Supérieur à (Greater than)
13.3.13 Addition (Add)
13.3.14 Soustraction (Subtract)
13.3.15 Multiplication (Multiply)
13.3.16 Division (Divide)
13.3.17 Négation (Negate)
13.3.18 Reste (Remainder)
13.3.19 Duplication (Duplicate)
13.3.20 Conversion (Convert)
13.3.21 Saut sur condition vraie (Jump on true)
13.3.22 Saut sur condition fausse (Jump on false)
13.3.23 Saut (Jump)
13.3.24 Décalage (Shift)
13.3.25 Extraction de références à objet (Get
object reference)
13.3.26 Saut long sur condition vraie (Long jump
on true)
13.3.27 Saut long sur condition fausse (Long jump
on false)
13.3.28 Saut long (Long jump)
13.3.29 Appel (Call)
13.3.30 Appel externe (External call)
13.3.31 Empiler (Push)
13.3.32 Empiler référence (Push reference)
13.3.33 Empiler valeur immédiate (Push immediate)
13.3.34 Dépiler (Pop)
13.3.35 Dépiler référence (Pop reference)
13.3.36 Dépiler contenus (Pop contents)
13.3.37 Allocation (Allocate)
13.3.38 Incrément (Increment)
13.3.39 Décrément (Decrement)
13.3.40 Extraction
(Get)
13.3.41 Extraction de contenus (Get contents)
13.3.42 Affectation (Set)
13.3.43 Affectation de contenus (Set contents)
13.4 Règles de conversion de types
13.4.1 Conversions réversibles
13.4.2 Extensions sans perte
13.4.3 Extensions avec perte
13.4.4 Troncations vers booléens
13.4.5 Troncations entre types entiers ou
flottants
13.4.6 Troncations de valeur flottante à entier
14.1 Spécifications IDL
14.2 Modules et interfaces IDL
14.3 Opérations IDL
14.3.1 Nom d’opération
14.3.2 Paramètres
d’opération
14.3.3 Paramètre implicite
14.3.4 Valeur de retour
14.4 Attributs IDL
14.4.1 Accesseur (Accessor)
14.4.2 Modificateur (Modifier)
14.4.3 Attribut en lecture seule
14.5 Opérations IDL héritées
14.6 Exceptions IDL
14.6.1 Nom d’exception
14.6.2 Membres d’une exception
14.6.3 Membre implicite
14.7 Types IDL
14.7.1 Type char
14.7.2 Type enum
14.7.3 Types construits
14.7.4 Type any
14.7.5 Restrictions sur les types
14.8 Constantes IDL
15 L’API MHEG-3
15.1 Objet interpréteur de script (ScriptInterpreter)
15.1.1 Opération Détruire (kill)
15.1.2 Opération Préparer (prepare)
15.2 Objet MhScript
15.2.1 Opération détruire (destroy)
15.2.2 Opération new
15.3 Object RtScript
15.3.1 Opération Détruire (delete)
15.3.2 Opération Affectation de priorité (setPriority)
15.3.3 Opération Extraction de priorité
(getPriority)
15.3.4 Opération Affectation de donnée (setData)
15.3.5 Opération Extraction de donnée (getData)
15.3.6 Opération Allouer (Allocate)
15.3.7 Opération Libérer (free)
15.3.8 Opération Arrêter (stop)
15.3.9 Opération Réinitialisation (reInit)
15.3.10 Opération Extraction de statut de
RtScript (getRtScriptStatus)
15.3.11 Opération Ouvrir (open)
15.4 Objet Invocation de routine (RoutineInvocation)
15.4.1 Opération Fermer (close)
15.4.2 Attribut en lecture seule Identificateur
de routine (routine_id)
15.4.3 Opération Affectation de paramètre
(setParameter)
15.4.4 Opération Extraction de prototype
(getPrototype)
15.4.5 Opération Fonctionner (run)
15.4.6
Opération Remise à zéro (reset)
15.4.7 Opération Extraction du statut
d’invocation (getInvocationStatus)
Annexe A – Spécification ASN.1 des scripts échangés
Annexe B – Représentation codée des scripts échangés
B.1 Codage des
scripts échangés
B.2 Codage du code programme
B.2.1 Instructions code opérateur
B.2.2 Instructions opérande
Annexe C – Eléments prédéfinis de la SIR MHEG
C.1 Types prédéfinis
C.1.1 Types primitifs
C.1.2 Types de l’API MHEG
C.2 Fonctions prédéfinies
C.2.1 Opérations de l’API MHEG
C.2.2 Opérations de l’API MHEG-3
C.3 Messages prédéfinis
C.3.1 Opérations de l’API MHEG-3
C.3.2 L’exception InstructionExecutionError
(erreur d’exécution d’instruction)
C.3.3 Exceptions de l’API MHEG-3
C.3.4
Exceptions de l’API MHEG
Annexe E – Processus de définition de l’API MHEG
E.1 Cadre de définition de l’API générique
E.1.1 Eléments MHEG en entrée du processus de
définition de l’API MHEG
E.1.2 Eléments IDL en sortie du processus de
définition de l’API MHEG
E.1.3 Contraintes vis-à-vis du processus de
définition de l’API MHEG
E.1.4 Structure générale de l’API MHEG
E.1.5 Définition de types de données IDL non
objets
E.1.6 Définition d’interface IDL
E.1.7 Définition d’attribut IDL
E.1.8 Définition d’opération IDL
E.1.9 Définition d’exception IDL
Annexe F – Spécification IDL de l’API MHEG-3
Annexe G – Relations avec les autres parties des Recommandations UIT-T de la
série T.170 (et parties de l'ISO/CEI
13522)
G.1 Relations avec la Rec. UIT-T T.171 (et l'ISO/CEI 13522‑1)
G.2 Relations avec la Rec.
UIT-T T.172 (et l'ISO/CEI 13522‑5)
Appendice I – Syntaxe de la SIR MHEG (notation EBNF)
Appendice II – Notation textuelle des scripts de la SIR MHEG
Appendice III – Entités MHEG
III.1 Objets MHEG
III.2 Mh-objects
III.3 Rt-objects
III.4 Objets MHEG échangés
Appendice IV – Principales caractéristiques de la SIR MHEG
IV.1 Caractéristiques des applications utilisatrices
IV.1.1 Manipulation d’entités MHEG
IV.1.2 Calcul,
manipulation de variables et contrôle de structure
IV.1.3 Contrôle de dispositifs externes
IV.1.4 Acquisition de données
IV.1.5 Accès à des données externes
IV.1.6 Accès à
des services externes d’exécution arbitraires
IV.2 Caractéristiques fonctionnelles
IV.2.1 Opérations de traitement de données
IV.2.2 Accès à des fonctions et données externes
IV.3
Caractéristiques techniques
IV.3.1 Indépendance vis-à-vis du matériel
IV.3.2 Représentation sous forme définitive
IV.3.3 Compacité
IV.3.4 Facilité d’implémentation
IV.3.5 Efficacité dans l’interprétation
IV.3.6 Ouverture et extensibilité
IV.3.7 Caractère non révisable
IV.3.8 Dispositions pour l’échange temps-réel
IV.3.9
Validation sémantique à des fins de qualité de service
IV.3.10 Caractère vérifiable de la syntaxe (en
relation avec les dangers de contamination)
IV.3.11 Représentation non propriétaire
IV.3.12 Traitement de script sécurisé