comparison etc/sgml/html-plus+.dtd @ 8:4b173ad71786 r19-15b5

Import from CVS: tag r19-15b5
author cvs
date Mon, 13 Aug 2007 08:47:35 +0200
parents 376386a54a3c
children
comparison
equal deleted inserted replaced
7:c153ca296910 8:4b173ad71786
1 <!DOCTYPE HTMLPLUS [
2
3 <!-- DTD for HTML+ It assumes the default <!SGML> declaration.
4
5 Markup minimisation should be avoided with the exception of </>
6 for the endtag. Browsers should be forgiving of markup errors.
7
8 Common Attributes:
9
10 id The id attribute allows authors to name elements such as
11 headers and paragraphs as potential destinations for links.
12 Note links don't specify points, but rather extended objects.
13
14 index Allows authors to specify how given headers etc should be
15 indexed as primary or secondary keys, where "/" separates
16 primary from secondary keys ";" separates multiple entries
17 -->
18
19 <!-- ENTITY DECLARATIONS with <!ENTITY>
20
21 <!ENTITY % foo "X | Y | Z"> is a macro definition for parameters and
22 in subsequent statements, the string "%foo;" is expanded to "X | Y | Z"
23
24 Various classes of SGML text types:
25
26 #CDATA text which doesn't include markup or entity references
27
28 #RCDATA text with entity references but no markup
29
30 #PCDATA text occurring in a context in which markup and entity
31 references may occur.
32 -->
33
34 <!ENTITY % URL "CDATA" -- a URL or URN designating a hypertext node -->
35 <!ENTITY % text "#PCDATA|A|IMG|EM|EMBED|INPUT|SP|BR|ADDRESS|CHANGED">
36 <!ENTITY % paras "P|PRE|FIG|HR">
37 <!ENTITY % lists "UL|OL|DL">
38 <!ENTITY % misc "TBL|FORM|PANEL|GROUP">
39 <!ENTITY % heading "H1|H2|H3|H4|H5|H6">
40 <!ENTITY % table "%text;|P|%heading;|%lists;">
41 <!ENTITY % main "%heading;|%misc;|%lists;|%paras;|%text;">
42 <!ENTITY % setup "(TITLE? & HTML? &ISINDEX? & NEXTID? & LINK* & BASE?)">
43
44 <!--
45 <!ELEMENT tagname - - CONTENT> elements needing closing tags
46 <!ELEMENT tagname - O CONTENT> elements without closing tags
47 <!ELEMENT tagname - O EMPTY> elements without content or closing tags
48
49 The content definition is:
50 a) an entity reference as defined above
51 b) a tagname
52 c) (brackets enclosing the above)
53
54 These may be combined with the operators:
55
56 A* A occurs zero or more times
57 A+ A occurs one or more times
58 AŻB implies either A or B
59 A? A may occur zero or one times
60 A,B implies first A then B
61 -->
62
63 <!ELEMENT HTMLPLUS O O ((HEAD, BODY) | ((%setup;), (%main;)*))>
64
65 <!ELEMENT HEAD - - (%setup;)>
66
67 <!ELEMENT BODY - - (%main;)*>
68
69 <!-- Document title -->
70
71 <!ELEMENT TITLE - - (#PCDATA | EM)+>
72 <!ATTLIST TITLE
73 id ID #IMPLIED -- link destination --
74 index CDATA #IMPLIED -- entries for index compilation -->
75
76 <!-- Document/Node role for cataloging documents held by servers -->
77
78 <!ELEMENT HTML - O (EMPTY)>
79
80 <!ATTLIST HTML role CDATA #IMPLIED -- home page, index, ... -->
81
82 <!-- Floating panel which can be moved around relative to the normal text
83 flow. Often rendered with a different background and possibly framed. The
84 panel can be anchored to a named point in the document as specified by the
85 AT attribute. The panel may be placed at that point or after, but not
86 before.
87 -->
88
89 <!ELEMENT PANEL - - (TITLE?, (%main;)*)>
90
91 <!ATTLIST PANEL
92 id ID #IMPLIED -- defines link destination --
93 at IDREF #IMPLIED -- anchor point --
94 index CDATA #IMPLIED -- entries for index compilation -->
95
96 <!-- Document headers -->
97
98 <!ELEMENT (%heading;) - - (#PCDATA | A | EM)+>
99
100 <!ATTLIST (%heading;)
101 id ID #IMPLIED -- defines link destination --
102 index CDATA #IMPLIED -- entries for index compilation -->
103
104 <!-- logical emphasis with optional style hints -->
105
106 <!ELEMENT EM - - (%text;)*>
107
108 <!ATTLIST EM
109 role CDATA #IMPLIED -- semantic category e.g. CITE --
110 b (b) #IMPLIED -- render in bold font --
111 i (i) #IMPLIED -- render in italic font --
112 u (u) #IMPLIED -- underline text --
113 tt (tt) #IMPLIED -- render in typewriter font --
114 tr (tr) #IMPLIED -- render in serif (Times Roman) font --
115 hv (hv) #IMPLIED -- render in sans serif (Helvetica) font --
116 sup (sup) #IMPLIED -- superscript --
117 sub (sub) #IMPLIED -- subscript --
118 index CDATA #IMPLIED -- entries for index compilation -->
119
120 <!-- Paragraphs with different roles and optional style hints -->
121
122 <!ELEMENT P - O (%text;)+>
123
124 <!ATTLIST P
125 id ID #IMPLIED -- link destination --
126 role CDATA #IMPLIED -- semantic role --
127 align CDATA #IMPLIED -- left, center or right --
128 indent (indent) #IMPLIED -- indented margins --
129 index CDATA #IMPLIED -- entries for index compilation -->
130
131 <!ELEMENT HR - O EMPTY -- horizontal rule -->
132
133 <!ELEMENT BR - O EMPTY -- line break -->
134
135 <!ELEMENT SP - O EMPTY -- unbreakable space -->
136
137 <!-- Preformatted text with fixed pitch font, respecting original spacing
138 and newlines. Authors can also request proportional fonts. Further control
139 is possible with EM.
140 -->
141
142 <!ELEMENT ADDRESS - - (%text;|P)+>
143
144 <!ELEMENT PRE - - (%text;)+>
145
146 <!ATTLIST PRE
147 id ID #IMPLIED -- link destination --
148 style CDATA #IMPLIED -- various styles --
149 tr (tr) #IMPLIED -- serif (Times Roman) font --
150 hv (hv) #IMPLIED -- sans serif (Helvetica) font --
151 width NUMBER #IMPLIED -- e.g. 40, 80, 132 --
152 index CDATA #IMPLIED -- entries for index compilation -->
153
154 <!-- Lists which can be nested -->
155
156 <!ELEMENT OL - - (LI | UL | OL)+ -- ordered list -->
157
158 <!ATTLIST OL
159 id ID #IMPLIED
160 compact (compact) #IMPLIED
161 index CDATA #IMPLIED -- entries for index compilation -->
162
163 <!ELEMENT UL - - (LI | UL | OL)+ -- unordered list -->
164
165 <!ATTLIST UL
166 id ID #IMPLIED -- link destination --
167 compact (compact) #IMPLIED -- reduced interitem spacing --
168 narrow (narrow) #IMPLIED -- narrow perhaps multi columns --
169 index CDATA #IMPLIED -- entries for index compilation -->
170
171 <!-- List items for UL and OL lists -->
172
173 <!ELEMENT LI - O (P|%text;)+>
174
175 <!ATTLIST LI
176 id ID #IMPLIED
177 src %URL; #IMPLIED -- icon for use in place of bullet --
178 index CDATA #IMPLIED -- entries for index compilation -->
179
180 <!-- Definition Lists (terms + definitions) -->
181
182 <!ELEMENT DL - - (DT,DD)+ -- DT and DD *MUST* be paired -- >
183
184 <!ATTLIST DL
185 id ID #IMPLIED
186 compact (compact) #IMPLIED
187 index CDATA #IMPLIED -- entries for index compilation -->
188
189 <!ELEMENT DT - O (%text;)+ -- term text -- >
190
191 <!ELEMENT DD - O (P|QUOTE|UL|OL|%text;)+ -- definition text -- >
192
193 <!ATTLIST (DT|DD)
194 id ID #IMPLIED
195 index CDATA #IMPLIED -- entries for index compilation -->
196
197 <!-- Tables with titles and column headers, e.g.
198
199 <tbl border>
200 <tt> An Example of a Table
201 <th> <th s="2"> average <th> other <tr>
202 <th> <th> height <th> weight <th> category <tr>
203 <td> males <td> 1.9 <td> .003 <td> yyy <tr>
204 <td> females <td> 1.7 <td> .002 <td> xxx
205 </tbl>
206 -->
207
208 <!ELEMENT TBL - - (TT?, (TH|TD|TR|TB)*) -- mixed headers and data -->
209
210 <!ATTLIST TBL
211 id ID #IMPLIED
212 compact (compact) #IMPLIED -- if present use compact style --
213 border (border) #IMPLIED -- if present draw borders --
214 index CDATA #IMPLIED -- entries for index compilation -->
215
216 <!ELEMENT TT - O (%text;)+ -- table title -->
217
218 <!ATTLIST TT top (top) #IMPLIED -- place title above table -->
219
220 <!ELEMENT TH - O (%table;)* -- a header cell -->
221
222 <!ATTLIST TH
223 colspan NUMBER 1 -- columns spanned --
224 rowspan NUMBER 1 -- rows spanned --
225 align CDATA #IMPLIED -- left, center or right -->
226
227 <!ELEMENT TD - O (%table;)* -- a data cell -->
228
229 <!ATTLIST TD
230 colspan NUMBER 1 -- columns spanned --
231 rowspan NUMBER 1 -- rows spanned --
232 align CDATA #IMPLIED -- left, center or right -->
233
234 <!ELEMENT TR - O EMPTY -- row *separator* not terminator -->
235
236 <!ELEMENT TB - O EMPTY -- vertical break of 1/2 line spacing -->
237
238 <!-- Forms composed from input fields and selection menus
239
240 These elements define fields which users can type into or select with mouse
241 clicks. The browser should manage the input focus e.g. with the tab/shift
242 tab keys and mouse clicks.
243
244 The enter/return key is then taken to mean the use has filled in the form
245 and wants the apppropriate action taken:
246
247 - send as query/update to WWW server
248 - email/fax to designated person
249
250 The action is specified as a URL, e.g. "mailto:dsr@hplb.hpl.hp.com You can
251 specify additional mail headers with the MH tag:
252
253 <MH>Subject: Please add me to tennis tournament</MH>
254
255 Each FORM should include one or more INPUT elements which can be layed out
256 with normal and preformatted text, lists and tables.
257 -->
258
259 <!ELEMENT FORM - - (MH?,(%main;)*)>
260
261 <!ATTLIST FORM
262 id ID #IMPLIED
263 action %URL; #IMPLIED
264 index CDATA #IMPLIED -- entries for index compilation -->
265
266 <!ELEMENT MH - - CDATA -- one or more RFC 822 header fields -->
267
268 <!ATTLIST MH hidden (hidden) #IMPLIED -- hide mail headers from view -->
269
270 <!-- INPUT elements should be defined within a FORM element.
271
272 Users can alter the value of the INPUT element by typing or clicking with
273 the mouse. Use radio buttons for selecting one attribute value from a set
274 of alternatives. In this case there will be several INPUT elements with the
275 same name. Attributes which can take multiple values at the same time
276 should be defined with checkboxes: define each allowed value in a separate
277 INPUT element but with the same attribute name. For checkboxes and radio
278 buttons, the value doesn't change, instead the state of the button shown by
279 the presence or absence of the checked attribute in each element.
280 The size attribute specifies the size of the input field as appropriate to
281 each type. For text this gives the width in characters and height in lines
282 (separated by an "x"). For numbers this gives the maximum precision.
283 -->
284
285 <!ELEMENT INPUT - O EMPTY>
286
287 <!ATTLIST INPUT
288 name CDATA #IMPLIED -- attribute name (may not be unique) --
289 type CDATA #IMPLIED --TEXT,URL,INT,FLOAT,DATE,CHECKBOX,RADIO--
290 size CDATA #IMPLIED -- e.g."32x4" for multiline text --
291 value CDATA #IMPLIED -- attribute value (altered by user) --
292 checked (checked) #IMPLIED -- for check boxes and radio buttons --
293 disabled (disabled) #IMPLIED -- if grayed out --
294 error (error) #IMPLIED -- if in error -->
295
296 <!-- Embedded Data
297
298 You can embed information in a foreign format into the HTML+ document. This
299 is very convenient for mathematical equations and simple drawings. Images
300 and complex drawings are better specified as linked documents using the FIG
301 or IMG elements.
302
303 Arbitrary 8 bit data is allowed but any occurrences of the following chars
304 must be escaped as shown:
305
306 "&" by "&amp;"
307 "<" by "&lt;"
308 ">" by "&gt;"
309
310 The browser can pipe such data thru filters to generate the corresponding
311 pixmap The data format is specified as a MIME content type, e.g. "text/eqn"
312 -->
313
314 <!ELEMENT EMBED - - (RCDATA)>
315
316 <!ATTLIST EMBED
317 id ID #IMPLIED
318 type CDATA #IMPLIED -- mime content type --
319 index CDATA #IMPLIED -- entries for index compilation -->
320
321 <!-- Figures
322
323 The image/drawing is specified by a URL or as embedded data for simple
324 drawings. The element's text serves as the caption. Use the emphasis with
325 style = "credits" to record photo credits etc.
326
327 FIGD allows dumb terminals etc to show a textual description in place
328 of the actual sound sequence, image, movie or graphic.
329 -->
330
331 <!ELEMENT FIG - - (EMBED?, FIGD?, (FIGA|FIGT)*, (%text;)*)>
332 <!ATTLIST FIG
333 id ID #IMPLIED
334 align CDATA #IMPLIED -- position: left, right or center --
335 cap CDATA #IMPLIED -- caption at left, right, top, bottom --
336 noflow (noflow) #IMPLIED -- disables text flow --
337 ismap (ismap) #IMPLIED -- server can handle mouse clicks/drags --
338 src %URL; #IMPLIED -- link to image data --
339 index CDATA #IMPLIED -- entries for index compilation -->
340
341 <!ELEMENT FIGD - - (%table;) -- figure description -->
342
343 <!-- Figure anchors designate polygonal areas on the figure which can be
344 clicked with the mouse. The default area is the whole of the figure. This
345 mechanism interprets mouse clicks locally, and browsers can choose to
346 highlight the designated area (or change the mouse sprite) when the mouse
347 is moved over the area.
348
349 Note that polygons may be non-convex or even intersect themselves, thereby
350 complicating the definition of what is enclosed by the polygon. Holes are
351 excluded.
352 -->
353
354 <!ELEMENT FIGA - O EMPTY>
355
356 <!ATTLIST FIGA
357 href %URL; #REQUIRED -- link to traverse when clicked --
358 area NUMBERS #IMPLIED -- x1,y1,x2,y2,x3,y3,... -->
359
360 <!-- FIGT Text on top of an figure background, or in a colored background
361 box which sits arbitrarily on top of an figure background. The text can
362 include headers, lists and tables etc. The width attribute allows you to
363 limit the width of the text box. The height is then determined
364 automatically by the browser.
365
366 FIGT can also be used to position a graphic on top of a picture using an
367 IMG element within FIGT. In this case the chromakey attribute may allow
368 parts of the underlying image to show through.
369 You can make the whole of the box into a hypertext link. This will act as
370 if it is underneath any hypertext links specified by the overlay markup
371 itself.
372 -->
373
374 <!ELEMENT FIGT - - (%main;)>
375 <!ATTLIST FIGT
376 at NUMBERS #IMPLIED -- upper left origin for text --
377 width NUMBER #IMPLIED -- given as fraction of picture --
378 framed (framed) #IMPLIED -- framed with coloured background --
379 href %URL; #IMPLIED -- link to traverse when clicked -->
380
381 <!-- inline icons/small graphics
382
383 The align attribute defines whether the top middle or bottom of the graphic
384 and current text line should be aligned vertically
385
386 The SEETHRU attribute is intended as a chromakey to allow a given colour to
387 be designated as "transparent". Pixels with this value should not be
388 painted. The exact format of this attribute's value has yet to be defined.
389
390 Use the FIG tag for captioned figures with active areas etc.
391 -->
392
393 <!ELEMENT IMG - O EMPTY>
394
395 <!ATTLIST IMG
396 src %URL; #REQUIRED -- where to get image data --
397 align CDATA #IMPLIED -- top, middle or bottom --
398 seethru CDATA #IMPLIED -- for transparency --
399 ismap (ismap) #IMPLIED -- send mouse clicks/drags to server -->
400
401 <!-- Hierarchical groups for books, chapters, sections etc. -->
402
403 <!ELEMENT GROUP - - ((TITLE|LINK*), (%main;)*)>
404
405 <!ATTLIST GROUP
406 id ID #IMPLIED
407 role CDATA #IMPLIED -- book, chapter, section etc. --
408 inset (inset) #IMPLIED -- rendering hint: indent margins -->
409
410 <!-- change bars defined by a matched pair of CHANGED elements:
411
412 <changed id=z34> changed text <changed idref=z34>
413
414 This tag can't act as a container, since changes don't respect
415 the nesting implied by paragraphs, headers, lists etc.
416 -->
417
418 <!ELEMENT CHANGED - O EMPTY>
419
420 <!ATTLIST CHANGED -- one of id and idref is always required --
421 id ID #IMPLIED -- signals start of changes --
422 idref IDREF #IMPLIED -- signals end of changes -->
423
424 <!-- Hypertext Links from points within document nodes -->
425
426 <!ELEMENT A - - (#PCDATA | IMG | EM | EMBED)*>
427
428 <!ATTLIST A
429 id ID #IMPLIED -- as target of link --
430 name CDATA #IMPLIED -- backwards compatibility --
431 href %URL; #IMPLIED -- destination node --
432 role CDATA #IMPLIED -- role of link, e.g. "partof" --
433 effect CDATA #IMPLIED -- replace/new/overlay --
434 print CDATA #IMPLIED -- reference/footnote/section --
435 title CDATA #IMPLIED -- when otherwise unavailable --
436 type CDATA #IMPLIED -- for presentation cues --
437 size NAMES #IMPLIED -- for progress cues -->
438
439 <!-- Other kinds of relationships between documents -->
440
441 <!ELEMENT LINK - O EMPTY>
442
443 <!ATTLIST LINK
444 href %URL; #IMPLIED -- destination node --
445 role CDATA #IMPLIED -- role played, e.g. "toc" -->
446
447 <!-- Original document URL for resolving relative URLs -->
448
449 <!ELEMENT BASE - O EMPTY>
450
451 <!ATTLIST BASE HREF %URL; #IMPLIED>
452
453 <!-- Signifies the document's URL accepts queries -->
454
455 <!ELEMENT ISINDEX - O (EMPTY)>
456
457 <!ATTLIST ISINDEX href %URL; #IMPLIED -- defaults to document's URL -->
458
459 <!-- For use with autonumbering editors - don't reuse ids,
460 instead, allocate next one starting from this one -->
461
462 <!ELEMENT NEXTID - O (EMPTY)>
463
464 <!ATTLIST NEXTID N NAME #REQUIRED>
465
466 <!-- Mnemonic character entities. -->
467
468 <!ENTITY AElig "&#198;" -- capital AE diphthong (ligature) -->
469 <!ENTITY Aacute "&#193;" -- capital A, acute accent -->
470 <!ENTITY Acirc "&#194;" -- capital A, circumflex accent -->
471 <!ENTITY Agrave "&#192;" -- capital A, grave accent -->
472 <!ENTITY Aring "&#197;" -- capital A, ring -->
473 <!ENTITY Atilde "&#195;" -- capital A, tilde -->
474 <!ENTITY Auml "&#196;" -- capital A, dieresis or umlaut mark -->
475 <!ENTITY Ccedil "&#199;" -- capital C, cedilla -->
476 <!ENTITY ETH "&#208;" -- capital Eth, Icelandic -->
477 <!ENTITY Eacute "&#201;" -- capital E, acute accent -->
478 <!ENTITY Ecirc "&#202;" -- capital E, circumflex accent -->
479 <!ENTITY Egrave "&#200;" -- capital E, grave accent -->
480 <!ENTITY Euml "&#203;" -- capital E, dieresis or umlaut mark -->
481 <!ENTITY Iacute "&#205;" -- capital I, acute accent -->
482 <!ENTITY Icirc "&#206;" -- capital I, circumflex accent -->
483 <!ENTITY Igrave "&#204;" -- capital I, grave accent -->
484 <!ENTITY Iuml "&#207;" -- capital I, dieresis or umlaut mark -->
485 <!ENTITY Ntilde "&#209;" -- capital N, tilde -->
486 <!ENTITY Oacute "&#211;" -- capital O, acute accent -->
487 <!ENTITY Ocirc "&#212;" -- capital O, circumflex accent -->
488 <!ENTITY Ograve "&#210;" -- capital O, grave accent -->
489 <!ENTITY Oslash "&#216;" -- capital O, slash -->
490 <!ENTITY Otilde "&#213;" -- capital O, tilde -->
491 <!ENTITY Ouml "&#214;" -- capital O, dieresis or umlaut mark -->
492 <!ENTITY THORN "&#222;" -- capital THORN, Icelandic -->
493 <!ENTITY Uacute "&#218;" -- capital U, acute accent -->
494 <!ENTITY Ucirc "&#219;" -- capital U, circumflex accent -->
495 <!ENTITY Ugrave "&#217;" -- capital U, grave accent -->
496 <!ENTITY Uuml "&#220;" -- capital U, dieresis or umlaut mark -->
497 <!ENTITY Yacute "&#221;" -- capital Y, acute accent -->
498 <!ENTITY aacute "&#225;" -- small a, acute accent -->
499 <!ENTITY acirc "&#226;" -- small a, circumflex accent -->
500 <!ENTITY aelig "&#230;" -- small ae diphthong (ligature) -->
501 <!ENTITY agrave "&#224;" -- small a, grave accent -->
502 <!ENTITY amp "&amp;" -- ampersand -->
503 <!ENTITY aring "&#229;" -- small a, ring -->
504 <!ENTITY atilde "&#227;" -- small a, tilde -->
505 <!ENTITY auml "&#228;" -- small a, dieresis or umlaut mark -->
506 <!ENTITY ccedil "&#231;" -- small c, cedilla -->
507 <!ENTITY eacute "&#233;" -- small e, acute accent -->
508 <!ENTITY ecirc "&#234;" -- small e, circumflex accent -->
509 <!ENTITY egrave "&#232;" -- small e, grave accent -->
510 <!ENTITY eth "&#240;" -- small eth, Icelandic -->
511 <!ENTITY euml "&#235;" -- small e, dieresis or umlaut mark -->
512 <!ENTITY gt "&#62;" -- greater than -->
513 <!ENTITY iacute "&#237;" -- small i, acute accent -->
514 <!ENTITY icirc "&#238;" -- small i, circumflex accent -->
515 <!ENTITY igrave "&#236;" -- small i, grave accent -->
516 <!ENTITY iuml "&#239;" -- small i, dieresis or umlaut mark -->
517 <!ENTITY lt "&lt;" -- less than -->
518 <!ENTITY ntilde "&#241;" -- small n, tilde -->
519 <!ENTITY oacute "&#243;" -- small o, acute accent -->
520 <!ENTITY ocirc "&#244;" -- small o, circumflex accent -->
521 <!ENTITY ograve "&#242;" -- small o, grave accent -->
522 <!ENTITY oslash "&#248;" -- small o, slash -->
523 <!ENTITY otilde "&#245;" -- small o, tilde -->
524 <!ENTITY ouml "&#246;" -- small o, dieresis or umlaut mark -->
525 <!ENTITY szlig "&#223;" -- small sharp s, German (sz ligature) -->
526 <!ENTITY thorn "&#254;" -- small thorn, Icelandic -->
527 <!ENTITY uacute "&#250;" -- small u, acute accent -->
528 <!ENTITY ucirc "&#251;" -- small u, circumflex accent -->
529 <!ENTITY ugrave "&#249;" -- small u, grave accent -->
530 <!ENTITY uuml "&#252;" -- small u, dieresis or umlaut mark -->
531 <!ENTITY yacute "&#253;" -- small y, acute accent -->
532 <!ENTITY yuml "&#255;" -- small y, dieresis or umlaut mark -->
533
534 <!-- dash entities -->
535
536 <!ENTITY endash "--" -- En dash -->
537 <!ENTITY emdash "---" -- Em dash -->
538
539 <!-- The END -->
540
541 ]>
542
543
544
545