Mercurial > hg > xemacs-beta
comparison etc/sgml/html-hj.dtd @ 2:ac2d302a0011 r19-15b2
Import from CVS: tag r19-15b2
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:46:35 +0200 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
1:c0c6a60d29db | 2:ac2d302a0011 |
---|---|
1 <!-- | |
2 html-hj.dtd | |
3 | |
4 Document Type Definition for the HyperText Markup Language (HTML | |
5 DTD) for Sun Microsystems Corp. HotJava environment | |
6 | |
7 | |
8 Date: 24 Jul 95 | |
9 | |
10 Revisions made by: Mark Gaither (markg@hal.com) | |
11 Original Author: Dave Raggett <dsr@hplb.hpl.hp.com> | |
12 | |
13 I have taken the HTML 3.0 DTD dated 16 Mar 95 and added the APP | |
14 element introduced by Sun Microsystems Corp. to accomodate their | |
15 Java/HotJava WWW application environment. | |
16 --> | |
17 | |
18 <!ENTITY % HTML.Version | |
19 "-//Sun Micorsystems Corp.//DTD HotJava HTML//EN" | |
20 | |
21 -- Typical usage: | |
22 | |
23 <!DOCTYPE HTML PUBLIC "-//Sun Micorsystems Corp.//DTD HotJava HTML//EN"> | |
24 <html> | |
25 ... | |
26 </html> | |
27 -- | |
28 > | |
29 | |
30 <!--================== Flags for Marked Sections ==========================--> | |
31 | |
32 <!ENTITY % HTML.Recommended "IGNORE" | |
33 -- Certain features of the language are necessary for compatibility | |
34 with widespread usage, but they may compromise the structural | |
35 integrity of a document. This feature test entity enables | |
36 a more prescriptive document type definition that eliminates | |
37 the above features. | |
38 --> | |
39 | |
40 <![ %HTML.Recommended [ | |
41 <!ENTITY % HTML.Deprecated "IGNORE"> | |
42 ]]> | |
43 | |
44 <!ENTITY % HTML.Deprecated "INCLUDE" | |
45 -- Certain features of the language are necessary for compatibility | |
46 with earlier versions of the specification, but they tend | |
47 to be used an implemented inconsistently, and their use is | |
48 deprecated. This feature test entity enables a document type | |
49 definition that eliminates these features. | |
50 --> | |
51 | |
52 <!ENTITY % HTML.Obsoleted "IGNORE" | |
53 -- The XMP, LISTING and PLAINTEXT tags are incompatible with SGML | |
54 and derive from very early versions of HTML. They require non- | |
55 standard parsers and will cause problems for processing | |
56 documents with standard SGML tools. | |
57 --> | |
58 | |
59 <!--================== Imported Names =====================================--> | |
60 | |
61 <!ENTITY % Content-Type "CDATA" | |
62 -- meaning a MIME content type, as per RFC1521 | |
63 --> | |
64 | |
65 <!ENTITY % HTTP-Method "GET | POST" | |
66 -- as per HTTP specification | |
67 --> | |
68 | |
69 <!ENTITY % URI "CDATA" | |
70 -- The term URI means a CDATA attribute | |
71 whose value is a Uniform Resource Identifier, | |
72 as defined by | |
73 "Uniform Resource Identifiers" by Tim Berners-Lee | |
74 aka http://info.cern.ch/hypertext/WWW/Addressing/URL/URI_Overview.html | |
75 aka RFC 1630 | |
76 | |
77 Note that CDATA attributes are limited by the LITLEN | |
78 capacity (1024 in the current version of html.decl), | |
79 so that URIs in HTML have a bounded length. | |
80 | |
81 --> | |
82 | |
83 <!ENTITY % REAL "CDATA" -- real numbers (not in SGML) --> | |
84 | |
85 <!ENTITY % SHAPE "CDATA" | |
86 -- Shape of hotzone in image. | |
87 | |
88 All coordinates are assumed to be numbers in the range 0 to 1 | |
89 and interpreted as fractional width/height and measured from | |
90 the top left corner of the associated image. | |
91 | |
92 The attribute value is a string taking one of the following forms: | |
93 | |
94 "default" | |
95 | |
96 Used to define a default link for the figure background. | |
97 | |
98 "circle x, y, r" | |
99 | |
100 (x, y) define the center and r the radius. | |
101 | |
102 "rect x, y, w, h" | |
103 | |
104 (x, y) defines upper left, and w and h the width and height. | |
105 | |
106 "polygon x1, y1, x2, y2, ..." | |
107 | |
108 Given n pairs of x, y coordinates, the polygon is closed by a | |
109 line linking the n'th point to the first. Intersecting polygons | |
110 use the non-zero winding number rule to determine if a point lies | |
111 inside the polygon.I | |
112 -- | |
113 > | |
114 | |
115 <!-- 3.0 Parameter Entities --> | |
116 | |
117 <!ENTITY % heading "H1|H2|H3|H4|H5|H6"> | |
118 | |
119 <![ %HTML.Obsoleted [ | |
120 <!ENTITY % preformatted "PRE | XMP | LISTING"> | |
121 ]]> | |
122 | |
123 | |
124 <![ %HTML.Deprecated [ | |
125 <!ENTITY % list "UL | OL | DIR | MENU"> | |
126 <!ENTITY % blockquote "BLOCKQUOTE | BQ"> | |
127 ]]> | |
128 | |
129 <!ENTITY % list "UL | OL"> | |
130 | |
131 <!ENTITY % blockquote "BQ"> | |
132 | |
133 <!ENTITY % preformatted "PRE"> | |
134 | |
135 | |
136 <!-- The CLASS attribute is used to subclass HTML elements for | |
137 rendering purposes, when used with style sheets, e.g. DSSSL lite --> | |
138 | |
139 <!ENTITY % attrs -- common attributes for elements -- | |
140 'id ID #IMPLIED -- as target for hrefs (link ends) -- | |
141 lang CDATA "en.us" -- ISO language, country code -- | |
142 class NAMES #IMPLIED -- for subclassing elements --'> | |
143 | |
144 <!-- SGML standard forces different NAMES for all attribute values | |
145 in the same element, regardless of the attribute name! As a result | |
146 CDATA is used for CLEAR attribute to avoid clash with ALIGN attribute.--> | |
147 | |
148 <!-- | |
149 When text flows around a figure or table in the margin, you sometimes want | |
150 to start an element like a header, paragraph or list below the figure rather | |
151 than alongside it. The CLEAR attribute allows you to move down unconditionally: | |
152 | |
153 clear=left move down until left margin is clear | |
154 clear=right move down until right margin is clear | |
155 clear=all move down until both margins are clear | |
156 | |
157 Alternatively, you can decide to place the element alongside the figure just | |
158 so long as there is enough room. The minimum width needed is specified as: | |
159 | |
160 clear="40 en" move down until there is at least 40 en units free | |
161 clear="100 pixels" move down until there is at least 100 pixels free | |
162 | |
163 The style sheet (or browser defaults) may provide default minimum widths for | |
164 each class of block-like elements. | |
165 --> | |
166 | |
167 <!ENTITY % needs -- Attributes for controlling text flow. Used in headers | |
168 and other elements to guarantee sufficient room -- | |
169 'clear CDATA #IMPLIED'> | |
170 | |
171 <!-- | |
172 The following attribute may be included where ever a URL can be given: | |
173 | |
174 md message digest e.g. md="md5:jV2OfH+nnXHU8bnkPAad/mSQlTDZ" | |
175 where the digest is base64 encoded and preceded by a prefix | |
176 denoting the algorithm (in this case MD5). | |
177 --> | |
178 | |
179 <!ENTITY % url.link -- Attributes associated with URL based links -- | |
180 "md CDATA #IMPLIED -- message digest for linked object --"> | |
181 | |
182 <!--================ Character mnemonic entities ==========================--> | |
183 | |
184 <!-- The HTML list of Latin-1 entities includes the full range | |
185 of characters in widely available Latin-1 fonts, and as such | |
186 is a mixture of ISOlat1 and other ISO publishing symbols --> | |
187 | |
188 <!ENTITY % HTMLlat1 PUBLIC | |
189 "-//IETF//ENTITIES Added Latin 1 for HTML//EN"> | |
190 %HTMLlat1; | |
191 | |
192 <!--================ Entities for special symbols =========================--> | |
193 | |
194 <!ENTITY emsp SDATA "[emsp ]" -- em space --> | |
195 <!ENTITY ensp SDATA "[ensp ]" -- en space (1/2-em) --> | |
196 <!ENTITY mdash SDATA "[ndash ]" -- em dash --> | |
197 <!ENTITY ndash SDATA "[ndash ]" -- en dash (1/2-em) --> | |
198 <!ENTITY nbsp SDATA "[nbsp ]" -- non breaking space --> | |
199 <!ENTITY shy SDATA "[shy ]" -- soft hyphen --> | |
200 <!ENTITY copy SDATA "[copy ]" -- copyright sign --> | |
201 <!ENTITY trade SDATA "[trade ]" -- trade mark sign --> | |
202 <!ENTITY reg SDATA "[reg ]" -- registered sign --> | |
203 | |
204 <!--================ Entities for standard icons ==========================--> | |
205 | |
206 <!-- a range of standard icons such as &folder; for use | |
207 in speeding up display of directory listings etc. --> | |
208 | |
209 <!ENTITY % HTMLicons PUBLIC | |
210 "-//IETF//ENTITIES icons for HTML//EN"> | |
211 %HTMLicons; | |
212 | |
213 <!--================ Entities for math symbols ============================--> | |
214 | |
215 <!-- ISO subset chosen for use with the widely available Adobe math font --> | |
216 | |
217 <!ENTITY % HTMLmath PUBLIC | |
218 "-//IETF//ENTITIES Math and Greek for HTML//EN"> | |
219 %HTMLmath; | |
220 | |
221 <!--=================== Text Markup =======================================--> | |
222 | |
223 <!ENTITY % font " U | S | TT | I | BIG | SMALL"> | |
224 | |
225 <!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | VAR | CITE"> | |
226 | |
227 <!ENTITY % misc "Q | LANG | AU | DFN | PERSON | ACRONYM | ABBREV | INS | DEL"> | |
228 | |
229 <!ENTITY % special "TAB | MATH | A | IMG | BR"> | |
230 | |
231 <!ENTITY % notmath "%font | %phrase | %special | %misc"> | |
232 | |
233 <!ENTITY % text "#PCDATA | SUB | SUP | B | %notmath"> | |
234 | |
235 | |
236 <!ENTITY % pre.exclusion "TAB|MATH|IMG|BIG|SMALL|SUB|SUP"> | |
237 | |
238 <!ELEMENT (%font|B|%phrase|%misc) - - (%text)+> | |
239 <!ATTLIST (%font|B|%phrase|%misc) %attrs;> | |
240 | |
241 <!-- Subscripts and superscripts. The ALIGN attribute is only used for math --> | |
242 | |
243 <!ELEMENT (SUB|SUP) - - (%text)+> | |
244 <!ATTLIST (SUB|SUP) | |
245 %attrs; | |
246 align (left|center|right) #IMPLIED | |
247 > | |
248 | |
249 <!-- Forced line break --> | |
250 | |
251 <!ELEMENT BR - O EMPTY> | |
252 <!ATTLIST BR | |
253 %attrs; | |
254 %needs; -- for control of text flow -- | |
255 > | |
256 | |
257 <!-- Named left, center and right tab stops (independent of '\t' char) --> | |
258 | |
259 <!ELEMENT TAB - O EMPTY> | |
260 <!ATTLIST TAB | |
261 id ID #IMPLIED -- defines named tab stop -- | |
262 indent NUMBER 0 -- en units before new tab stop -- | |
263 to IDREF #IMPLIED -- jump to named tab stop -- | |
264 align (left|center|right|decimal) left | |
265 dp CDATA #IMPLIED -- decimal point e.g. dp="," -- | |
266 > | |
267 | |
268 <!--================== Link Markup ========================================--> | |
269 | |
270 <!-- | |
271 With HTML 3.0 you can use ID attributes on most elements for named | |
272 link ends. The use of the NAME attribute on anchors is deprecated. | |
273 | |
274 Do we want to support arbitrary elements for link starts? This would | |
275 involve adding HREF and related attributes to most elements. | |
276 --> | |
277 | |
278 <![ %HTML.Deprecated [ | |
279 <!ENTITY % linkName "name CDATA #IMPLIED -- named link end --"> | |
280 ]]> | |
281 | |
282 <!ENTITY % linkName ""> | |
283 | |
284 | |
285 <!ENTITY % ToolBar "home|toc|index|glossary|copyright| | |
286 up|previous|next|help|bookmark" | |
287 | |
288 -- LINK RELationship values which are used to create toolbar | |
289 buttons or menu items for navigation, where toc stands | |
290 for table of contents and bookmark provides for an open | |
291 ended set of links, i.e. you can use multiple bookmarks | |
292 for key entry points. Use the optional TITLE attribute | |
293 to override default names. | |
294 --> | |
295 | |
296 <!ENTITY % linkType "NAME" | |
297 -- A definitive list will be specified at a later date. | |
298 | |
299 They are used | |
300 | |
301 a) by stylesheets to control how collections of | |
302 html nodes are rendered into printed documents | |
303 | |
304 b) for document specific toolbars/menus when used | |
305 with the LINK element in document head: | |
306 | |
307 "home|toc|index|glossary|copyright| | |
308 up|previous|next|help|bookmark" | |
309 | |
310 where toc stands for table of contents and | |
311 bookmark provides for an open ended set of links, | |
312 i.e. you can use several bookmarks for key entry | |
313 points. Use the optional TITLE attribute to | |
314 override default names. | |
315 | |
316 c) for hypertext paths or guided tours, | |
317 with REL=NODE and REL=PATH. | |
318 | |
319 d) to make a link to a style sheet, e.g. rel=stylesheet | |
320 (used only with the LINK element). | |
321 | |
322 e) to make a link to a separate banner, e.g. rel=banner | |
323 (used only with the LINK element). | |
324 --> | |
325 | |
326 | |
327 <!ENTITY % linkExtraAttributes -- URN moved to %url.link -- | |
328 "rel %linkType #IMPLIED -- forward relationship type -- | |
329 rev %linkType #IMPLIED -- reversed relationship type | |
330 to referent data -- | |
331 title CDATA #IMPLIED -- advisory only -- | |
332 methods NAMES #IMPLIED -- supported public methods of the object: | |
333 TEXTSEARCH, GET, HEAD, ... -- | |
334 "> | |
335 | |
336 <![ %HTML.Deprecated [ | |
337 <!ENTITY % A.content "(%heading|%text)+"> | |
338 ]]> | |
339 | |
340 <!ENTITY % A.content "(%text)+"> | |
341 | |
342 <!ELEMENT A - - %A.content -(A)> | |
343 | |
344 <!ATTLIST A | |
345 %attrs; | |
346 href %URI; #IMPLIED | |
347 %url.link; -- standard link attributes -- | |
348 %linkName; -- name attribute is deprecated; use ID instead -- | |
349 shape %SHAPE; #IMPLIED -- for shaped hotzones in FIGs -- | |
350 %linkExtraAttributes; | |
351 > | |
352 | |
353 <!--=================== Images ============================================--> | |
354 | |
355 <!-- Desired widths are used for negotiating image size | |
356 with the module responsible for painting the image. | |
357 align=left or right cause image to float to margin | |
358 and for subsequent text to wrap around image --> | |
359 | |
360 <!ELEMENT IMG - O EMPTY -- Embedded image --> | |
361 <!ATTLIST IMG | |
362 %attrs; | |
363 src %URI; #REQUIRED -- URI of image to embed -- | |
364 %url.link; -- standard link attributes -- | |
365 alt CDATA #IMPLIED -- for display in place of image -- | |
366 align (top|middle|bottom|left|right) top -- relative to baseline | |
367 -- width NUMBER #IMPLIED -- desired width in en's or pixels -- | |
368 height NUMBER #IMPLIED -- desired height in en's or pixels -- | |
369 units (en|pixels) pixels -- units for width and height -- | |
370 ismap (ismap) #IMPLIED -- pass clicks to server -- | |
371 > | |
372 | |
373 <!--=================== Paragraphs=========================================--> | |
374 | |
375 <!ELEMENT P - O (%text)+> | |
376 <!ATTLIST P | |
377 %attrs; | |
378 align (left|center|right|justify) #IMPLIED | |
379 %needs; -- for control of text flow -- | |
380 nowrap (nowrap) #IMPLIED -- disable wordwrap -- | |
381 > | |
382 | |
383 <!--=================== Headings, Titles, Sections ========================--> | |
384 | |
385 <!ELEMENT HR - O EMPTY -- customizable horizontal rule --> | |
386 <!ATTLIST HR | |
387 %attrs; | |
388 src %URI; #IMPLIED -- URI of custom rule graphic -- | |
389 %url.link; -- standard link attributes -- | |
390 %needs; -- for control of text flow -- | |
391 > | |
392 | |
393 <!-- | |
394 Headers can be numbered, although this is a matter for style sheets. | |
395 The style sheet controls the numbering style: | |
396 | |
397 a) whether the parent numbering is inherited, e.g. 5.i.c | |
398 where 5 is the current sequence number for H1 headers, and | |
399 1 is the number for H2 headers and 3 for H3 headers. | |
400 | |
401 b) what style is used for current sequence number | |
402 e.g. arabic, upperalpha, loweralpha, upperroman, lowerroman | |
403 or a numbering scheme appropriate for the current language | |
404 | |
405 The skip attribute is used to skip over sequence numbers for items | |
406 which have been left out of the list, e.g. skip=3 advances the | |
407 sequence number past 3 omitted items. The seqnum sets the sequence | |
408 number to a specified value. Note that the style sheet may take | |
409 advantage of the sequence number for higher level headers. | |
410 | |
411 The dingbat or src attributes may be used to specify a bullet like | |
412 image to be placed adjacent to the header. Defining this in the | |
413 header element simplifies the document markup and avoids the need | |
414 to use the clear or needs attribute in the following element to | |
415 prevent it flowing around this image. | |
416 --> | |
417 | |
418 <!ELEMENT ( %heading ) - - (%text;)+> | |
419 <!ATTLIST ( %heading ) | |
420 %attrs; | |
421 align (left|center|right|justify) #IMPLIED | |
422 %needs; -- for control of text flow -- | |
423 seqnum NUMBER #IMPLIED -- starting sequence number -- | |
424 skip NUMBER 0 -- skip seq nums for missing items -- | |
425 dingbat ENTITY #IMPLIED -- dingbat entity from HTMLicons -- | |
426 src (%URI;) #IMPLIED -- bullet defined by graphic -- | |
427 %url.link; -- standard link attributes -- | |
428 nowrap (nowrap) #IMPLIED -- disable wordwrap -- | |
429 > | |
430 | |
431 <!ELEMENT TITLE - - (#PCDATA) | |
432 -- The TITLE element is not considered part of the flow of text. | |
433 It should be displayed, for example as the page header or | |
434 window title. | |
435 --> | |
436 | |
437 <!--=================== Text Flows ========================================--> | |
438 | |
439 <!ENTITY % block | |
440 "P | %list | DL | |
441 | %preformatted | |
442 | %blockquote | |
443 | FORM | ISINDEX | FN | |
444 | TABLE | FIG | NOTE"> | |
445 | |
446 <!-- | |
447 ((%block)* | (%text)*) would be much nicer as it would avoid the need | |
448 for a <P> tag when all you want is a few words of text. The problem | |
449 is that it also prevents: "<LI> <P>some text" since it forbids PCDATA | |
450 and hence the white space between the <LI> and the <P>. | |
451 --> | |
452 | |
453 <![ %HTML.Recommended [ | |
454 <!ENTITY % flow "(%block)*"> | |
455 ]]> | |
456 | |
457 <!ENTITY % flow "(%text | %block)*"> | |
458 | |
459 <!ELEMENT PRE - - (%text)* -(%pre.exclusion)> | |
460 | |
461 <!ATTLIST PRE | |
462 %attrs; | |
463 width NUMBER #implied | |
464 %needs; -- for control of text flow -- | |
465 > | |
466 | |
467 <![ %HTML.Obsoleted [ | |
468 | |
469 <!ENTITY % literal "CDATA" | |
470 -- special non-conforming parsing mode where | |
471 the only markup signal is the end tag | |
472 in full. This will cause problems for | |
473 standard SGML tools! | |
474 --> | |
475 | |
476 <!ELEMENT XMP - - %literal> | |
477 <!ELEMENT LISTING - - %literal> | |
478 <!ELEMENT PLAINTEXT - O %literal> | |
479 | |
480 ]]> | |
481 | |
482 <!--=================== Lists =============================================--> | |
483 | |
484 <!ELEMENT DL - - (LH?, (DT|DD)+) -- this is perhaps too lax? --> | |
485 <!ATTLIST DL | |
486 %attrs; | |
487 %needs; -- for control of text flow -- | |
488 compact (compact) #IMPLIED -- more compact style -- | |
489 > | |
490 | |
491 <!ELEMENT DT - O (%text)+> | |
492 <!ELEMENT DD - O %flow;> | |
493 <!ATTLIST (DT|DD) | |
494 %attrs; | |
495 %needs; -- for control of text flow -- | |
496 > | |
497 | |
498 | |
499 <!ELEMENT (OL|UL) - - (LH?, LI+) -- should we allow a list header ? --> | |
500 | |
501 <!-- style sheet controls numbering style | |
502 a) whether the parent numbering is inherited, e.g. 5.1.c | |
503 b) what style is used for current sequence number | |
504 e.g. arabic, upperalpha, loweralpha, upperroman, lowerroman | |
505 or a numbering scheme for the current language | |
506 --> | |
507 <!ATTLIST OL | |
508 %attrs; | |
509 %needs; -- for control of text flow -- | |
510 continue (continue) #IMPLIED -- don't restart sequence number -- | |
511 seqnum NUMBER #IMPLIED -- starting sequence number -- | |
512 compact (compact) #IMPLIED -- reduced interitem spacing -- | |
513 > | |
514 | |
515 <!-- Unordered lists: | |
516 | |
517 o single or multicolumn with | |
518 horizontal or vertical wrapping | |
519 | |
520 o plain or bulletted list items | |
521 | |
522 o bullets can be customised via: | |
523 - entities (dingbats in HTMLicons) | |
524 - external graphic via URL | |
525 - individual attributes on LI tags | |
526 --> | |
527 <!ATTLIST UL | |
528 %attrs; | |
529 %needs; -- for control of text flow -- | |
530 wrap (vert|horiz|none) none -- multicolumn list style -- | |
531 plain (plain) #IMPLIED -- suppress bullets -- | |
532 dingbat ENTITY #IMPLIED -- dingbat entity from HTMLicons -- | |
533 src (%URI;) #IMPLIED -- bullet defined by graphic -- | |
534 %url.link; -- standard link attributes -- | |
535 compact (compact) #IMPLIED -- reduced interitem spacing -- | |
536 > | |
537 | |
538 <!ELEMENT LH - O (%text;)+ -- list header --> | |
539 <!ATTLIST LH %attrs;> | |
540 | |
541 <!-- | |
542 For unordered lists, you can override the standard bullet with | |
543 a custom graphic specified via a URI e.g. src="splash.gif" or | |
544 a reference to one of the HTMLicons graphics e.g. dingbat=folder | |
545 | |
546 The skip attribute is used with ordered lists to skip over sequence | |
547 numbers for items which have been left out of the list, e.g. skip=3 | |
548 advances the sequence number past 3 omitted items. | |
549 --> | |
550 | |
551 <!ELEMENT LI - O %flow; -- list item --> | |
552 <!ATTLIST LI | |
553 %attrs; | |
554 %needs; -- for control of text flow -- | |
555 dingbat ENTITY #IMPLIED -- dingbat entity from HTMLicons -- | |
556 src (%URI;) #IMPLIED -- custom bullet graphic -- | |
557 %url.link; -- standard link attributes -- | |
558 skip NUMBER 0 -- skip seq nums for missing items -- | |
559 > | |
560 | |
561 <!-- DIR and MENU are now subsumed by UL with type=plain. Use the | |
562 wrap attribute to control wrapping style for multicolumn lists --> | |
563 | |
564 <![ %HTML.Deprecated [ | |
565 <!ELEMENT (DIR|MENU) - - (LI)+ -(%block)> | |
566 <!ATTLIST (DIR|MENU) | |
567 compact (compact) #IMPLIED> | |
568 ]]> | |
569 | |
570 <!--=================== Document Body =====================================--> | |
571 | |
572 <![ %HTML.Recommended [ | |
573 <!ENTITY % body.content "(DIV|%heading|%block|HR|ADDRESS|APP)*" | |
574 -- <h1>Heading</h1> | |
575 <p>Text ... | |
576 is preferred to | |
577 <h1>Heading</h1> | |
578 Text ... | |
579 --> | |
580 ]]> | |
581 | |
582 <!ENTITY % body.content "(DIV | %heading | %text | %block | HR | ADDRESS | APP)*"> | |
583 | |
584 <!ELEMENT BODY O O (BANNER?, BODYTEXT) +(SPOT)> | |
585 <!ATTLIST BODY | |
586 %attrs; | |
587 background %URI; #IMPLIED -- texture tile for document background -- | |
588 > | |
589 | |
590 <!ELEMENT BODYTEXT O O %body.content -- dummy element --> | |
591 | |
592 <!-- | |
593 The BANNER element is used for a banner section which appears at | |
594 the top of the window and doesn't scroll with window contents. | |
595 This can be used for corporate logos, copyright statements and | |
596 disclaimers, as well as customized navigation/search controls. | |
597 --> | |
598 <!ELEMENT BANNER - - %body.content> | |
599 <!ATTLIST BANNER %attrs; > | |
600 | |
601 <!-- SPOT is used to insert IDs at arbitrary places | |
602 e.g. for end points of a marked range (see RANGE) --> | |
603 <!ELEMENT SPOT - O EMPTY> | |
604 <!ATTLIST SPOT id ID #REQUIRED> | |
605 | |
606 <!ELEMENT (%blockquote) - - (BODYTEXT, CREDIT?)> | |
607 <!ATTLIST (%blockquote) | |
608 %attrs; | |
609 %needs; -- for control of text flow -- | |
610 nowrap (nowrap) #IMPLIED -- disable wordwrap -- | |
611 > | |
612 | |
613 <!ENTITY % address.content "((%text;)* | P*)"> | |
614 | |
615 <!ELEMENT ADDRESS - - %address.content> | |
616 <!ATTLIST ADDRESS | |
617 %attrs; | |
618 %needs; -- for control of text flow -- | |
619 > | |
620 | |
621 <!ELEMENT APP - O EMPTY> | |
622 <!ATTLIST APP | |
623 class CDATA #REQUIRED | |
624 src %URI; #IMPLIED | |
625 align (bottom|top|middle) #IMPLIED | |
626 width NUMBER #IMPLIED | |
627 height NUMBER #IMPLIED | |
628 > | |
629 | |
630 <!-- | |
631 DIV can be used with the CLASS attribute to represent different | |
632 kinds of container, e.g. chapter, section, abstract, appendix. | |
633 --> | |
634 | |
635 <!ELEMENT DIV - - %body.content> | |
636 <!ATTLIST DIV | |
637 %attrs; | |
638 %needs; -- for control of text flow -- | |
639 align (left|center|right) left -- alignment of following text -- | |
640 nowrap (nowrap) #IMPLIED -- disable wordwrap -- | |
641 > | |
642 | |
643 <!--================ Forms ===============================================--> | |
644 | |
645 <!-- | |
646 As HTML 2.0 plus a few extensions: | |
647 | |
648 a) A RANGE control which varies between pair of values | |
649 specified with the size attribute, e.g. SIZE="1, 10" | |
650 | |
651 b) FILE widget for uploading one or more files to a server | |
652 | |
653 c) SCRIBBLE on image widget that sends the "ink" to the server | |
654 | |
655 d) SUBMIT/RESET buttons can now be customised with an image. | |
656 This subsumes the IMAGE type which is now deprecated. | |
657 | |
658 e) Graphical SELECTion menus are now supported, using | |
659 the new SHAPE attribute on OPTION elements. | |
660 | |
661 Further extensions are in the pipeline (e.g. table entry, | |
662 multiple data formats for textarea fields and client-side | |
663 scripts with custom widgets) but will have to wait until | |
664 the backlog of implementation work diminishes. | |
665 --> | |
666 | |
667 <!ELEMENT FORM - - %body.content -(FORM) +(INPUT|SELECT|TEXTAREA)> | |
668 <!ATTLIST FORM | |
669 action %URI #REQUIRED -- server-side form handler -- | |
670 method (%HTTP-Method) GET -- see HTTP specification -- | |
671 enctype %Content-Type; "application/x-www-form-urlencoded" | |
672 script %URI #IMPLIED -- link to client-side script -- | |
673 > | |
674 | |
675 <![ %HTML.Deprecated [ | |
676 <!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX | RADIO | SUBMIT | |
677 | RESET | RANGE | FILE | SCRIBBLE | HIDDEN | IMAGE)"> | |
678 ]]> | |
679 | |
680 <!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX | RADIO | SUBMIT | |
681 | RESET | RANGE | FILE | SCRIBBLE | HIDDEN)"> | |
682 | |
683 <!ELEMENT INPUT - O EMPTY> | |
684 <!ATTLIST INPUT | |
685 %attrs; | |
686 type %InputType TEXT | |
687 name NAME #IMPLIED -- required for all but submit and reset -- | |
688 value CDATA #IMPLIED -- required for radio buttons & checkboxes -- | |
689 disabled (disabled) #IMPLIED -- read-only fields -- | |
690 error CDATA #IMPLIED -- why field is in error -- | |
691 checked (checked) #IMPLIED -- for radio buttons and check boxes -- | |
692 size NUMBER #IMPLIED -- visible width of TEXT fields -- | |
693 maxlength NUMBER #IMPLIED -- max number of chars for TEXT fields -- | |
694 min %REAL #IMPLIED -- lower limit for RANGE fields -- | |
695 max %REAL #IMPLIED -- upper limit for RANGE fields -- | |
696 accept CDATA #IMPLIED -- list of MIME types for file fields -- | |
697 src %URI #IMPLIED -- for fields with background images -- | |
698 %url.link; -- standard link attributes -- | |
699 align (top|middle|bottom|left|right) top | |
700 > | |
701 | |
702 <!-- | |
703 SRC attribute added for graphical selection menus | |
704 The WIDTH, HEIGHT and UNITS attributes apply to the | |
705 image specified by the SRC attribute. | |
706 --> | |
707 | |
708 <!ELEMENT SELECT - - (OPTION+) -(INPUT|TEXTAREA|SELECT)> | |
709 <!ATTLIST SELECT | |
710 %attrs; | |
711 name CDATA #REQUIRED | |
712 multiple (multiple) #IMPLIED | |
713 disabled (disabled) #IMPLIED -- read-only menu -- | |
714 error CDATA #IMPLIED -- why selections are in error -- | |
715 src %URI #IMPLIED -- for graphical selection menus -- | |
716 %url.link; -- standard link attributes -- | |
717 width NUMBER #IMPLIED -- desired width of in en's or pixels -- | |
718 height NUMBER #IMPLIED -- desired height in en's or pixels -- | |
719 units (en|pixels) pixels -- units for width and height -- | |
720 align (top|middle|bottom|left|right) top | |
721 > | |
722 | |
723 <!ELEMENT OPTION - O (#PCDATA)> | |
724 <!ATTLIST OPTION | |
725 %attrs; | |
726 selected (selected) #IMPLIED | |
727 value CDATA #IMPLIED -- default to element content -- | |
728 shape %SHAPE; #IMPLIED -- for graphical selection menus -- | |
729 disabled (disabled) #IMPLIED -- unselectable option -- | |
730 error CDATA #IMPLIED -- why this choice is in error -- | |
731 > | |
732 | |
733 <!-- | |
734 Multi-line text input field. align=left or right | |
735 causes the field to float to margin and for | |
736 subsequent text to wrap around the field. | |
737 --> | |
738 | |
739 <!ELEMENT TEXTAREA - - (#PCDATA) -(INPUT|TEXTAREA|SELECT)> | |
740 <!ATTLIST TEXTAREA | |
741 %attrs; | |
742 name CDATA #REQUIRED | |
743 rows NUMBER #REQUIRED | |
744 cols NUMBER #REQUIRED | |
745 disabled (disabled) #IMPLIED -- read-only field -- | |
746 error CDATA #IMPLIED -- why field is in error -- | |
747 align (top|middle|bottom|left|right) top | |
748 > | |
749 | |
750 <!--======================= Captions ======================================--> | |
751 | |
752 <!ELEMENT CAPTION - - (%text;)+ -- table or figure caption --> | |
753 <!ATTLIST CAPTION | |
754 %attrs; | |
755 align (top|bottom|left|right) #IMPLIED | |
756 > | |
757 <!--======================= Tables ========================================--> | |
758 | |
759 <!-- | |
760 Tables and figures can be aligned in several ways: | |
761 | |
762 bleedleft flush left with the left (window) border | |
763 left flush left with the left text margin | |
764 center centered (text flow is disabled for this mode) | |
765 right flush right with the right text margin | |
766 bleedright flush right with the right (window) border | |
767 justify when applicable the table/figure should stretch | |
768 to fill space between the text margins | |
769 | |
770 Note: text will flow around the table or figure if the browser | |
771 judges there is enough room and the alignment is not centered | |
772 or justified. The table or figure may itself be part of the | |
773 text flow around some earlier figure. You can in this case use | |
774 the clear or needs attributes to move the new table or figure | |
775 down the page beyond the obstructing earlier figure. Similarly, | |
776 you can use the clear or needs attributes with other elements | |
777 such as headers and lists to move them further down the page. | |
778 --> | |
779 | |
780 <!ENTITY % block.align | |
781 "align (bleedleft|left|center|right|bleedright|justify) center"> | |
782 | |
783 <!-- | |
784 The HTML 3.0 table model has been chosen for its simplicity | |
785 and the ease in writing filters from common DTP packages. | |
786 | |
787 By default the table is automatically sized according to the | |
788 cell contents and the current window size. Specifying the columns | |
789 widths using the colspec attribute allows browsers to start | |
790 displaying the table without having to wait for last row. | |
791 | |
792 The colspec attribute is a list of column widths and alignment | |
793 specifications. The columns are listed from left to right with | |
794 a capital letter followed by a number, e.g. COLSPEC="L20 C8 L40". | |
795 The letter is L for left, C for center, R for right alignment of | |
796 cell contents. J is for justification, when feasible, otherwise | |
797 this is treated in the same way as L for left alignment. | |
798 Column entries are delimited by one or more space characters. | |
799 | |
800 The number specifies the width in en's, pixels or as a | |
801 fractional value of the table width, as according to the | |
802 associated units attribute. This approach is more compact | |
803 than used with most SGML table models and chosen to simplify | |
804 hand entry. The width attribute allows you to specify the | |
805 width of the table in pixels, en units or as a percentage | |
806 of the space between the current left and right margins. | |
807 | |
808 To assist with rendering to speech, row and column headers | |
809 can be given short names using the AXIS attribute. The AXES | |
810 attribute is used to explicitly specify the row and column | |
811 names for use with each cell. Otherwise browsers can follow | |
812 up columns and left along rows (right for some languages) | |
813 to find the corresponding header cells. | |
814 | |
815 Table content model: Braille limits the width of tables, | |
816 placing severe limits on column widths. User agents need | |
817 to render big cells by moving the content to a note placed | |
818 before the table. The cell is then rendered as a link to | |
819 the corresponding note. | |
820 | |
821 To assist with formatting tables to paged media, authors | |
822 can differentiate leading and trailing rows that are to | |
823 be duplicated when splitting tables across page boundaries. | |
824 The recommended way is to subclass rows with the CLASS attribute | |
825 For example: <TR CLASS=Header>, <TR CLASS=Footer> are used for | |
826 header and footer rows. Paged browsers insert footer rows at | |
827 the bottom of the current page and header rows at the top of | |
828 the new page, followed by the remaining body rows. | |
829 --> | |
830 | |
831 <!ELEMENT TABLE - - (CAPTION?, TR*) -- mixed headers and data --> | |
832 <!ATTLIST TABLE | |
833 %attrs; | |
834 %needs; -- for control of text flow -- | |
835 border (border) #IMPLIED -- draw borders -- | |
836 colspec CDATA #IMPLIED -- column widths and alignment -- | |
837 units (en|pixels|relative) en -- units for column widths -- | |
838 dp CDATA #IMPLIED -- decimal point e.g. dp="," -- | |
839 width NUMBER #IMPLIED -- absolute or percentage width -- | |
840 %block.align; -- horizontal alignment -- | |
841 noflow (noflow) #IMPLIED -- noflow around table -- | |
842 nowrap (nowrap) #IMPLIED -- don't wrap words -- | |
843 > | |
844 | |
845 <!ENTITY % cell "TH | TD"> | |
846 <!ENTITY % horiz.align "left|center|right|justify"> | |
847 <!ENTITY % vert.align "top|middle|bottom|baseline"> | |
848 | |
849 <!-- | |
850 Browsers should tolerate an omission of the first <TR> | |
851 tag as it is implied by the context. Missing trailing | |
852 <TR>s implied by rowspans should be ignored. | |
853 | |
854 The alignment attributes act as defaults for rows | |
855 overriding the colspec attribute and being in turn | |
856 overridden by alignment attributes on cell elements. | |
857 Use valign=baseline when you want to ensure that text | |
858 in different cells on the same row is aligned on the | |
859 same baseline regardless of fonts. It only applies | |
860 when the cells contain a single line of text. | |
861 --> | |
862 | |
863 <!ELEMENT TR - O (%cell)* -- row container --> | |
864 <!ATTLIST TR | |
865 %attrs; | |
866 align (%horiz.align) #IMPLIED -- horizontal alignment -- | |
867 valign (%vert.align) top -- vertical alignment -- | |
868 dp CDATA #IMPLIED -- decimal point e.g. dp="," -- | |
869 nowrap (nowrap) #IMPLIED -- don't wrap words -- | |
870 > | |
871 | |
872 <!-- | |
873 Note that table cells can include nested tables. | |
874 Missing cells are considered to be empty, while | |
875 missing rows should be ignored, i.e. if a cell | |
876 spans a row and there are no further TR elements | |
877 then the implied row should be ignored. | |
878 --> | |
879 | |
880 <!ELEMENT (%cell) - O %body.content> | |
881 <!ATTLIST (%cell) | |
882 %attrs; | |
883 colspan NUMBER 1 -- columns spanned -- | |
884 rowspan NUMBER 1 -- rows spanned -- | |
885 align (%horiz.align) #IMPLIED -- horizontal alignment -- | |
886 valign (%vert.align) top -- vertical alignment -- | |
887 dp CDATA #IMPLIED -- decimal point e.g. dp="," -- | |
888 nowrap (nowrap) #IMPLIED -- don't wrap words -- | |
889 axis CDATA #IMPLIED -- axis name, defaults to element content -- | |
890 axes CDATA #IMPLIED -- comma separated list of axis names -- | |
891 > | |
892 | |
893 <!--====================== Figures ========================================--> | |
894 | |
895 <!-- | |
896 The element contains text for use in non-graphical displays. Note that | |
897 you can use the shape attribute in anchors to specify hotzones on images. | |
898 This provides for local processing of pointer clicks and a unified method | |
899 for dealing with graphical and non-graphical displays. | |
900 | |
901 Text is flowed around figures when the figure is left or right aligned. | |
902 You can request the browser to move down until there is enough room for | |
903 the next element, see the CLEAR and NEED attributes (in %needs) | |
904 | |
905 Figures offer a path towards embedding arbitrary information formats | |
906 via some kind of OLE/OpenDoc mechanism. | |
907 --> | |
908 | |
909 <!ELEMENT FIG - - (OVERLAY*, CAPTION?, FIGTEXT, CREDIT?) -(FIG|IMG)> | |
910 <!ATTLIST FIG | |
911 %attrs; | |
912 %needs; -- for control of text flow -- | |
913 src %URI; #REQUIRED -- URI of document to embed -- | |
914 %url.link; -- standard link attributes -- | |
915 %block.align; -- horizontal alignment -- | |
916 noflow (noflow) #IMPLIED -- noflow around figure -- | |
917 width NUMBER #IMPLIED -- desired width in units -- | |
918 height NUMBER #IMPLIED -- desired height in units -- | |
919 units (en|pixels) pixels -- specifies units as en's or pixels -- | |
920 imagemap (%URI) #IMPLIED -- pass background clicks to server -- | |
921 > | |
922 | |
923 <!ELEMENT FIGTEXT O O %body.content -- dummy element --> | |
924 | |
925 <!-- | |
926 Figure overlays. When combined with local caching, overlays | |
927 provide a cheap way of modifying a larger base image sent as | |
928 part of a previous page. | |
929 --> | |
930 | |
931 <!ELEMENT OVERLAY - O EMPTY -- image overlay --> | |
932 <!ATTLIST OVERLAY | |
933 src %URI; #REQUIRED -- URI of image overlay -- | |
934 %url.link; -- standard link attributes -- | |
935 units (en|pixels) pixels -- specifies units as en's or pixels -- | |
936 x NUMBER 0 -- offset from left in units -- | |
937 y NUMBER 0 -- offset from top in units -- | |
938 width NUMBER #IMPLIED -- desired width in units -- | |
939 height NUMBER #IMPLIED -- desired height in units -- | |
940 imagemap (%URI) #IMPLIED -- pass background clicks to server -- | |
941 > | |
942 | |
943 <!ELEMENT CREDIT - - (%text;)* -- source of image --> | |
944 <!ATTLIST CREDIT | |
945 %attrs; | |
946 > | |
947 | |
948 <!--======================== Notes ========================================--> | |
949 | |
950 <!-- | |
951 The NOTE element is used for admonishments. The CLASS attribute | |
952 is used to differentiate NOTE's, e.g. Note, Caution or Warning. | |
953 --> | |
954 | |
955 <!ELEMENT NOTE - - %body.content; -- admonishment --> | |
956 <!ATTLIST NOTE | |
957 %attrs; | |
958 src %URI; #IMPLIED -- URI of custom graphic -- | |
959 %url.link; -- standard link attributes -- | |
960 %needs; -- for control of text flow -- | |
961 > | |
962 | |
963 <!--======================== Footnotes ====================================--> | |
964 | |
965 <!-- | |
966 Typically rendered as popup note. These elements are referenced | |
967 by hypertext links specified with the anchor element. | |
968 --> | |
969 <!ELEMENT FN - - %body.content;> | |
970 <!ATTLIST FN %attrs;> | |
971 | |
972 <!--======================== Math ========================================--> | |
973 | |
974 <!-- Use     etc for greater control of spacing. --> | |
975 | |
976 <!-- Subscripts and Superscripts | |
977 | |
978 <SUB> and <SUP> are used for subscripts and superscripts. | |
979 | |
980 i j | |
981 X <SUP>i</SUP>Y<SUP>j</SUP> is X Y | |
982 | |
983 i.e. the space following the X disambiguates the binding. | |
984 The align attribute can be used for horizontal alignment, | |
985 e.g. to explicitly place an index above an element: | |
986 i | |
987 X<sup align=center>i</sup> produces X | |
988 | |
989 Short references are defined for superscripts, subscripts and boxes | |
990 to save typing when manually editing HTML math, e.g. | |
991 | |
992 x^2^ is mapped to x<sup>2</sup> | |
993 y_z_ is mapped to y<sub>z</sub> | |
994 {a+b} is mapped to <box>a + b</box> | |
995 | |
996 Note that these only apply within the MATH element and can't be | |
997 used in normal text! | |
998 --> | |
999 <!ENTITY REF1 STARTTAG "SUP"> | |
1000 <!ENTITY REF2 ENDTAG "SUP"> | |
1001 <!ENTITY REF3 STARTTAG "SUB"> | |
1002 <!ENTITY REF4 ENDTAG "SUB"> | |
1003 <!ENTITY REF5 STARTTAG "BOX"> | |
1004 <!ENTITY REF6 ENDTAG "BOX"> | |
1005 | |
1006 <!USEMAP MAP1 MATH> | |
1007 <!USEMAP MAP2 SUP> | |
1008 <!USEMAP MAP3 SUB> | |
1009 <!USEMAP MAP4 BOX> | |
1010 | |
1011 <!SHORTREF MAP1 "^" REF1 | |
1012 "_" REF3 | |
1013 "{" REF5 > | |
1014 | |
1015 <!SHORTREF MAP2 "^" REF2 | |
1016 "_" REF3 | |
1017 "{" REF5 > | |
1018 | |
1019 <!SHORTREF MAP3 "_" REF4 | |
1020 "^" REF1 | |
1021 "{" REF5 > | |
1022 | |
1023 <!SHORTREF MAP4 "}" REF6 | |
1024 "^" REF1 | |
1025 "_" REF3 | |
1026 "{" REF5 > | |
1027 | |
1028 <!-- | |
1029 The inclusion of %math and exclusion of %notmath is used here | |
1030 to alter the content model for the B, SUB and SUP elements, | |
1031 to limit them to formulae rather than general text elements. | |
1032 --> | |
1033 | |
1034 <!ENTITY % mathvec "VEC|BAR|DOT|DDOT|HAT|TILDE" -- common accents --> | |
1035 <!ENTITY % mathface "B|T|BT" -- control of font face --> | |
1036 <!ENTITY % math "BOX|ABOVE|BELOW|%mathvec|ROOT|SQRT|ARRAY|SUB|SUP|%mathface"> | |
1037 <!ENTITY % formula "#PCDATA|%math"> | |
1038 | |
1039 <!ELEMENT MATH - - (#PCDATA)* -(%notmath) +(%math)> | |
1040 <!ATTLIST MATH | |
1041 id ID #IMPLIED | |
1042 class NAMES #IMPLIED -- e.g. class=chem --> | |
1043 | |
1044 <!-- The BOX element acts as brackets. Delimiters are optional and | |
1045 stretch to match the height of the box. The OVER element is used | |
1046 when you want a line between numerator and denominator. This line | |
1047 is suppressed with the alternative ATOP element. CHOOSE acts like | |
1048 ATOP but adds enclosing round brackets as a convenience for binomial | |
1049 coefficients. Note the use of { and } as shorthand for <BOX> and | |
1050 </BOX> respectively: | |
1051 | |
1052 1 + X | |
1053 {1 + X<OVER>Y} is _______ | |
1054 Y | |
1055 | |
1056 a + b | |
1057 {a + b<ATOP>c - d} is | |
1058 c - d | |
1059 | |
1060 The delimiters are represented using the LEFT and RIGHT | |
1061 elements as in: | |
1062 | |
1063 {[<LEFT>x + y<RIGHT>]} is [ x + y ] | |
1064 {(<LEFT>a<RIGHT>]} is (a] | |
1065 {||<LEFT>a<RIGHT>||} is || a || | |
1066 | |
1067 Use { and } for "{" and "}" respectively as | |
1068 these symbols are used as shorthand for BOX, e.g. | |
1069 | |
1070 {{<LEFT>a+b<RIGHT>}} is {a+b} | |
1071 | |
1072 You can stretch definite integrals to match the integrand, e.g. | |
1073 | |
1074 {∫<SUB>a</SUB><SUP>b</SUP><LEFT>{f(x)<over>1+x} dx} | |
1075 | |
1076 b | |
1077 / f(x) | |
1078 | ----- dx | |
1079 / 1 + x | |
1080 a | |
1081 | |
1082 Note the complex content model for BOX is a work around | |
1083 for the absence of support for infix operators in SGML. | |
1084 | |
1085 You can get oversize delimiters with the SIZE attribute, | |
1086 for example <BOX SIZE=large>(<LEFT>...<RIGHT>)</BOX> | |
1087 | |
1088 Note that the names of common functions are recognized | |
1089 by the parser without the need to use "&" and ";" around | |
1090 them, e.g. int, sum, sin, cos, tan, ... | |
1091 --> | |
1092 | |
1093 <!ELEMENT BOX - - ((%formula)*, (LEFT, (%formula)*)?, | |
1094 ((OVER|ATOP|CHOOSE), (%formula)*)?, | |
1095 (RIGHT, (%formula)*)?)> | |
1096 <!ATTLIST BOX | |
1097 size (normal|medium|large|huge) normal -- oversize delims --> | |
1098 | |
1099 <!ELEMENT (OVER|ATOP|CHOOSE|LEFT|RIGHT) - O EMPTY> | |
1100 | |
1101 <!-- Horizontal line drawn ABOVE contents | |
1102 The symbol attribute allows authors to supply | |
1103 an entity name for an accent, arrow symbol etc. | |
1104 Generalisation of LaTeX's overline command. | |
1105 | |
1106 e.g. <above sym=ssmile>x</above> | |
1107 places an upwardly turning curve above the "x" | |
1108 --> | |
1109 | |
1110 <!ELEMENT ABOVE - - (%formula)+> | |
1111 <!ATTLIST ABOVE sym ENTITY #IMPLIED> | |
1112 | |
1113 <!-- Horizontal line drawn BELOW contents | |
1114 The symbol attribute allows authors to | |
1115 supply an entity name for an arrow symbol etc. | |
1116 Generalisation of LaTeX's underline command. | |
1117 --> | |
1118 | |
1119 <!ELEMENT BELOW - - (%formula)+> | |
1120 <!ATTLIST BELOW sym ENTITY #IMPLIED> | |
1121 | |
1122 <!-- Convenience tags for common accents: | |
1123 vec, bar, dot, ddot, hat and tilde | |
1124 --> | |
1125 | |
1126 <!ELEMENT (%mathvec) - - (%formula)+> | |
1127 | |
1128 <!-- | |
1129 T and BT are used to designate terms which should | |
1130 be rendered in an upright font (& bold face for BT) | |
1131 --> | |
1132 | |
1133 <!ELEMENT (T|BT) - - (%formula)+> | |
1134 <!ATTLIST (T|BT) class NAMES #IMPLIED> | |
1135 | |
1136 <!-- Roots e.g. <ROOT>3<OF>1+x</ROOT> --> | |
1137 | |
1138 <!ELEMENT ROOT - - ((%formula)+, OF, (%formula)+)> | |
1139 <!ELEMENT OF - O (%formula)* -- what the root applies to --> | |
1140 | |
1141 <!ELEMENT SQRT - - (%formula)* -- square root convenience tag --> | |
1142 | |
1143 <!-- LaTeX like arrays. The COLDEF attribute specifies | |
1144 a single capital letter for each column determining | |
1145 how the column should be aligned, e.g. coldef="CCC" | |
1146 | |
1147 "L" left | |
1148 "C" center | |
1149 "R" right | |
1150 | |
1151 An optional separator letter can occur between columns | |
1152 and should be one of + - or =, e.g. "C+C+C+C=C". | |
1153 Whitespace within coldef is ignored. By default, the | |
1154 columns are all centered. | |
1155 | |
1156 The ALIGN attribute alters the vertical position of the | |
1157 array as compared with preceding and following expressions. | |
1158 | |
1159 Use LDELIM and RDELIM attributes for delimiter entities. | |
1160 When the LABELS attribute is present, the array is | |
1161 displayed with the first row and the first column as | |
1162 labels displaced from the other elements. In this case, | |
1163 the first element of the first row should normally be | |
1164 left blank. | |
1165 | |
1166 Use &vdots; &cdots; and &ddots; for vertical, horizontal | |
1167 and diagonal ellipsis dots. Use &dotfill; to fill an array | |
1168 cell with horizontal dots (e.g. for a full row). | |
1169 Note &ldots; places the dots on the baseline, while &cdots; | |
1170 places them higher up. | |
1171 --> | |
1172 | |
1173 <!ELEMENT ARRAY - - (ROW)+> | |
1174 <!ATTLIST ARRAY | |
1175 align (top|middle|bottom) middle -- vertical alignment -- | |
1176 coldef CDATA #IMPLIED -- column alignment and separator -- | |
1177 ldelim CDATA #IMPLIED -- stretchy left delimiter -- | |
1178 rdelim CDATA #IMPLIED -- stretchy right delimiter -- | |
1179 labels (labels) #IMPLIED -- TeX's \bordermatrix style --> | |
1180 | |
1181 <!ELEMENT ROW - O (ITEM)*> | |
1182 <!ELEMENT ITEM - O (%formula)*> | |
1183 <!ATTLIST ITEM | |
1184 align CDATA #IMPLIED -- override coldef alignment -- | |
1185 colspan NUMBER 1 -- merge columns as per TABLE -- | |
1186 rowspan NUMBER 1 -- merge rows as per TABLE --> | |
1187 | |
1188 <!--================ Document Head ========================================--> | |
1189 | |
1190 <![ %HTML.Deprecated [ | |
1191 <!ENTITY % head.content "TITLE & ISINDEX? & BASE? & STYLE? | |
1192 & META* & LINK* & RANGE* & NEXTID?"> | |
1193 ]]> | |
1194 | |
1195 <!ENTITY % head.nextid ""> | |
1196 | |
1197 <!ENTITY % head.content "TITLE & ISINDEX? & BASE? & STYLE? | |
1198 & META* & LINK* & RANGE*"> | |
1199 | |
1200 <!ELEMENT HEAD O O (%head.content)> | |
1201 | |
1202 <!ELEMENT LINK - O EMPTY> | |
1203 <!ATTLIST LINK | |
1204 href %URI #REQUIRED | |
1205 %linkExtraAttributes; > | |
1206 | |
1207 <!ELEMENT RANGE - O EMPTY> | |
1208 <!ATTLIST RANGE | |
1209 id ID #IMPLIED -- for naming marked range -- | |
1210 class NAMES #IMPLIED -- for subclassing -- | |
1211 from IDREF #REQUIRED -- start of marked range -- | |
1212 until IDREF #REQUIRED -- end of marked range -- | |
1213 > | |
1214 | |
1215 <!ELEMENT ISINDEX - O EMPTY> | |
1216 <!ATTLIST ISINDEX | |
1217 href %URI #IMPLIED -- server handling queries -- | |
1218 prompt CDATA #IMPLIED -- prompt message --> | |
1219 | |
1220 <!-- | |
1221 The BASE element gives the base URL for | |
1222 dereferencing relative URLs, e.g. | |
1223 | |
1224 <BASE href="http://foo.com/images"> | |
1225 ... | |
1226 <IMG SRC="bar.gif"> | |
1227 | |
1228 The image is deferenced to | |
1229 | |
1230 http://foo.com/images/bar.gif | |
1231 --> | |
1232 | |
1233 <!ELEMENT BASE - O EMPTY> | |
1234 <!ATTLIST BASE | |
1235 id ID #IMPLIED | |
1236 href %URI; #REQUIRED | |
1237 > | |
1238 | |
1239 <![ %HTML.Deprecated [ | |
1240 <!ELEMENT NEXTID - O EMPTY> | |
1241 <!ATTLIST NEXTID N CDATA #REQUIRED> | |
1242 ]]> | |
1243 | |
1244 <!ELEMENT META - O EMPTY -- Generic Metainformation --> | |
1245 <!ATTLIST META | |
1246 http-equiv NAME #IMPLIED -- HTTP response header name -- | |
1247 name NAME #IMPLIED -- metainformation name -- | |
1248 content CDATA #REQUIRED -- associated information -- | |
1249 > | |
1250 | |
1251 <!-- | |
1252 A style sheet can be associated with the document using the | |
1253 LINK element, e.g. <LINK rel=style href="housestyle.dsssl">. | |
1254 Style overrides can be placed in the document head using the | |
1255 STYLE element, e.g. | |
1256 | |
1257 <style notation=dsssl-lite> | |
1258 dsss-lite stuff | |
1259 </style> | |
1260 | |
1261 Later on in the document you can use: | |
1262 | |
1263 <h2 class=bigcaps>Header with bigger than normal capitals</h2> | |
1264 <p class=abstract>A paragraph with a unique style of its own | |
1265 ... | |
1266 | |
1267 Statements in the given style notation | |
1268 | |
1269 The tag names, class and id attributes are used in the style sheet | |
1270 notation to describe how to render matching elements. | |
1271 --> | |
1272 | |
1273 <!ENTITY % style-notations "dsssl-lite | w3c-style"> | |
1274 | |
1275 <!-- | |
1276 <!NOTATION dsssl-lite PUBLIC | |
1277 "ISO/IEC 10179:1995//NOTATION DSSSL Style Language//EN"> | |
1278 | |
1279 <!NOTATION w3c-style PUBLIC "IETF/RFC nnn/W3C Style Language//EN"> | |
1280 --> | |
1281 | |
1282 <!ELEMENT STYLE - O (#PCDATA)> | |
1283 <!ATTLIST STYLE | |
1284 notation NOTATION (%style-notations;) #REQUIRED | |
1285 > | |
1286 | |
1287 <!--================ Document Structure ===================================--> | |
1288 | |
1289 <!ENTITY % html.content "HEAD, BODY"> | |
1290 | |
1291 <!ELEMENT HTML O O (%html.content)> | |
1292 <!ENTITY % version.attr 'VERSION CDATA #FIXED "%HTML.Version;"'> | |
1293 | |
1294 <!-- suggested roles are: TOC, DOC, DOCPART, HITLIST, DIALOG --> | |
1295 | |
1296 <!ATTLIST HTML | |
1297 %version.attr; -- report DTD version to application -- | |
1298 urn CDATA #IMPLIED -- universal resource name for this document -- | |
1299 class NAMES #IMPLIED -- role of this document, eg table of contents -- | |
1300 > | |
1301 | |
1302 <!-- The END --> |