1<? wireshark:protocol
2	proto_name="smil"
3	media="application/smil"
4	description="Synchronized Multimedia Integration Language"
5	?>
6
7<!--
8
9    This is the XML document type definition (DTD) for SMIL 1.0.
10
11    Date: 1998/06/15 08:56:30
12
13    Authors:
14        Jacco van Ossenbruggen <jrvosse@cwi.nl>
15        Sjoerd Mullender       <sjoerd@cwi.nl>
16
17    Further information about SMIL is available at:
18
19          https://www.w3.org/AudioVideo/
20
21-->
22
23
24<!-- Generally useful entities -->
25<!ENTITY % id-attr "id ID #IMPLIED">
26<!ENTITY % title-attr "title CDATA #IMPLIED">
27<!ENTITY % skip-attr "skip-content (true|false) 'true'">
28<!ENTITY % desc-attr "
29        %title-attr;
30        abstract        CDATA   #IMPLIED
31        author          CDATA   #IMPLIED
32        copyright       CDATA   #IMPLIED
33">
34
35<!--=================== SMIL Document =====================================-->
36<!--
37     The root element SMIL contains all other elements.
38-->
39<!ELEMENT smil (head?,body?)>
40<!ATTLIST smil
41        %id-attr;
42>
43
44<!--=================== The Document Head =================================-->
45<!ENTITY % layout-section "layout|switch">
46
47<!ENTITY % head-element "(meta*,((%layout-section;), meta*))?">
48
49<!ELEMENT head %head-element;>
50<!ATTLIST head %id-attr;>
51
52
53<!--=================== Layout Element ====================================-->
54<!--
55     Layout contains the region and root-layout elements defined by
56     smil-basic-layout or other elements defined an external layout
57     mechanism.
58-->
59<!ELEMENT layout (region|root-layout)>
60<!ATTLIST layout
61        %id-attr;
62        type CDATA      "text/smil-basic-layout"
63>
64
65
66<!--=================== Region Element ===================================-->
67<!ENTITY % viewport-attrs "
68        height              CDATA    #IMPLIED
69        width               CDATA    #IMPLIED
70        background-color    CDATA    #IMPLIED
71">
72
73<!ELEMENT region EMPTY>
74<!ATTLIST region
75        %id-attr;
76        %title-attr;
77        %viewport-attrs;
78        left                CDATA    "0"
79        top                 CDATA    "0"
80        z-index             CDATA    "0"
81        fit                 (hidden|fill|meet|scroll|slice)    "hidden"
82        %skip-attr;
83>
84
85<!--=================== Root-layout Element ================================-->
86<!ELEMENT root-layout EMPTY>
87<!ATTLIST root-layout
88        %id-attr;
89        %title-attr;
90        %viewport-attrs;
91        %skip-attr;
92>
93
94
95<!--=================== Meta Element=======================================-->
96<!ELEMENT meta EMPTY>
97<!ATTLIST meta
98        name    NMTOKEN #REQUIRED
99        content CDATA   #REQUIRED
100        %skip-attr;
101>
102
103<!--=================== The Document Body =================================-->
104<!ENTITY % media-object "audio|video|text|img|animation|textstream|ref">
105<!ENTITY % schedule "par|seq|(%media-object;)">
106<!ENTITY % inline-link "a">
107<!ENTITY % assoc-link "anchor">
108<!ENTITY % link "%inline-link;">
109<!ENTITY % container-content "(%schedule;)|switch|(%link;)">
110<!ENTITY % body-content "(%container-content;)">
111
112<!ELEMENT body (%body-content;)*>
113<!ATTLIST body %id-attr;>
114
115<!--=================== Synchronization Attributes ========================-->
116<!ENTITY % sync-attributes "
117        begin   CDATA   #IMPLIED
118        end     CDATA   #IMPLIED
119">
120
121<!--=================== Switch Parameter Attributes =======================-->
122<!ENTITY % system-attribute "
123        system-bitrate             CDATA                #IMPLIED
124        system-language            CDATA                #IMPLIED
125        system-required            NMTOKEN              #IMPLIED
126        system-screen-size         CDATA                #IMPLIED
127        system-screen-depth        CDATA                #IMPLIED
128        system-captions            (on|off)             #IMPLIED
129        system-overdub-or-caption  (caption|overdub)    #IMPLIED
130">
131
132<!--=================== Fill Attribute ====================================-->
133<!ENTITY % fill-attribute "
134        fill    (remove|freeze)    'remove'
135">
136
137
138<!--=================== The Parallel Element ==============================-->
139<!ENTITY % par-content "%container-content;">
140<!ELEMENT par    (%par-content;)*>
141<!ATTLIST par
142        %id-attr;
143        %desc-attr;
144        endsync CDATA           "last"
145        dur     CDATA           #IMPLIED
146        repeat  CDATA           "1"
147        region  IDREF           #IMPLIED
148        %sync-attributes;
149        %system-attribute;
150>
151
152<!--=================== The Sequential Element ============================-->
153<!ENTITY % seq-content "%container-content;">
154<!ELEMENT seq    (%seq-content;)*>
155<!ATTLIST seq
156        %id-attr;
157        %desc-attr;
158        dur     CDATA           #IMPLIED
159        repeat  CDATA           "1"
160        region  IDREF           #IMPLIED
161        %sync-attributes;
162        %system-attribute;
163>
164
165<!--=================== The Switch Element ================================-->
166<!-- In the head, a switch may contain only layout elements,
167     in the body, only container elements. However, this
168     constraint cannot be expressed in the DTD (?), so
169     we allow both:
170-->
171<!ENTITY % switch-content "layout|(%container-content;)">
172<!ELEMENT switch (%switch-content;)*>
173<!ATTLIST switch
174        %id-attr;
175        %title-attr;
176>
177
178<!--=================== Media Object Elements =============================-->
179<!-- SMIL only defines the structure. The real media data is
180     referenced by the src attribute of the media objects.
181-->
182
183<!-- Furthermore, they have the following attributes as defined
184     in the SMIL specification:
185-->
186<!ENTITY % mo-attributes "
187        %id-attr;
188        %desc-attr;
189        region     IDREF           #IMPLIED
190        alt        CDATA           #IMPLIED
191        longdesc   CDATA           #IMPLIED
192        src        CDATA           #IMPLIED
193        type       CDATA           #IMPLIED
194        dur        CDATA           #IMPLIED
195        repeat     CDATA           '1'
196        %fill-attribute;
197        %sync-attributes;
198        %system-attribute;
199">
200
201<!--
202     Most info is in the attributes, media objects are empty or
203     contain associated link elements:
204-->
205<!ENTITY % mo-content "(%assoc-link;)*">
206<!ENTITY % clip-attrs "
207        clip-begin      CDATA   #IMPLIED
208        clip-end        CDATA   #IMPLIED
209">
210
211<!ELEMENT ref           %mo-content;>
212<!ELEMENT audio         %mo-content;>
213<!ELEMENT img           %mo-content;>
214<!ELEMENT video         %mo-content;>
215<!ELEMENT text          %mo-content;>
216<!ELEMENT textstream    %mo-content;>
217<!ELEMENT animation     %mo-content;>
218
219<!ATTLIST ref           %mo-attributes; %clip-attrs;>
220<!ATTLIST audio         %mo-attributes; %clip-attrs;>
221<!ATTLIST video         %mo-attributes; %clip-attrs;>
222<!ATTLIST animation     %mo-attributes; %clip-attrs;>
223<!ATTLIST textstream    %mo-attributes; %clip-attrs;>
224<!ATTLIST text          %mo-attributes;>
225<!ATTLIST img           %mo-attributes;>
226
227<!--=================== Link Elements =====================================-->
228
229<!ENTITY % smil-link-attributes "
230        %id-attr;
231        %title-attr;
232        href            CDATA                   #REQUIRED
233        show            (replace|new|pause)     'replace'
234">
235
236
237<!--=================== Inline Link Element ===============================-->
238<!ELEMENT a (%schedule;|switch)*>
239<!ATTLIST a
240        %smil-link-attributes;
241>
242
243
244<!--=================== Associated Link Element ===========================-->
245<!ELEMENT anchor EMPTY>
246<!ATTLIST anchor
247        %skip-attr;
248        %smil-link-attributes;
249        %sync-attributes;
250        coords          CDATA                   #IMPLIED
251>
252
253