root/standards/cmml_2_1.dtd

Revision 2138, 12.7 kB (checked in by silvia, 3 years ago)

Moved to the latest version of xml2rfc and had to fix the cmml-03 I-D.

Line 
1 <!--
2
3   Continuous Media Markup Language CMML version 2.1 DTD
4   Authoring language for ANNODEX(TM) media.
5
6   Namespace = http://www.annodex.net/cmml
7
8   Copyright (c) 2001-
9   Commonwealth Scientific and Industrial Research Organisation
10   (CSIRO), Australia.
11   All Rights Reserved.
12
13   This DTD module is identified by the PUBLIC and SYSTEM identifiers:
14
15   PUBLIC "-//CSIRO//DTD CMML 2.1//EN"
16   SYSTEM "http://www.annodex.net/DTD/cmml_2_1.dtd"
17
18   $Revision: 2.1 $
19   $Date: 2006/03/04 24:00:00 $
20 -->
21
22 <!-- **************************** -->
23 <!-- Definition of Imported Names -->
24 <!-- **************************** -->
25
26 <!-- media type, as per [RFC2045] -->
27 <!ENTITY % ContentType "CDATA">
28  
29 <!-- space-separated list of link types -->
30 <!ENTITY % LinkTypes "CDATA">
31
32 <!-- single or comma-separated list of media descriptors -->
33 <!ENTITY % MediaDesc "CDATA">
34
35 <!-- used for titles etc. -->
36 <!ENTITY % Text "CDATA">
37
38 <!-- a Uniform Resource Identifier, see [RFC2396] -->
39 <!ENTITY % URI "CDATA">
40
41 <!-- a language code, as per [RFC1766] -->
42 <!ENTITY % LanguageCode "NMTOKEN">
43
44 <!-- timestamps similar to [RFC2326]
45  "smpte-24:" SMPTE time with a 24 fps basis
46  "smpte-24-drop:" SMPTE time with a 24/1.001 fps basis
47  "smpte-25:" SMPTE time with a 25 fps basis
48  "smpte-30:" SMPTE time with a 30 fps basis
49  "smpte-30-drop:" SMPTE time with a 30/1.001 fps basis
50  "smpte-50:" SMPTE time with a 50 fps basis
51  "smpte-60:" SMPTE time with a 60 fps basis
52  "smpte-60-drop:" SMPTE time with a 60/1.001 fps basis
53  "npt:" npt-time
54  "clock:" utc-time
55
56  Playbacktime is specified as a smpte-time
57  or npt-time only.
58
59  UTCtime is specified as in [RFC2326], but
60  without the "clock" identifier
61 -->
62 <!ENTITY % Timestamp    "CDATA">
63 <!ENTITY % Playbacktime "CDATA">
64 <!ENTITY % UTCtime      "CDATA">
65
66
67 <!-- ******************************** -->
68 <!-- Definition of Generic Attributes -->
69 <!-- ******************************** -->
70
71 <!-- core attributes common to most displayable elements
72   id       document-wide unique id
73   class    space separated list of classes
74   title    advisory title/amplification
75 -->
76 <!ENTITY % coreattrs
77  "id          ID                #IMPLIED
78   class       CDATA             #IMPLIED
79   title       %Text;            #IMPLIED"
80   >
81
82 <!-- internationalization attributes
83   xml:lang    language code (as per XML 1.0 spec)
84   dir         direction for weak/neutral text
85 -->
86 <!ENTITY % i18n
87  "lang        %LanguageCode; #IMPLIED
88   dir         (ltr|rtl)      #IMPLIED"
89   >
90
91 <!ENTITY % attrs "%coreattrs; %i18n;">
92
93
94 <!-- **************************** -->
95 <!-- Document Structure           -->
96 <!-- **************************** -->
97
98 <!-- ROOT ELEMENT: -->
99 <!-- cmml tag containing sequence of head and a tags -->
100 <!-- =============================================== -->
101 <!-- i18n  = the default language for the whole document including
102              the id tag of the cmml element -->
103 <!-- xmlns = namespace of the cmml tags -->
104 <!-- granulerate = the base temporal resolution to be used for the
105                    cmml bitstream -->
106 <!ELEMENT cmml (stream?, head, clip*)>
107 <!ATTLIST cmml
108   %i18n;
109   id          ID             #IMPLIED
110   xmlns       %URI;          #FIXED 'http://www.annodex.net/cmml'
111   granulerate CDATA          #IMPLIED
112   >
113
114
115 <!-- **************************** -->
116 <!-- Definition of stream element -->
117 <!-- **************************** -->
118
119 <!-- STREAM tag providing timing information for the ANNODEX file -->
120 <!-- (will be stored in the binary headers of the ANX bitstreams) -->
121 <!-- ============================================================ -->
122 <!-- (has no text attributes and thus no i18n; id tag follows default
123       language specified in cmml tag) -->
124 <!-- basetime  = base time associated with the first frame of the
125                  media document from which subsequent time references
126                  (such as in clip tags) will be taken relative to -->
127 <!-- timebase  = same as basetime; kept for backwards compatibility;
128                  deprecated and will not be used in versions>=3.0 -->
129 <!-- utc       = a mapping of the first frame to clock time;
130                  specifications of utc time offsets into the document
131                  as in a URI will be taken relative to this -->
132 <!ELEMENT stream (import*)>
133 <!ATTLIST stream
134   id          ID             #IMPLIED
135   basetime    %Playbacktime; "0"
136   timebase    %Playbacktime; "0"
137   utc         %UTCtime;      #IMPLIED
138   >
139
140 <!-- IMPORT tag giving descriptions on an input bitstream
141      (empty content)                                              -->
142 <!-- ============================================================ -->
143 <!-- i18n        = the language of the import tag's and the contained
144                    param tags' attribute values -->
145 <!-- title       = human readable comment on the import bitstream -->
146 <!-- granulerate = the base temporal resolution of the bitstream
147                    (e.g. its framerate for video or samplerate for
148                    audio) -->
149 <!-- contenttype = encoding format of the input document (a MIME type
150                    and a character encoding separated by semicolon)
151                    -->
152 <!-- src         = URI to the media document -->
153 <!-- start       = the start time of the media bitstream specified
154                    in src -->
155 <!-- end         = the end time of the media bitstream specified
156                    in src -->
157 <!ELEMENT import (param*)>
158 <!ATTLIST import
159   %i18n;
160   id          ID             #IMPLIED
161   title       %Text;         #IMPLIED
162   granulerate CDATA          #IMPLIED
163   contenttype %ContentType;  #IMPLIED
164   src         %URI;          #REQUIRED
165   start       %Timestamp;    "0"
166   end         %Timestamp;    #IMPLIED
167   >
168
169 <!-- PARAM description tags of an input bitstream (empty content) -->
170 <!-- (name-value pairs e.g. comments on recording quality or so)  -->
171 <!-- ============================================================ -->
172 <!-- (internationalisation inherited from the parent import tag)  -->
173 <!-- name  = identifies a property name; does not list legal values
174              for this attribute -->
175 <!-- value = specifies a property's value; does not list legal values
176              for this attribute -->
177 <!ELEMENT param EMPTY>
178 <!ATTLIST param
179   id          ID             #IMPLIED
180   name        CDATA          #REQUIRED
181   value       CDATA          #REQUIRED
182   >
183
184
185 <!-- **************************** -->
186 <!-- Definition of document head  -->
187 <!-- **************************** -->
188
189 <!-- head tag containing description of a specific media stream -->
190 <!-- ========================================================== -->
191 <!-- i18n    = the base language of the head's attribute values
192                and text content -->
193 <!-- profile = space-separated list of URIs to locate meta tag
194                schemes -->
195
196 <!-- content model is %head.misc; combined with a single
197      title and an optional base element in any order -->
198 <!ENTITY % head.misc "(meta|link)*">
199 <!ELEMENT head (%head.misc;,
200                 ((title, %head.misc;, (base, %head.misc;)?) |
201                  (base, %head.misc;, (title, %head.misc;))))>
202 <!ATTLIST head
203   %i18n;
204   id          ID             #IMPLIED
205   profile     %URI;          #IMPLIED
206   >
207
208 <!-- TITLE tag giving descriptive title of the media document  -->
209 <!-- ========================================================= -->
210 <!-- i18n  = the language of the title text -->
211 <!ELEMENT title (#PCDATA)>
212 <!ATTLIST title
213   %i18n;
214   id          ID             #IMPLIED
215   >
216
217
218 <!-- BASE URI of the document (empty content) -->
219 <!-- ======================================== -->
220 <!-- (internationalisation inherited from the parent head tag) -->
221 <!-- href = URI associated with the document; all relative URI
222             references get interpreted relative to this base -->
223 <!ELEMENT base EMPTY>
224 <!ATTLIST base
225   id          ID             #IMPLIED
226   href        %URI;          #REQUIRED
227   >
228
229 <!-- META description tags of the document (empty content) -->
230 <!-- ===================================================== -->
231 <!-- i18n    = the language of the meta attributes -->
232 <!-- name    = identifies a property name; does not list legal
233                values for this attribute -->
234 <!-- content = specifies a property's value; does not list legal
235                values for this attribute -->
236 <!-- scheme  = names a scheme to be used to interpret the property's
237                value (see the profiles tag in the head element for
238                locating these) -->
239 <!ELEMENT meta EMPTY>
240 <!ATTLIST meta
241   %i18n;
242   id          ID             #IMPLIED
243   name        NMTOKEN        #IMPLIED
244   content     CDATA          #REQUIRED
245   scheme      CDATA          #IMPLIED
246   >
247
248 <!-- LINK tag to specify relationship values (empty content) -->
249 <!-- ======================================================= -->
250 <!-- Relationship values can be used in principle:
251      a) for document specific toolbars/menus when used
252         with the link element in document head e.g.
253         start, contents, previous, next, index, end, help
254      b) to link to a separate style sheet (rel="stylesheet")
255      As charsets are given in the xml directive of cmml documents,
256      this attribute of html is not required for cmml.
257   -->
258 <!-- attrs = the language of the title text; a short description of
259              the relationship through title, and the stylesheet class
260              -->
261 <!-- href  = reference to a related document -->
262 <!-- type  = type of the document referenced, e.g. "text/css" -->
263 <!-- rel   = type of relationship to forward linked document -->
264 <!-- rev   = type of relationship to reverse linked document -->
265 <!-- media = type or medium/media to be rendered on, default "screen"
266              -->
267
268 <!ELEMENT link EMPTY>
269 <!ATTLIST link
270   %attrs;
271   href        %URI;          #IMPLIED
272   type        %ContentType;  #IMPLIED
273   rel         %LinkTypes;    #IMPLIED
274   rev         %LinkTypes;    #IMPLIED
275   media       %MediaDesc;    #IMPLIED
276   >
277
278
279 <!-- ************************** -->
280 <!-- Definition of clip tags    -->
281 <!-- ************************** -->
282
283 <!-- Clip tag containing information for a specific fragment -->
284 <!-- ======================================================= -->
285 <!-- through meta, a, img and desc are given in specific order
286      here, their order is acutally random -->
287 <!-- attrs    = the base language of the clip's attribute values and
288                 of its content elements; a short title representing
289                 the anchor (e.g. in tooltips) -->
290 <!-- track    = defines different sets of clip tags; clip tags of
291                 same type cannot overlap temporally -->
292 <!-- start    = specifies the start time of the clip; specified in
293                time relative to the basetime of the header
294                 [NOT INCLUDED IN ANNODEXED DOCUMENT] -->
295 <!-- end      = specifies the end time of the clip; specified in
296                 time relative to the basetime of the header
297                 [NOT INCLUDED IN ANNODEXED DOCUMENT] -->
298
299 <!ELEMENT clip (meta*, a?, img?, desc?)>
300 <!ATTLIST clip
301   %attrs;
302   track       CDATA          "default"
303   start       %Timestamp;    #REQUIRED
304   end         %Timestamp;    #IMPLIED
305   >
306
307 <!-- A tag containing information for a specific clip -->
308 <!-- ================================================ -->
309 <!-- a tag contains anchor text being a textual description of the
310      link between the current element (the source anchor) and the
311      destination anchor given by the href attribute -->
312 <!-- attrs    = the base language of the clip's attribute values
313                 and of its content elements; the stylesheet class
314                 attribute; a short title representing the anchor
315                 (e.g. in tooltips) -->
316 <!-- href     = specifies the location of a Web resource, thus
317                 defining a link between the current element (the
318                 source anchor) and the destination anchor given by
319                 this attribute -->
320 <!ELEMENT a (#PCDATA)>
321 <!ATTLIST a
322   %attrs;
323   href        %URI;          #REQUIRED
324   >
325
326 <!-- IMG tag to include a representative image for the clip -->
327 <!-- ====================================================== -->
328 <!-- attrs = the language of the image's attribute values;
329              the stylesheet class attribute; a short title
330              representing the image (e.g. in tooltips) -->
331 <!-- src   = reference to the image                          -->
332 <!-- alt   = alternative text for the image (accessibility)  -->
333 <!ELEMENT img EMPTY>
334 <!ATTLIST img
335   %attrs;
336   src         %URI;          #REQUIRED
337   alt         CDATA          #IMPLIED
338   >
339
340 <!-- DESC human-readable, textual description of the clip
341      (annotation)                                            -->
342 <!-- ======================================================= -->
343 <!-- attrs    = the base language of the data in the
344                 description; the class & style attributes;
345                 a short title representing the desc (e.g. in
346                 tooltips) -->
347 <!ELEMENT desc (#PCDATA)>
348 <!ATTLIST desc
349   %attrs;
350   >
Note: See TracBrowser for help on using the browser.