Initial import of the CDE 2.1.30 sources from the Open Group.
[oweals/cde.git] / cde / programs / dthelp / parser / pass2 / htag2 / sdl.dtd
1 --  SDL Document-Type Definition
2     Copyright (c) Hewlett-Packard Company, 1994
3     Version 1.0  (2/23/94)
4     $XConsortium: sdl.dtd /main/3 1996/11/07 11:55:55 drk $
5 --
6
7 <!ENTITY m-lt CDATA "&<">
8 <!ENTITY m-and CDATA "&&">
9 <!ENTITY m-nl STARTTAG "newline">
10
11 <!SHORTREF sdldoc>
12   "&<" -> &m-lt,
13   "&&" -> &m-and,
14   ;
15
16 <!SHORTREF p>
17   "&#RE;" -> &m-nl,
18   "&<" -> &m-lt,
19   "&&" -> &m-and,
20   ;
21
22 sdldoc -> (vstruct, head*, snb?, virpage +)
23   <PARAM>
24     pub-id CDATA,
25     doc-id CDATA,
26     timestmp CDATA,
27     first-page CDATA,
28     product CDATA,
29     prodpn CDATA,
30     prodver CDATA,
31     license CDATA,
32     language CDATA,
33     charset CDATA,
34     author CDATA,
35     version CDATA,
36     sdldtd CDATA,
37     srcdtd CDATA,
38   <USEMAP sdldoc>
39   ;
40
41 vstruct -> (loids, toss?, lophrases?, index?, rel-docs?, rel-file?, notes?)
42   <PARAM>
43     version CDATA,
44     doc-id CDATA,
45   ;
46
47 virpage -> (head*, snb?, (block | form)*)
48   <PARAM>
49     id ID,
50     level NUMBER,
51     version CDATA,
52     language CDATA,
53     charset CDATA,
54     doc-id CDATA,
55     ssi CDATA,
56   ;
57
58 snb -> (head?,
59        (graphic  | text     | audio   | video    | animate | crossdoc |
60         man-page | textfile | sys-cmd | callback | script  | switch) +)
61   <PARAM>
62     version CDATA,
63   ;
64
65 block -> (head*, (p | cp)*)
66   <PARAM>
67     id ID,
68     level NUMBER,
69     version CDATA,
70     class (TABLE | CELL | LIST | ITEM | TEXT | UDEFFRMT),
71     language CDATA,
72     charset CDATA,
73     length NUMBER,
74     app (ALL | HELP | TUTORIAL | REF | SYS),
75     timing (SYNC | ASYNC),
76     SSI CDATA,
77   ;
78
79 form -> (head*, ((fstyle, fdata) | (fdata, fstyle)))
80   <PARAM>
81     id ID,
82     level NUMBER,
83     version CDATA,
84     class (TABLE | CELL | LIST | ITEM | TEXT | UDEFFRMT),
85     language CDATA,
86     charset CDATA,
87     length NUMBER,
88     app (ALL | HELP | TUTORIAL | REF | SYS),
89     ssi CDATA,
90   ;
91
92 fstyle -> (frowvec +)
93   <PARAM>
94     ncols NUMBER,
95   ;
96
97 frowvec -> EMPTY
98   <PARAM>
99     hdr (YES | NO),
100     cells IDREFS,
101   ;
102
103 fdata -> ((block | form)*)
104   ;
105
106 p -> (head*, (#PCDATA | key | sphrase | rev | if | spc | snref |
107               anchor  | link) +)
108   <EXCEPT> +(newline)
109   <PARAM>
110     id ID,
111     version CDATA,
112     type (LITERAL | LINED | DYNAMIC),
113     ssi CDATA,
114   <USEMAP p>
115   ;
116
117 newline -> EMPTY
118   ;
119
120 cp -> CDATA
121   <PARAM>
122     id ID,
123     version CDATA,
124     type (LITERAL | LINED | DYNAMIC),
125     ssi CDATA,
126   ;
127
128 head ->
129   (((#PCDATA | key | sphrase | rev | if | spc | snref | anchor | link)*),
130          subhead*)
131   <EXCEPT> +(newline)
132   <PARAM>
133     id ID,
134     version CDATA,
135     class (LABEL | HEAD | CAPTION | ANNOTATION | PHEAD | UDEFHEAD),
136     language CDATA,
137     charset CDATA,
138     type (LITERAL | LINED | DYNAMIC),
139     abbrev CDATA,
140     ssi CDATA,
141   <USEMAP p>
142   ;
143
144 subhead ->
145   ((#PCDATA | key | sphrase | rev | if | spc | snref | anchor | link)*)
146   <EXCEPT> +(newline)
147   <PARAM>
148     id ID,
149     version CDATA,
150     class (LABEL | HEAD | CAPTION | ANNOTATION | PHEAD | UDEFHEAD),
151     language CDATA,
152     charset CDATA,
153     type (LITERAL | LINED | DYNAMIC),
154     abbrev CDATA,
155     ssi CDATA,
156   <USEMAP p>
157   ;
158
159 anchor -> EMPTY
160   <PARAM>
161     id ID,
162   <USEMAP sdldoc>
163   ;
164
165 link -> ((#PCDATA | key | sphrase | rev | if | spc | snref | anchor) +)
166   <EXCEPT> -(link) +(newline)
167   <PARAM>
168     rid IDREF,
169     button IDREF,
170     linkinfo CDATA,
171     descript CDATA,
172     window (CURRENT | NEW | POPUP),
173     traversal (RETURN | NORETURN),
174   <USEMAP p>
175   ;
176
177 snref -> (refitem +, alttext?)
178   <EXCEPT> -(newline)
179   <PARAM>
180     id ID,
181   <USEMAP sdldoc>
182   ;
183
184 refitem -> (head*)
185   <PARAM>
186     rid IDREF,
187     class (FIGURE | IN-LINE | BUTTON | ICON | UDEFGRAPH |
188            TABLE  | CELL    | LIST   | ITEM | TEXT      | UDEFFRMT),
189     button IDREF,
190     ssi CDATA,
191   ;
192
193 alttext -> CDATA
194   ;
195
196 rev -> ((#PCDATA | key | sphrase | if | spc | snref | anchor | link)*)
197   <EXCEPT> -(rev) +(newline)
198   <USEMAP p>
199   ;
200
201 key -> ((#PCDATA | key | sphrase | rev | if | spc | snref | anchor)*)
202   <EXCEPT> -(link) +(newline)
203   <PARAM>
204     charset CDATA,
205     class (ACRO     | BOOK     | EMPH      | JARGON  | L10N   |
206            NAME     | QUOTE    | PRODUCT   | TERMDEF | TERM   |
207            MACH-IN  | MACH-OUT | MACH-CONT | PUB-LIT | UDEFKEY),
208     ssi CDATA,
209   <USEMAP p>
210   ;
211
212 sphrase -> ((#PCDATA | spc)*)
213   <PARAM>
214     class (SUPER | SUB),
215     ssi CDATA,
216   <USEMAP sdldoc>
217   ;
218
219 if -> (cond, then, else?)
220   <EXCEPT> -(newline)
221   <USEMAP sdldoc>
222   ;
223
224 cond -> CDATA
225   <PARAM>
226     interp CDATA,
227   ;
228
229 then -> 
230   ((#PCDATA | key | sphrase | rev | if | spc | snref | anchor | link)*)
231   <EXCEPT> +(newline)
232   <USEMAP p>
233   ;
234
235 else ->
236   ((#PCDATA | key | sphrase | rev | if | spc | snref | anchor | link)*)
237   <EXCEPT> +(newline)
238   <USEMAP p>
239   ;
240
241 spc -> EMPTY
242   <PARAM>
243     name CDATA,
244   <USEMAP sdldoc>
245   ;
246
247 graphic -> EMPTY
248   <PARAM>
249     id ID,
250     format CDATA,
251     method IDREF,
252     xid CDATA,
253   ;
254
255 text -> ((p | cp)*)
256   <PARAM>
257     id ID,
258     language CDATA,
259     charset CDATA,
260   ;
261
262 audio -> EMPTY
263   <PARAM>
264     id ID,
265     format CDATA,
266     method IDREF,
267     xid CDATA,
268   ;
269
270 video -> EMPTY
271   <PARAM>
272     id ID,
273     format CDATA,
274     method IDREF,
275     xid CDATA,
276   ;
277
278 animate -> EMPTY
279   <PARAM>
280     id ID,
281     format CDATA,
282     method IDREF,
283     xid CDATA,
284   ;
285
286 script -> CDATA
287   <PARAM>
288     id ID,
289     interp CDATA,
290   ;
291
292 crossdoc -> EMPTY
293   <PARAM>
294     id ID,
295     xid CDATA,
296   ;
297
298 man-page -> EMPTY
299   <PARAM>
300     id ID,
301     xid CDATA,
302   ;
303
304 textfile -> EMPTY
305   <PARAM>
306     id ID,
307     xid CDATA,
308     offset CDATA,
309     format CDATA,
310   ;
311
312 sys-cmd -> EMPTY
313   <PARAM>
314     id ID,
315     command CDATA,
316   ;
317
318 callback -> EMPTY
319   <PARAM>
320     id ID,
321     data CDATA,
322   ;
323
324 switch -> CDATA
325   <PARAM>
326     id ID,
327     interp CDATA,
328     branches IDREFS,
329   ;
330
331 rel-docs -> EMPTY
332   ;
333
334 rel-file -> EMPTY
335   ;
336
337 notes -> EMPTY
338   ;
339
340 loids -> (id*)
341   <PARAM>
342     count NUMBER
343   ;
344
345 id -> EMPTY
346   <PARAM>
347     type (VIRPAGE | BLOCK  | FORM    | P        | CP       | HEAD     |
348           SUBHEAD | ANCHOR | SWITCH  | SNREF    | GRAPHIC  | TEXT     |
349           AUDIO   | VIDEO  | ANIMATE | CROSSDOC | MAN-PAGE | TEXTFILE |
350           SYS-CMD | SCRIPT | CALLBACK),
351     rid IDREF,
352     rssi CDATA,
353     rlevel NUMBER,
354     offset NUMBER,
355   ;
356
357 index -> (entry*)
358   <PARAM>
359     count NUMBER
360   ;
361
362 entry -> (((#PCDATA | key | sphrase | rev | if | spc | snref)*), entry*)
363   <EXCEPT> +(newline)
364   <PARAM>
365     id ID,
366     main IDREFS,
367     locs IDREFS,
368     syns IDREFS,
369     sort CDATA,
370   <USEMAP p>
371   ;
372
373 lophrases -> (phrase +)
374   <PARAM>
375     count NUMBER
376   ;
377
378 phrase -> EMPTY
379   <PARAM>
380     text CDATA,
381   ;
382
383 toss -> ((keystyle | headstyle | formstyle | frmtstyle | grphstyle)*)
384   <PARAM>
385     count NUMBER
386   ;
387
388 keystyle -> EMPTY
389   <PARAM>
390     class (ACRO     | BOOK     | EMPH      | JARGON  | L10N   |
391            NAME     | QUOTE    | PRODUCT   | TERMDEF | TERM   |
392            MACH-IN  | MACH-OUT | MACH-CONT | PUB-LIT | UDEFKEY),
393     ssi CDATA,
394     rlevel NUMBER,
395     phrase CDATA,
396     srch-wt NUMBER,
397     enter CDATA,
398     exit CDATA,
399     pointsz NUMBER,
400     set-width NUMBER,
401     color CDATA,
402     xlfd CDATA,
403     xlfdi CDATA,
404     xlfdb CDATA,
405     xlfdib CDATA,
406     typenam CDATA,
407     typenami CDATA,
408     typenamb CDATA,
409     typenamib CDATA,
410     style (SERIF | SANS-SERIF | SYMBOL),
411     spacing (MONOSPACE | PROPSPACE),
412     weight (MEDIUM | BOLD),
413     slant (ROMAN | ITALIC | REV-ITALIC),
414     special (UNDERLINE | STRIKEOUT | NONE),
415   ;
416
417 headstyle -> EMPTY
418   <PARAM>
419     class (LABEL | HEAD | CAPTION | ANNOTATION | PHEAD | UDEFHEAD),
420     ssi CDATA,
421     rlevel NUMBER,
422     phrase CDATA,
423     srch-wt NUMBER,
424     orient (LEFT-ORIENT        | CENTER-ORIENT       | RIGHT-ORIENT |
425             LEFT-MARGIN-ORIENT | RIGHT-MARGIN-ORIENT |
426             LEFT-CORNER-ORIENT | RIGHT-CORNER-ORIENT ),
427     vorient (TOP-VORIENT | BOTTOM-VORIENT | CENTER-VORIENT),
428     placement (OBJECT | PARENT),
429     headw CDATA,
430     stack (HORIZ | VERT),
431     flow (WRAP | NOWRAP | JOIN),
432     pointsz NUMBER,
433     set-width NUMBER,
434     color CDATA,
435     xlfd CDATA,
436     xlfdi CDATA,
437     xlfdb CDATA,
438     xlfdib CDATA,
439     typenam CDATA,
440     typenami CDATA,
441     typenamb CDATA,
442     typenamib CDATA,
443     style (SERIF | SANS-SERIF | SYMBOL),
444     spacing (MONOSPACE | PROPSPACE),
445     weight (MEDIUM | BOLD),
446     slant (ROMAN | ITALIC | REV-ITALIC),
447     special (UNDERLINE | STRIKEOUT | NONE),
448     l-margin NUMBER,
449     r-margin NUMBER,
450     t-margin NUMBER,
451     b-margin NUMBER,
452     border (NO-BORDER       | FULL-BORDER | HORIZONTAL-BORDER |
453             VERTICAL-BORDER | TOP-BORDER  | BOTTOM-BORDER     |
454             LEFT-BORDER     | RIGHT-BORDER),
455     vjust  (TOP-VJUST       | BOTTOM-VJUST | CENTER-VJUST),
456     justify (LEFT-JUSTIFY   | RIGHT-JUSTIFY  |
457              CENTER-JUSTIFY | NUMERIC-JUSTIFY),
458   ;
459
460 formstyle -> EMPTY
461   <PARAM>
462     class (TABLE | CELL | LIST | ITEM | TEXT | UDEFFRMT),
463     ssi CDATA,
464     rlevel NUMBER,
465     phrase CDATA,
466     srch-wt NUMBER,
467     colw CDATA,
468     colj CDATA,
469     pointsz NUMBER,
470     set-width NUMBER,
471     color CDATA,
472     xlfd CDATA,
473     xlfdi CDATA,
474     xlfdb CDATA,
475     xlfdib CDATA,
476     typenam CDATA,
477     typenami CDATA,
478     typenamb CDATA,
479     typenamib CDATA,
480     style (SERIF | SANS-SERIF | SYMBOL),
481     spacing (MONOSPACE | PROPSPACE),
482     weight (MEDIUM | BOLD),
483     slant (ROMAN | ITALIC | REV-ITALIC),
484     special (UNDERLINE | STRIKEOUT | NONE),
485     l-margin NUMBER,
486     r-margin NUMBER,
487     t-margin NUMBER,
488     b-margin NUMBER,
489     border (NO-BORDER       | FULL-BORDER | HORIZONTAL-BORDER |
490             VERTICAL-BORDER | TOP-BORDER  | BOTTOM-BORDER     |
491             LEFT-BORDER     | RIGHT-BORDER),
492     vjust (TOP-VJUST | BOTTOM-VJUST | CENTER-VJUST),
493   ;
494
495 frmtstyle -> EMPTY
496   <PARAM>
497     class (TABLE | CELL | LIST | ITEM | TEXT | UDEFFRMT),
498     ssi CDATA,
499     rlevel NUMBER,
500     phrase CDATA,
501     f-margin CDATA,
502     srch-wt NUMBER,
503     pointsz NUMBER,
504     set-width NUMBER,
505     color CDATA,
506     xlfd CDATA,
507     xlfdi CDATA,
508     xlfdb CDATA,
509     xlfdib CDATA,
510     typenam CDATA,
511     typenami CDATA,
512     typenamb CDATA,
513     typenamib CDATA,
514     style (SERIF | SANS-SERIF | SYMBOL),
515     spacing (MONOSPACE | PROPSPACE),
516     weight (MEDIUM | BOLD),
517     slant (ROMAN | ITALIC | REV-ITALIC),
518     special (UNDERLINE | STRIKEOUT | NONE),
519     l-margin NUMBER,
520     r-margin NUMBER,
521     t-margin NUMBER,
522     b-margin NUMBER,
523     border (NO-BORDER       | FULL-BORDER | HORIZONTAL-BORDER |
524             VERTICAL-BORDER | TOP-BORDER  | BOTTOM-BORDER     |
525             LEFT-BORDER     | RIGHT-BORDER),
526     vjust (TOP-VJUST | BOTTOM-VJUST | CENTER-VJUST),
527     justify (LEFT-JUSTIFY   | RIGHT-JUSTIFY  |
528              CENTER-JUSTIFY | NUMERIC-JUSTIFY),
529   ;
530
531 grphstyle -> EMPTY
532   <PARAM>
533     class (FIGURE | IN-LINE | BUTTON | ICON | UDEFGRAPH),
534     ssi CDATA,
535     rlevel NUMBER,
536     phrase CDATA,
537     l-margin NUMBER,
538     r-margin NUMBER,
539     t-margin NUMBER,
540     b-margin NUMBER,
541     border (NO-BORDER       | FULL-BORDER | HORIZONTAL-BORDER |
542             VERTICAL-BORDER | TOP-BORDER  | BOTTOM-BORDER     |
543             LEFT-BORDER     | RIGHT-BORDER),
544     vjust (TOP-VJUST | BOTTOM-VJUST | CENTER-VJUST),
545     justify (LEFT-JUSTIFY   | RIGHT-JUSTIFY  |
546              CENTER-JUSTIFY | NUMERIC-JUSTIFY),
547   ;