CONTENTS

 1     Scope
        1.1     Specificity of the scope
        1.2     Issues outside the scope of this Recommendation
 2     Normative references
 3     Terms and definitions
 4     Conformance
        4.1     Conformance of MHEG-5 objects
        4.2     Conformance of MHEG-5 engines
                  4.2.1     Conformance to the acceptance of a set of Classes and Elementary Actions
                  4.2.2     Conformance to a set of engine functionality
                  4.2.3     Additional requirements for conformance specification
 5     Overview of the MHEG-5 classes
        5.1     Root
        5.2     Group
        5.3     Application
        5.4     Scene
        5.5     Ingredient
        5.6     Link
        5.7     Action
        5.8     Program
        5.9     Palette, Font, and CursorShape
       5.10     Variable
       5.11     Presentable
       5.12     TokenGroup
       5.13     ListGroup
       5.14     Stream
       5.15     Audio
       5.16     Interactible
       5.17     Visible
 6     Structure of this Recommendation
 7     Notations
        7.1     Attributes
                  7.1.1     Inherited attributes
                  7.1.2     Own exchanged attributes
                  7.1.3     Own internal attributes
        7.2     Events
        7.3     Internal behaviours
        7.4     Effect of MHEG-5 actions
        7.5     Formal description
 8     Root Class
        8.1     Attributes
                  8.1.1     Inherited attributes
                  8.1.2     Own exchanged attributes
                  8.1.3     Own internal MHEG-5 attributes
        8.2     Events
        8.3     Internal behaviours
        8.4     Effect of MHEG-5 actions
        8.5     Formal description
 9     Group Class
        9.1     Attributes
                  9.1.1     Inherited attributes
                  9.1.2     Own exchanged attributes
                  9.1.3     Own internal attributes
        9.2     Events
        9.3     Internal behaviours
        9.4     Effect of MHEG-5 actions
        9.5     Formal description
10     Application Class
       10.1     Attributes
                 10.1.1     Inherited attributes
                 10.1.2     Own exchanged attributes
                 10.1.3     Own internal attributes
       10.2     Events
       10.3     Internal behaviours
       10.4     Effect of MHEG-5 actions
       10.5     Formal description
11     Scene Class
       11.1     Attributes
                 11.1.1     Inherited attributes
                 11.1.2     Own exchanged attributes
                 11.1.3     Own internal attributes
       11.2     Events
       11.3     Internal behaviours
       11.4     Effect of MHEG-5 actions
       11.5     Formal description
12     Ingredient Class
       12.1     Attributes
                 12.1.1     Inherited attributes
                 12.1.2     Own exchanged attributes
                 12.1.3     Own internal attributes
       12.2     Events
       12.3     Internal behaviours
       12.4     Effect of MHEG-5 actions
       12.5     Formal description
13     Link Class
       13.1     Attributes
                 13.1.1     Inherited attributes
                 13.1.2     Own exchanged attributes
                 13.1.3     Own internal attributes
       13.2     Events
       13.3     Internal behaviours
       13.4     Effect of MHEG-5 actions
       13.5     Formal description
14     Program Class
       14.1     Attributes
                 14.1.1     Inherited attributes
                 14.1.2     Own exchanged attributes
                 14.1.3     Own internal attributes
       14.2     Events
       14.3     Internal behaviours
       14.4     Effect of MHEG-5 actions
       14.5     Formal description
15     ResidentProgram Class
       15.1     Attributes
                 15.1.1     Inherited attributes
                 15.1.2     Own exchanged attributes
                 15.1.3     Own internal attributes
       15.2     Events
       15.3     Internal behaviours
       15.4     Effect of MHEG-5 actions
       15.5     Formal description
16     RemoteProgram Class
       16.1     Attributes
                 16.1.1     Inherited attributes
                 16.1.2     Own exchanged attributes
                 16.1.3     Own internal attributes
       16.2     Events
       16.3     Internal behaviours
       16.4     Effect of MHEG-5 actions
       16.5     Formal description
17     InterchangedProgram Class
       17.1     Attributes
                 17.1.1     Inherited attributes
                 17.1.2     Own exchanged attributes
                 17.1.3     Own internal attributes
       17.2     Events
       17.3     Internal behaviours
       17.4     Effect of MHEG-5 actions
       17.5     Formal description
18     Palette Class
       18.1     Attributes
                 18.1.1     Inherited attributes
                 18.1.2     Own exchanged attributes
                 18.1.3     Own internal attributes
       18.2     Events
       18.3     Internal behaviours
       18.4     Effect of MHEG-5 actions
       18.5     Formal description
19     Font Class
       19.1     Attributes
                 19.1.1     Inherited attributes
                 19.1.2     Own exchanged attributes
                 19.1.3     Own internal attributes
       19.2     Events
       19.3     Internal behaviours
       19.4     Effect of MHEG-5 actions
       19.5     Formal description
20     CursorShape Class
       20.1     Attributes
                 20.1.1     Inherited attributes
                 20.1.2     Own exchanged attributes
                 20.1.3     Own internal attributes
       20.2     Events
       20.3     Internal behaviours
       20.4     Effect of MHEG-5 actions
       20.5     Formal description
21     Variable Class
       21.1     Attributes
                 21.1.1     Inherited attributes
                 21.1.2     Own exchanged attributes
                 21.1.3     Own internal attributes
       21.2     Events
       21.3     Internal behaviours
       21.4     Effect of MHEG-5 actions
       21.5     Formal description
22     BooleanVariable Class
       22.1     Attributes
                 22.1.1     Inherited attributes
                 22.1.2     Own exchanged attributes
                 22.1.3     Own internal attributes
       22.2     Events
       22.3     Internal behaviours
       22.4     Effect of MHEG-5 actions
       22.5     Formal description
23     IntegerVariable Class
       23.1     Attributes
                 23.1.1     Inherited attributes
                 23.1.2     Own exchanged attributes
                 23.1.3     Own internal attributes
       23.2     Events
       23.3     Internal behaviours
       23.4     Effect of MHEG-5 actions
       23.5     Formal description
24     OctetStringVariable Class
       24.1     Attributes
                 24.1.1     Inherited attributes
                 24.1.2     Own exchanged attributes
                 24.1.3     Own internal attributes
       24.2     Events
       24.3     Internal behaviours
       24.4     Effect of MHEG-5 actions
       24.5     Formal description
25     ObjectRefVariable Class
       25.1     Attributes
                 25.1.1     Inherited attributes
                 25.1.2     Own exchanged attributes
                 25.1.3     Own internal attributes
       25.2     Events
       25.3     Internal behaviours
       25.4     Effect of MHEG-5 actions
       25.5     Formal description
26     ContentRefVariable Class
       26.1     Attributes
                 26.1.1     Inherited attributes
                 26.1.2     Own exchanged attributes
                 26.1.3     Own internal attributes
       26.2     Events
       26.3     Internal behaviours
       26.4     Effect of MHEG-5 actions
       26.5     Formal description
27     Presentable Class
       27.1     Attributes
                 27.1.1     Inherited attributes
                 27.1.2     Own exchanged attributes
                 27.1.3     Own internal attributes
       27.2     Events
       27.3     Internal behaviours
       27.4     Effect of MHEG-5 actions
       27.5     Formal description
28     TokenManager Class
       28.1     Attributes
                 28.1.1     Inherited attributes
                 28.1.2     Own exchanged attributes
                 28.1.3     Own internal attributes
       28.2     Events
       28.3     Internal behaviours
       28.4     Effect of MHEG-5 actions
       28.5     Formal description
29     TokenGroup Class
       29.1     Attributes
                 29.1.1     Inherited attributes
                 29.1.2     Own exchanged attributes
                 29.1.3     Own internal attributes
       29.2     Events
       29.3     Internal behaviours
       29.4     Effect of MHEG-5 actions
       29.5     Formal description
30     ListGroup Class
       30.1     Attributes
                 30.1.1     Inherited attributes
                 30.1.2     Own exchanged attributes
                 30.1.3     Own internal attributes
       30.2     Events
       30.3     Internal behaviours
       30.4     Effect of MHEG-5 actions
       30.5     Formal description
31     Visible Class
       31.1     Attributes
                 31.1.1     Inherited attributes
                 31.1.2     Own exchanged attributes
                 31.1.3     Own internal attributes
       31.2     Events
       31.3     Internal behaviours
       31.4     Effect of MHEG-5 actions
       31.5     Formal description
32     Bitmap Class
       32.1     Attributes
                 32.1.1     Inherited attributes
                 32.1.2     Own exchanged attributes
                 32.1.3     Own internal attributes
       32.2     Events
       32.3     Internal behaviours
       32.4     Effect of MHEG-5 actions
       32.5     Formal description
33     LineArt Class
       33.1     Attributes
                 33.1.1     Inherited attributes
                 33.1.2     Own exchanged attributes
                 33.1.3     Own internal attributes
       33.2     Events
       33.3     Internal behaviours
       33.4     Effect of MHEG-5 actions
       33.5     Formal description
34     Rectangle Class
       34.1     Attributes
                 34.1.1     Inherited attributes
                 34.1.2     Own exchanged attributes
                 34.1.3     Own internal attributes
       34.2     Events
       34.3     Internal behaviours
       34.4     Effect of MHEG-5 actions
       34.5     Formal description
35     DynamicLineArt Class
       35.1     Attributes
                 35.1.1     Inherited attributes
                 35.1.2     Own exchanged attributes
                 35.1.3     Own internal attributes
       35.2     Events
       35.3     Internal behaviours
       35.4     Effect of MHEG-5 actions
       35.5     Formal description
36     Text Class
       36.1     Attributes
                 36.1.1     Inherited attributes
                 36.1.2     Own exchanged attributes
                 36.1.3     Own internal attributes
       36.2     Events
       36.3     Internal behaviours
       36.4     Effect of MHEG-5 actions
       36.5     Formal description
37     Stream Class
       37.1     Attributes
                 37.1.1     Inherited attributes
                 37.1.2     Own exchanged attributes
                 37.1.3     Own internal attributes
       37.2     Events
       37.3     Internal behaviours
       37.4     Effect of MHEG-5 actions
       37.5     Formal description
38     Audio Class
       38.1     Attributes
                 38.1.1     Inherited attributes
                 38.1.2     Own exchanged attributes
                 38.1.3     Own internal attributes
       38.2     Events
       38.3     Internal behaviours
       38.4     Effect of MHEG-5 actions
       38.5     Formal description
39     Video Class
       39.1     Attributes
                 39.1.1     Inherited attributes
                 39.1.2     Own exchanged attributes
                 39.1.3     Own internal attributes
       39.2     Events
       39.3     Internal behaviours
       39.4     Effect of MHEG-5 actions
       39.5     Formal description
40     RTGraphics Class
       40.1     Attributes
                 40.1.1     Inherited attributes
                 40.1.2     Own exchanged attributes
                 40.1.3     Own internal attributes
       40.2     Events
       40.3     Internal behaviours
       40.4     Effect of MHEG-5 actions
       40.5     Formal description
41     Interactible Class
       41.1     Attributes
                 41.1.1     Inherited attributes
                 41.1.2     Own exchanged attributes
                 41.1.3     Own internal attributes
       41.2     Events
       41.3     Internal behaviours
       41.4     Effect of MHEG-5 actions
       41.5     Formal description
42     Slider Class
       42.1     Attributes
                 42.1.1     Inherited attributes
                 42.1.2     Own exchanged attributes
                 42.1.3     Own internal attributes
       42.2     Events
       42.3     Internal behaviour
       42.4     Effect of MHEG-5 actions
       42.5     Formal description
43     EntryField Class
       43.1     Attributes
                 43.1.1     Inherited attributes
                 43.1.2     Own exchanged attributes
                 43.1.3     Own internal attributes
       43.2     Events
       43.3     Internal behaviours
       43.4     Effect of MHEG-5 actions
       43.5     Formal description
44     HyperText Class
       44.1     Attributes
                 44.1.1     Inherited attributes
                 44.1.2     Own exchanged attributes
                 44.1.3     Own internal attributes
       44.2     Events
       44.3     Internal behaviours
       44.4     Effect of MHEG-5 actions
       44.5     Formal description
45     Button Class
       45.1     Attributes
                 45.1.1     Inherited attributes
                 45.1.2     Own exchanged attributes
                 45.1.3     Own internal attributes
       45.2     Events
       45.3     Internal behaviours
       45.4     Effect of MHEG-5 actions
       45.5     Formal description
46     Hotspot Class
       46.1     Attributes
                 46.1.1     Inherited attributes
                 46.1.2     Own exchanged attributes
                 46.1.3     Own internal attributes
       46.2     Events
       46.3     Internal behaviours
       46.4     Effect of MHEG-5 actions
       46.5     Formal description
47     PushButton Class
       47.1     Attributes
                 47.1.1     Inherited attributes
                 47.1.2     Own exchanged attributes
                 47.1.3     Own internal attributes
       47.2     Events
       47.3     Internal behaviours
       47.4     Effect of MHEG-5 actions
       47.5     Formal description
48     SwitchButton Class
       48.1     Attributes
                 48.1.1     Inherited attributes
                 48.1.2     Own exchanged attributes
                 48.1.3     Own internal attributes
       48.2     Events
       48.3     Internal behaviours
       48.4     Effect of MHEG-5 actions
       48.5     Formal description
49     Action Class
       49.1     Attributes
                 49.1.1     Inherited attributes
                 49.1.2     Own exchanged attributes
       49.2     Own internal attributes
       49.3     Formal description
50     Referencing Objects, Content, Values, Colour and XYPosition
       50.1     ObjectReference
       50.2     ContentReference
       50.3     GenericObjectReference
       50.4     GenericContentReference
       50.5     GenericInteger
       50.6     GenericBoolean
       50.7     GenericOctetString
       50.8     Colour
       50.9     XYPosition
      50.10     Resolution of generic values
51     Referencing MHEG-5 Objects
52     Name Spaces, RemoteProgram Calls and Connections
53     Event handling
       53.1     Types of events
       53.2     Synchronous events and asynchronous events
       53.3     Event handling and Links
       53.4     User input
       53.5     User interaction
       53.6     Cursor events
       53.7     Error handling
54     Rendering Visibles
       54.1     Coordinate system
       54.2     Bounding box
       54.3     Display stack
       54.4     Transparent objects
       54.5     Pixel aspect ratio
Annex A – ASN.1 notation
Annex B – Textual notation for MHEG-5 applications
        B.1     General definitions
                  B.1.1     Code
                  B.1.2     Delimiter
                  B.1.3     Comment
                  B.1.4     Tag
        B.2     Definitions of symbols
        B.3     Terminal symbols
                  B.3.1     INTEGER
                  B.3.2     BOOLEAN
                  B.3.3     STRING
                  B.3.4     QPRINTABLE
                  B.3.5     BASE64
                  B.3.6     Null
                  B.3.7     Enumeration values
        B.4     MHEG-5 Object Definitions
                  B.4.1     Root Class
                  B.4.2     Group Class
                  B.4.3     Application Class
                  B.4.4     Scene Class
                  B.4.5     Ingredient Class
                  B.4.6     Link Class
                  B.4.7     Program Class
                  B.4.8     ResidentProgram Class
                  B.4.9     RemoteProgram Class
                 B.4.10     InterchangedProgram Class
                 B.4.11     Palette Class
                 B.4.12     Font Class
                 B.4.13     CursorShape Class
                 B.4.14     Variable Class
                 B.4.15     BooleanVariable Class
                 B.4.16     IntegerVariable Class
                 B.4.17     OctetStringVariable Class
                 B.4.18     ObjectRefVariable Class
                 B.4.19     ContentRefVariable Class
                 B.4.20     Presentable Class
                 B.4.21     TokenManager Class
                 B.4.22     TokenGroup Class
                 B.4.23     ListGroup Class
                 B.4.24     Visible Class
                 B.4.25     Bitmap Class
                 B.4.26     LineArt Class
                 B.4.27     Rectangle Class
                 B.4.28     DynamicLineArt Class
                 B.4.29     Text Class
                 B.4.30     Stream Class
                 B.4.31     Audio Class
                 B.4.32     Video Class
                 B.4.33     RTGraphics Class
                 B.4.34     Interactible Class
                 B.4.35     Slider Class
                 B.4.36     EntryField Class
                 B.4.37     HyperText Class
                 B.4.38     Button Class
                 B.4.39     Hotspot Class
                 B.4.40     PushButton Class
                 B.4.41     SwitchButton Class
                 B.4.42     Action Class
                 B.4.43     Referencing Objects, Contents, Values, Colour and Position
Appendix I – Bootstrap of an MHEG-5 engine
Appendix II – Definition of application domains
       II.1     Object interchange format
       II.2     Set of classes
       II.3     Set of features
       II.4     Content data encoding
       II.5     UserInput registers
       II.6     Semantic constraints on the MHEG-5 applications
       II.7     EngineEvent
       II.8     GetEngineSupport
       II.9     Protocol mapping and external interaction