Annotation of libwww/Library/src/HTMLPDTD.html, revision 2.33
2.7 frystyk 1: <HTML>
2: <HEAD>
2.28 frystyk 3: <!-- Changed by: Henrik Frystyk Nielsen, 28-Jun-1996 -->
4: <TITLE>W3C Sample Code Library libwww HTML DTD</TITLE>
2.7 frystyk 5: </HEAD>
6: <BODY>
2.28 frystyk 7: <H1>
8: HTML Plus DTD - Software Interface
9: </H1>
2.7 frystyk 10: <PRE>
11: /*
2.12 frystyk 12: ** (c) COPYRIGHT MIT 1995.
2.7 frystyk 13: ** Please first read the full copyright statement in the file COPYRIGH.
14: */
15: </PRE>
2.28 frystyk 16: <P>
17: SGML purists should excuse the use of the term "DTD" in this file to represent
18: DTD-related information which is not exactly a DTD itself. The C modular
19: structure doesn't work very well here, as the dtd is partly in the .h and
20: partly in the .c which are not very independent. <EM>Tant pis!</EM> There
21: are a couple of HTML-specific utility routines also defined.
22: <P>
23: This module is a part of the <A HREF="http://www.w3.org/Library/"> W3C Sample
24: Code Library</A>.
2.6 timbl 25: <PRE>
26: #ifndef HTMLDTD_H
2.1 timbl 27: #define HTMLDTD_H
28:
2.28 frystyk 29: #include "<A HREF="HTStruct.html">HTStruct.h</A>"
30: #include "<A HREF="SGML.html">SGML.h</A>"
2.33 ! vbancrof 31:
! 32: #ifdef __cplusplus
! 33: extern "C" {
! 34: #endif
2.9 frystyk 35: </PRE>
2.28 frystyk 36: <H2>
37: Number of HTML Entities
38: </H2>
39: <P>
40: The entity names are defined in the C file. This gives the number of them.
41: Must Match all tables by element!
2.9 frystyk 42: <PRE>
2.31 raff 43: #define HTML_ENTITIES 100
2.9 frystyk 44: </PRE>
2.28 frystyk 45: <H2>
46: HTML Element Enumeration
47: </H2>
48: <P>
49: These include tables in <A HREF="HTMLPDTD.c" NAME="z1">HTMLPDTD.c</A> and
50: code in <A HREF="HTML.c" NAME="z0">HTML.c</A>. Note that not everything from
51: <A HREF="http://www.w3.org/TR/REC-html40">HTML 4.0</A> is there!
2.9 frystyk 52: <PRE>
2.6 timbl 53: typedef enum _HTMLElement {
2.28 frystyk 54: HTML_A = 0,
2.30 frystyk 55: HTML_ABBR,
2.1 timbl 56: HTML_ACRONYM,
57: HTML_ADDRESS,
2.30 frystyk 58: HTML_APPLET,
2.28 frystyk 59: HTML_AREA,
2.1 timbl 60: HTML_B,
61: HTML_BASE,
2.30 frystyk 62: HTML_BASEFONT,
63: HTML_BDO,
2.29 frystyk 64: HTML_BIG,
2.1 timbl 65: HTML_BLOCKQUOTE,
66: HTML_BODY,
67: HTML_BR,
2.30 frystyk 68: HTML_BUTTON,
2.1 timbl 69: HTML_CAPTION,
2.30 frystyk 70: HTML_CENTER,
2.1 timbl 71: HTML_CITE,
72: HTML_CODE,
2.30 frystyk 73: HTML_COL,
74: HTML_COLGROUP,
2.1 timbl 75: HTML_DD,
2.30 frystyk 76: HTML_DEL,
2.1 timbl 77: HTML_DFN,
78: HTML_DIR,
2.29 frystyk 79: HTML_DIV,
2.1 timbl 80: HTML_DL,
81: HTML_DT,
82: HTML_EM,
2.30 frystyk 83: HTML_FIELDSET,
84: HTML_FONT,
2.1 timbl 85: HTML_FORM,
2.27 frystyk 86: HTML_FRAME,
87: HTML_FRAMESET,
2.1 timbl 88: HTML_H1,
89: HTML_H2,
90: HTML_H3,
91: HTML_H4,
92: HTML_H5,
93: HTML_H6,
94: HTML_HEAD,
95: HTML_HR,
96: HTML_HTML,
97: HTML_I,
2.30 frystyk 98: HTML_IFRAME,
2.1 timbl 99: HTML_IMG,
100: HTML_INPUT,
2.30 frystyk 101: HTML_INS,
2.1 timbl 102: HTML_ISINDEX,
2.30 frystyk 103: HTML_KBD,
104: HTML_LABEL,
105: HTML_LEGEND,
2.1 timbl 106: HTML_LI,
107: HTML_LINK,
2.29 frystyk 108: HTML_MAP,
2.1 timbl 109: HTML_MENU,
2.25 frystyk 110: HTML_META,
2.30 frystyk 111: HTML_NEXTID, /* !!! */
2.27 frystyk 112: HTML_NOFRAMES,
2.30 frystyk 113: HTML_NOSCRIPT,
2.28 frystyk 114: HTML_OBJECT,
2.1 timbl 115: HTML_OL,
2.30 frystyk 116: HTML_OPTGROUP,
2.1 timbl 117: HTML_OPTION,
118: HTML_P,
2.30 frystyk 119: HTML_PARAM,
2.1 timbl 120: HTML_PRE,
121: HTML_Q,
122: HTML_S,
123: HTML_SAMP,
2.30 frystyk 124: HTML_SCRIPT,
2.1 timbl 125: HTML_SELECT,
2.29 frystyk 126: HTML_SMALL,
127: HTML_SPAN,
2.30 frystyk 128: HTML_STRIKE,
2.1 timbl 129: HTML_STRONG,
2.30 frystyk 130: HTML_STYLE,
2.1 timbl 131: HTML_SUB,
132: HTML_SUP,
133: HTML_TABLE,
2.30 frystyk 134: HTML_TBODY,
2.1 timbl 135: HTML_TD,
136: HTML_TEXTAREA,
2.30 frystyk 137: HTML_TFOOT,
2.1 timbl 138: HTML_TH,
2.30 frystyk 139: HTML_THEAD,
2.1 timbl 140: HTML_TITLE,
141: HTML_TR,
142: HTML_TT,
143: HTML_U,
144: HTML_UL,
145: HTML_VAR,
2.28 frystyk 146: HTML_ELEMENTS /* This must be the last entry */
147: } HTMLElement;
148: </PRE>
149: <H2>
150: Element Attribute Enumerations
151: </H2>
152: <P>
153: Identifier is <TT>HTML_<element>_<attribute></TT>. These
154: <STRONG>must</STRONG> match the tables in
155: <A HREF="HTMLPDTD.c" NAME="z2">HTMLPDTD.c</A>!
156: <H3>
2.30 frystyk 157: Attributes definition Macros
158: </H3>
159: <PRE>
160: /* Define an attribute as HTML_<tag>_<attribute> */
161: #define HTML_ATTR(t,a) HTML_##t##_##a
162: #define HTML_ATTRIBUTES(t) HTML_##t##_ATTRIBUTES
163: </PRE>
164: <H3>
2.28 frystyk 165: A
166: </H3>
167: <PRE>
2.30 frystyk 168: enum _HTML_A_Attributes {
169: HTML_ATTR(A,ACCESSKEY) = 0,
170: HTML_ATTR(A,CHARSET),
171: HTML_ATTR(A,CLASS),
172: HTML_ATTR(A,COORDS),
173: HTML_ATTR(A,DIR),
174: HTML_ATTR(A,HREF),
175: HTML_ATTR(A,HREFLANG),
176: HTML_ATTR(A,ID),
177: HTML_ATTR(A,NAME),
178: HTML_ATTR(A,REL),
179: HTML_ATTR(A,REV),
180: HTML_ATTR(A,SHAPE),
181: HTML_ATTR(A,STYLE),
182: HTML_ATTR(A,TABINDEX),
183: HTML_ATTR(A,TARGET),
184: HTML_ATTR(A,TYPE),
185: HTML_ATTR(A,TITLE),
186: HTML_ATTRIBUTES(A)
187: };
188: </PRE>
189: <H3>
190: APPLET - Deprecated
191: </H3>
192: <PRE>
193: enum _HTML_APPLET_Attributes {
194: HTML_ATTR(APPLET,ALIGN) = 0,
195: HTML_ATTR(APPLET,ALT),
196: HTML_ATTR(APPLET,ARCHIVE),
197: HTML_ATTR(APPLET,CLASS),
198: HTML_ATTR(APPLET,CODE),
199: HTML_ATTR(APPLET,CODEBASE),
200: HTML_ATTR(APPLET,HEIGHT),
201: HTML_ATTR(APPLET,HSPACE),
202: HTML_ATTR(APPLET,ID),
203: HTML_ATTR(APPLET,NAME),
204: HTML_ATTR(APPLET,OBJECT),
205: HTML_ATTR(APPLET,STYLE),
206: HTML_ATTR(APPLET,TITLE),
207: HTML_ATTR(APPLET,VSPACE),
208: HTML_ATTR(APPLET,WIDTH),
209: HTML_ATTRIBUTES(APPLET)
210: };
2.28 frystyk 211: </PRE>
212: <H3>
213: AREA
214: </H3>
215: <PRE>
2.30 frystyk 216: enum _HTML_AREA_Attributes {
217: HTML_ATTR(AREA,ACCESSKEY) = 0,
218: HTML_ATTR(AREA,ALT),
219: HTML_ATTR(AREA,CLASS),
220: HTML_ATTR(AREA,COORDS),
221: HTML_ATTR(AREA,DIR),
222: HTML_ATTR(AREA,HREF),
223: HTML_ATTR(AREA,ID),
224: HTML_ATTR(AREA,NAME),
225: HTML_ATTR(AREA,NOHREF),
226: HTML_ATTR(AREA,LANG),
227: HTML_ATTR(AREA,SHAPE),
228: HTML_ATTR(AREA,STYLE),
229: HTML_ATTR(AREA,TABINDEX),
230: HTML_ATTR(AREA,TARGET),
231: HTML_ATTR(AREA,TITLE),
232: HTML_ATTRIBUTES(AREA)
233: };
234:
2.28 frystyk 235: </PRE>
236: <H3>
237: BASE
238: </H3>
239: <PRE>
2.30 frystyk 240: enum _HTML_BASE_Attributes {
241: HTML_ATTR(BASE,HREF) = 0,
242: HTML_ATTR(BASE,TARGET),
243: HTML_ATTRIBUTES(BASE)
244: };
245: </PRE>
246: <H3>
247: BDO
248: </H3>
249: <PRE>
250: enum _HTML_BDO_Attributes {
251: HTML_ATTR(BDO,CLASS) = 0,
252: HTML_ATTR(BDO,DIR),
253: HTML_ATTR(BDO,ID),
254: HTML_ATTR(BDO,LANG),
255: HTML_ATTR(BDO,STYLE),
256: HTML_ATTR(BDO,TITLE),
257: HTML_ATTRIBUTES(BDO)
258: };
259: </PRE>
260: <H3>
261: BLOCKQUOTE
262: </H3>
263: <PRE>
264: enum _HTML_BQ_Attributes {
265: HTML_ATTR(BQ,CITE) = 0,
266: HTML_ATTR(BQ,CLASS),
267: HTML_ATTR(BQ,DIR),
268: HTML_ATTR(BQ,ID),
269: HTML_ATTR(BQ,LANG),
270: HTML_ATTR(BQ,STYLE),
271: HTML_ATTR(BQ,TITLE),
272: HTML_ATTRIBUTES(BQ)
273: };
2.28 frystyk 274: </PRE>
275: <H3>
276: BODY
277: </H3>
278: <PRE>
2.30 frystyk 279: enum _HTML_BODY_Attributes {
280: HTML_ATTR(BODY,ALINK) = 0,
281: HTML_ATTR(BODY,BACKGROUND),
282: HTML_ATTR(BODY,BGCOLOR),
283: HTML_ATTR(BODY,CLASS),
284: HTML_ATTR(BODY,DIR),
285: HTML_ATTR(BODY,ID),
286: HTML_ATTR(BODY,LANG),
287: HTML_ATTR(BODY,LINK),
288: HTML_ATTR(BODY,STYLE),
289: HTML_ATTR(BODY,TEXT),
290: HTML_ATTR(BODY,TITLE),
291: HTML_ATTR(BODY,VLINK),
292: HTML_ATTRIBUTES(BODY)
293: };
294: </PRE>
295: <H3>
296: BR
297: </H3>
298: <PRE>
299: enum _HTML_BR_Attributes {
300: HTML_ATTR(BR,CLASS) = 0,
301: HTML_ATTR(BR,CLEAR),
302: HTML_ATTR(BR,ID),
303: HTML_ATTR(BR,STYLE),
304: HTML_ATTR(BR,TITLE),
305: HTML_ATTRIBUTES(BR)
306: };
307: </PRE>
308: <H3>
309: BUTTON
310: </H3>
311: <PRE>
312: enum _HTML_BUTTON_Attributes {
313: HTML_ATTR(BUTTON,ACCESSKEY) = 0,
314: HTML_ATTR(BUTTON,CLASS),
315: HTML_ATTR(BUTTON,DIR),
316: HTML_ATTR(BUTTON,DISABLED),
317: HTML_ATTR(BUTTON,ID),
318: HTML_ATTR(BUTTON,LANG),
319: HTML_ATTR(BUTTON,NAME),
320: HTML_ATTR(BUTTON,STYLE),
321: HTML_ATTR(BUTTON,TABINDEX),
322: HTML_ATTR(BUTTON,TITLE),
323: HTML_ATTR(BUTTON,TYPE),
324: HTML_ATTR(BUTTON,VALUE),
2.32 kahan 325: HTML_ATTRIBUTES(BUTTON)
2.30 frystyk 326: };
327: </PRE>
328: <H3>
329: COL
330: </H3>
331: <PRE>
332: enum _HTML_COL_Attributes {
333: HTML_ATTR(COL,CLASS) = 0,
334: HTML_ATTR(COL,DIR),
335: HTML_ATTR(COL,ID),
336: HTML_ATTR(COL,LANG),
337: HTML_ATTR(COL,SPAN),
338: HTML_ATTR(COL,STYLE),
339: HTML_ATTR(COL,TITLE),
340: HTML_ATTR(COL,WIDTH),
341: HTML_ATTRIBUTES(COL)
342: };
343: </PRE>
344: <H3>
345: DEL, INS
346: </H3>
347: <PRE>
348: enum _HTML_CHANGES_Attributes {
349: HTML_ATTR(CHANGES,CITE) = 0,
350: HTML_ATTR(CHANGES,CLASS),
351: HTML_ATTR(CHANGES,DATETIME),
352: HTML_ATTR(CHANGES,DIR),
353: HTML_ATTR(CHANGES,ID),
354: HTML_ATTR(CHANGES,LANG),
355: HTML_ATTR(CHANGES,STYLE),
356: HTML_ATTR(CHANGES,TITLE),
357: HTML_ATTRIBUTES(CHANGES)
358: };
359: </PRE>
360: <H3>
361: FONT - Deprecated
362: </H3>
363: <PRE>
364: enum _HTML_FONT_Attributes {
365: HTML_ATTR(FONT,CLASS) = 0,
366: HTML_ATTR(FONT,COLOR),
367: HTML_ATTR(FONT,DIR),
368: HTML_ATTR(FONT,FACE),
369: HTML_ATTR(FONT,ID),
370: HTML_ATTR(FONT,LANG),
371: HTML_ATTR(FONT,SIZE),
372: HTML_ATTR(FONT,STYLE),
373: HTML_ATTR(FONT,TITLE),
374: HTML_ATTRIBUTES(FONT)
375: };
2.28 frystyk 376: </PRE>
377: <H3>
378: FORM
379: </H3>
380: <PRE>
2.30 frystyk 381: enum _HTML_FORM_Attributes {
382: HTML_ATTR(FORM,ACCEPT) = 0,
383: HTML_ATTR(FORM,ACCEPT_CHARSET), /* { "ACCEPT-CHARSET" } */
384: HTML_ATTR(FORM,ACTION),
385: HTML_ATTR(FORM,CLASS),
386: HTML_ATTR(FORM,DIR),
387: HTML_ATTR(FORM,ENCTYPE),
388: HTML_ATTR(FORM,ID),
389: HTML_ATTR(FORM,LANG),
390: HTML_ATTR(FORM,METHOD),
391: HTML_ATTR(FORM,STYLE),
392: HTML_ATTR(FORM,TARGET),
393: HTML_ATTR(FORM,TITLE),
394: HTML_ATTRIBUTES(FORM)
395: };
2.28 frystyk 396: </PRE>
397: <H3>
398: FRAME
399: </H3>
400: <PRE>
2.30 frystyk 401: enum _HTML_FRAME_Attributes {
402: HTML_ATTR(FRAME,CLASS) = 0,
403: HTML_ATTR(FRAME,FRAMEBORDER),
404: HTML_ATTR(FRAME,ID),
405: HTML_ATTR(FRAME,NAME),
406: HTML_ATTR(FRAME,MARGINHEIGHT),
407: HTML_ATTR(FRAME,MARGINWIDTH),
408: HTML_ATTR(FRAME,NORESIZE),
409: HTML_ATTR(FRAME,LONGDESC),
410: HTML_ATTR(FRAME,SCROLLING),
411: HTML_ATTR(FRAME,SRC),
412: HTML_ATTR(FRAME,STYLE),
413: HTML_ATTR(FRAME,TARGET),
414: HTML_ATTR(FRAME,TITLE),
415: HTML_ATTRIBUTES(FRAME)
416: };
2.28 frystyk 417: </PRE>
418: <H3>
419: FRAMESET
420: </H3>
421: <PRE>
2.30 frystyk 422: enum _HTML_FRAMESET_Attributes {
423: HTML_ATTR(FRAMESET,CLASS) = 0,
424: HTML_ATTR(FRAMESET,COLS),
425: HTML_ATTR(FRAMESET,ID),
426: HTML_ATTR(FRAMESET,ROWS),
427: HTML_ATTR(FRAMESET,STYLE),
428: HTML_ATTR(FRAMESET,TITLE),
429: HTML_ATTRIBUTES(FRAMESET)
430: };
431: </PRE>
432: <H3>
433: Generic attributes
434: </H3>
435: <PRE>
436: enum _HTML_GEN_Attributes {
437: HTML_ATTR(GEN,CLASS) = 0,
438: HTML_ATTR(GEN,DIR),
439: HTML_ATTR(GEN,ID),
440: HTML_ATTR(GEN,LANG),
441: HTML_ATTR(GEN,STYLE),
442: HTML_ATTR(GEN,TITLE),
443: HTML_ATTRIBUTES(GEN)
444: };
445: </PRE>
446: <H3>
447: BLOCK
448: </H3>
449: <PRE>
450: enum _HTML_BLOCK_Attributes {
451: HTML_ATTR(BLOCK,ALIGN) = 0,
452: HTML_ATTR(BLOCK,CLASS),
453: HTML_ATTR(BLOCK,DIR),
454: HTML_ATTR(BLOCK,ID),
455: HTML_ATTR(BLOCK,LANG),
456: HTML_ATTR(BLOCK,STYLE),
457: HTML_ATTR(BLOCK,TITLE),
458: HTML_ATTRIBUTES(BLOCK)
459: };
460: </PRE>
461: <H3>
462: HEAD
463: </H3>
464: <PRE>
465: enum _HTML_HEAD_Attributes {
466: HTML_ATTR(HEAD,DIR) = 0,
467: HTML_ATTR(HEAD,LANG),
468: HTML_ATTR(HEAD,PROFILE),
469: HTML_ATTRIBUTES(HEAD)
470: };
471: </PRE>
472: <H3>
473: HR
474: </H3>
475: <PRE>
476: enum _HTML_HR_Attributes {
477: HTML_ATTR(HR,ALIGN) = 0,
478: HTML_ATTR(HR,CLASS),
479: HTML_ATTR(HR,DIR),
480: HTML_ATTR(HR,ID),
481: HTML_ATTR(HR,LANG),
482: HTML_ATTR(HR,NOSHADE),
483: HTML_ATTR(HR,SIZE),
484: HTML_ATTR(HR,STYLE),
485: HTML_ATTR(HR,TITLE),
486: HTML_ATTR(HR,WIDTH),
487: HTML_ATTRIBUTES(HR)
488: };
489: </PRE>
490: <H3>
491: HTML
492: </H3>
493: <PRE>
494: enum _HTML_HTML_Attributes {
495: HTML_ATTR(HTML,DIR) = 0,
496: HTML_ATTR(HTML,LANG),
497: HTML_ATTR(HTML,VERSION),
498: HTML_ATTRIBUTES(HTML)
499: };
500: </PRE>
501: <H3>
502: IFRAME
503: </H3>
504: <PRE>
505: enum _HTML_IFRAME_Attributes {
506: HTML_ATTR(IFRAME,ALIGN) = 0,
507: HTML_ATTR(IFRAME,CLASS),
508: HTML_ATTR(IFRAME,FRAMEBORDER),
509: HTML_ATTR(IFRAME,HEIGHT),
510: HTML_ATTR(IFRAME,ID),
511: HTML_ATTR(IFRAME,LONGDESC),
512: HTML_ATTR(IFRAME,MARGINHEIGHT),
513: HTML_ATTR(IFRAME,MARGINWIDTH),
514: HTML_ATTR(IFRAME,NAME),
515: HTML_ATTR(IFRAME,SCROLLING),
516: HTML_ATTR(IFRAME,SRC),
517: HTML_ATTR(IFRAME,STYLE),
518: HTML_ATTR(IFRAME,TARGET),
519: HTML_ATTR(IFRAME,TITLE),
520: HTML_ATTR(IFRAME,WIDTH),
521: HTML_ATTRIBUTES(IFRAME)
522: };
2.28 frystyk 523: </PRE>
524: <H3>
525: IMG
526: </H3>
527: <PRE>
2.30 frystyk 528: enum _HTML_IMG_Attributes {
529: HTML_ATTR(IMG,ALIGN) = 0,
530: HTML_ATTR(IMG,ALT),
531: HTML_ATTR(IMG,BORDER),
532: HTML_ATTR(IMG,CLASS),
533: HTML_ATTR(IMG,DIR),
534: HTML_ATTR(IMG,HEIGHT),
535: HTML_ATTR(IMG,HSPACE),
536: HTML_ATTR(IMG,ID),
537: HTML_ATTR(IMG,ISMAP),
538: HTML_ATTR(IMG,LANG),
539: HTML_ATTR(IMG,LONGDESC),
540: HTML_ATTR(IMG,SRC),
541: HTML_ATTR(IMG,STYLE),
542: HTML_ATTR(IMG,TITLE),
543: HTML_ATTR(IMG,USEMAP),
544: HTML_ATTR(IMG,VSPACE),
545: HTML_ATTR(IMG,WIDTH),
546: HTML_ATTRIBUTES(IMG)
547: };
2.28 frystyk 548: </PRE>
549: <H3>
550: INPUT
551: </H3>
552: <PRE>
2.30 frystyk 553: enum _HTML_INPUT_Attributes {
554: HTML_ATTR(INPUT,ACCEPT) = 0,
555: HTML_ATTR(INPUT,ACCESSKEY),
556: HTML_ATTR(INPUT,ALIGN),
557: HTML_ATTR(INPUT,ALT),
558: HTML_ATTR(INPUT,CHECKED),
559: HTML_ATTR(INPUT,CLASS),
560: HTML_ATTR(INPUT,DIR),
561: HTML_ATTR(INPUT,DISABLED),
562: HTML_ATTR(INPUT,ID),
563: HTML_ATTR(INPUT,LANG),
564: HTML_ATTR(INPUT,MAXLENGTH),
565: HTML_ATTR(INPUT,NAME),
566: HTML_ATTR(INPUT,READONLY),
567: HTML_ATTR(INPUT,SIZE),
568: HTML_ATTR(INPUT,SRC),
569: HTML_ATTR(INPUT,STYLE),
570: HTML_ATTR(INPUT,TABINDEX),
571: HTML_ATTR(INPUT,TITLE),
572: HTML_ATTR(INPUT,TYPE),
573: HTML_ATTR(INPUT,USEMAP),
574: HTML_ATTR(INPUT,VALUE),
575: HTML_ATTRIBUTES(INPUT)
576: };
577: </PRE>
578: <H3>
579: </H3>
580: <PRE>
581: enum _HTML_ISINDEX_Attributes {
582: HTML_ATTR(ISINDEX,CLASS) = 0,
583: HTML_ATTR(ISINDEX,DIR),
584: HTML_ATTR(ISINDEX,ID),
585: HTML_ATTR(ISINDEX,LANG),
586: HTML_ATTR(ISINDEX,PROMPT),
587: HTML_ATTR(ISINDEX,STYLE),
588: HTML_ATTR(ISINDEX,TITLE),
589: HTML_ATTRIBUTES(ISINDEX)
590: };
591: </PRE>
592: <H3>
593: </H3>
594: <PRE>
595: enum _HTML_LABEL_Attributes {
596: HTML_ATTR(LABEL,ACCESSKEY) = 0,
597: HTML_ATTR(LABEL,CLASS),
598: HTML_ATTR(LABEL,DIR),
599: HTML_ATTR(LABEL,FOR),
600: HTML_ATTR(LABEL,ID),
601: HTML_ATTR(LABEL,LANG),
602: HTML_ATTR(LABEL,STYLE),
603: HTML_ATTR(LABEL,TITLE),
604: HTML_ATTRIBUTES(LABEL)
605: };
606: </PRE>
607: <H3>
608: </H3>
609: <PRE>
610: enum _HTML_LEGEND_Attributes {
611: HTML_ATTR(LEGEND,ACCESSKEY) = 0,
612: HTML_ATTR(LEGEND,ALIGN),
613: HTML_ATTR(LEGEND,CLASS),
614: HTML_ATTR(LEGEND,DIR),
615: HTML_ATTR(LEGEND,ID),
616: HTML_ATTR(LEGEND,LANG),
617: HTML_ATTR(LEGEND,STYLE),
618: HTML_ATTR(LEGEND,TITLE),
619: HTML_ATTRIBUTES(LEGEND)
620: };
2.28 frystyk 621: </PRE>
622: <H3>
623: LI
624: </H3>
625: <PRE>
2.30 frystyk 626: enum _HTML_LI_Attributes {
627: HTML_ATTR(LI,CLASS) = 0,
628: HTML_ATTR(LI,COMPACT),
629: HTML_ATTR(LI,DIR),
630: HTML_ATTR(LI,ID),
631: HTML_ATTR(LI,LANG),
632: HTML_ATTR(LI,STYLE),
633: HTML_ATTR(LI,TITLE),
634: HTML_ATTR(LI,TYPE),
635: HTML_ATTR(LI,VALUE),
636: HTML_ATTRIBUTES(LI)
637: };
2.28 frystyk 638: </PRE>
639: <H3>
640: LINK
641: </H3>
642: <PRE>
2.30 frystyk 643: enum _HTML_LINK_Attributes {
644: HTML_ATTR(LINK,CHARSET) = 0,
645: HTML_ATTR(LINK,CLASS),
646: HTML_ATTR(LINK,DIR),
647: HTML_ATTR(LINK,HREF),
648: HTML_ATTR(LINK,HREFLANG),
649: HTML_ATTR(LINK,ID),
650: HTML_ATTR(LINK,LANG),
651: HTML_ATTR(LINK,MEDIA),
652: HTML_ATTR(LINK,REL),
653: HTML_ATTR(LINK,REV),
654: HTML_ATTR(LINK,STYLE),
655: HTML_ATTR(LINK,TARGET),
656: HTML_ATTR(LINK,TITLE),
657: HTML_ATTR(LINK,TYPE),
658: HTML_ATTRIBUTES(LINK)
659: };
2.28 frystyk 660: </PRE>
661: <H3>
2.29 frystyk 662: MAP
663: </H3>
664: <PRE>
2.30 frystyk 665: enum _HTML_MAP_Attributes {
666: HTML_ATTR(MAP,CLASS) = 0,
667: HTML_ATTR(MAP,DIR),
668: HTML_ATTR(MAP,ID),
669: HTML_ATTR(MAP,LANG),
670: HTML_ATTR(MAP,NAME),
671: HTML_ATTR(MAP,STYLE),
672: HTML_ATTR(MAP,TITLE),
673: HTML_ATTRIBUTES(MAP)
674: };
2.29 frystyk 675: </PRE>
676: <H3>
2.28 frystyk 677: META
678: </H3>
679: <PRE>
2.30 frystyk 680: enum _HTML_META_Attributes {
681: HTML_ATTR(META,CONTENT) = 0,
682: HTML_ATTR(META,DIR),
683: HTML_ATTR(META,HTTP_EQUIV), /* { "HTTP-EQUIV" ) */
684: HTML_ATTR(META,LANG),
685: HTML_ATTR(META,NAME),
686: HTML_ATTR(META,SCHEME),
687: HTML_ATTRIBUTES(META)
688: };
2.28 frystyk 689: </PRE>
690: <H3>
691: NEXTID
692: </H3>
693: <PRE>
2.1 timbl 694: #define HTML_NEXTID_ATTRIBUTES 1
695: #define HTML_NEXTID_N 0
2.28 frystyk 696: </PRE>
697: <H3>
698: OBJECT
699: </H3>
700: <PRE>
2.30 frystyk 701: enum _HTML_OBJECT_Attributes {
702: HTML_ATTR(OBJECT,ALIGN) = 0,
703: HTML_ATTR(OBJECT,ARCHIVE),
704: HTML_ATTR(OBJECT,BORDER),
705: HTML_ATTR(OBJECT,CLASS),
706: HTML_ATTR(OBJECT,CLASSID),
707: HTML_ATTR(OBJECT,CODEBASE),
708: HTML_ATTR(OBJECT,CODETYPE),
709: HTML_ATTR(OBJECT,DATA),
710: HTML_ATTR(OBJECT,DECLARE),
711: HTML_ATTR(OBJECT,DIR),
712: HTML_ATTR(OBJECT,HEIGHT),
713: HTML_ATTR(OBJECT,HSPACE),
714: HTML_ATTR(OBJECT,ID),
715: HTML_ATTR(OBJECT,LANG),
716: HTML_ATTR(OBJECT,NAME),
717: HTML_ATTR(OBJECT,STANDBY),
718: HTML_ATTR(OBJECT,STYLE),
719: HTML_ATTR(OBJECT,TABINDEX),
720: HTML_ATTR(OBJECT,TITLE),
721: HTML_ATTR(OBJECT,TYPE),
722: HTML_ATTR(OBJECT,USEMAP),
723: HTML_ATTR(OBJECT,VSPACE),
724: HTML_ATTR(OBJECT,WIDTH),
725: HTML_ATTRIBUTES(OBJECT)
726: };
727: </PRE>
728: <H3>
729: OL
730: </H3>
731: <PRE>
732: enum _HTML_OL_Attributes {
733: HTML_ATTR(OL,CLASS) = 0,
734: HTML_ATTR(OL,COMPACT),
735: HTML_ATTR(OL,DIR),
736: HTML_ATTR(OL,ID),
737: HTML_ATTR(OL,LANG),
738: HTML_ATTR(OL,START),
739: HTML_ATTR(OL,STYLE),
740: HTML_ATTR(OL,TITLE),
741: HTML_ATTR(OL,TYPE),
742: HTML_ATTRIBUTES(OL)
743: };
744: </PRE>
745: <H3>
746: OPTGROUP
747: </H3>
748: <PRE>
749: enum _HTML_OPTGROUP_Attributes {
750: HTML_ATTR(OPTGROUP,CLASS) = 0,
751: HTML_ATTR(OPTGROUP,DISABLED),
752: HTML_ATTR(OPTGROUP,DIR),
753: HTML_ATTR(OPTGROUP,ID),
754: HTML_ATTR(OPTGROUP,LABEL),
755: HTML_ATTR(OPTGROUP,LANG),
756: HTML_ATTR(OPTGROUP,STYLE),
757: HTML_ATTR(OPTGROUP,TITLE),
758: HTML_ATTRIBUTES(OPTGROUP)
759: };
2.28 frystyk 760: </PRE>
761: <H3>
762: OPTION
763: </H3>
764: <PRE>
2.30 frystyk 765: enum _HTML_OPTION_Attributes {
766: HTML_ATTR(OPTION,CLASS) = 0,
767: HTML_ATTR(OPTION,DISABLED),
768: HTML_ATTR(OPTION,DIR),
769: HTML_ATTR(OPTION,ID),
770: HTML_ATTR(OPTION,LABEL),
771: HTML_ATTR(OPTION,LANG),
772: HTML_ATTR(OPTION,SELECTED),
773: HTML_ATTR(OPTION,STYLE),
774: HTML_ATTR(OPTION,TITLE),
775: HTML_ATTR(OPTION,VALUE),
776: HTML_ATTRIBUTES(OPTION)
777: };
778: </PRE>
779: <H3>
780: PARAM
781: </H3>
782: <PRE>
783: enum _HTML_PARAM_Attributes {
784: HTML_ATTR(PARAM,ID) = 0,
785: HTML_ATTR(PARAM,NAME),
786: HTML_ATTR(PARAM,TYPE),
787: HTML_ATTR(PARAM,VALUE),
788: HTML_ATTR(PARAM,VALUETYPE),
789: HTML_ATTRIBUTES(PARAM)
790: };
791: </PRE>
792: <H3>
793: PRE
794: </H3>
795: <PRE>
796: enum _HTML_PRE_Attributes {
797: HTML_ATTR(PRE,CLASS) = 0,
798: HTML_ATTR(PRE,DIR),
799: HTML_ATTR(PRE,ID),
800: HTML_ATTR(PRE,LANG),
801: HTML_ATTR(PRE,STYLE),
802: HTML_ATTR(PRE,TITLE),
803: HTML_ATTR(PRE,WIDTH),
804: HTML_ATTRIBUTES(PRE)
805: };
806: </PRE>
807: <H3>
808: SCRIPT
809: </H3>
810: <PRE>
811: enum _HTML_SCRIPT_Attributes {
812: HTML_ATTR(SCRIPT,CHARSET) = 0,
813: HTML_ATTR(SCRIPT,DEFER),
814: HTML_ATTR(SCRIPT,LANGUAGE),
815: HTML_ATTR(SCRIPT,SRC),
816: HTML_ATTR(SCRIPT,TYPE),
817: HTML_ATTRIBUTES(SCRIPT)
818: };
2.28 frystyk 819: </PRE>
820: <H3>
821: SELECT
822: </H3>
823: <PRE>
2.30 frystyk 824: enum _HTML_SELECT_Attributes {
825: HTML_ATTR(SELECT,CLASS) = 0,
826: HTML_ATTR(SELECT,DIR),
827: HTML_ATTR(SELECT,DISABLED),
828: HTML_ATTR(SELECT,ID),
829: HTML_ATTR(SELECT,LANG),
830: HTML_ATTR(SELECT,MULTIPLE),
831: HTML_ATTR(SELECT,NAME),
832: HTML_ATTR(SELECT,SIZE),
833: HTML_ATTR(SELECT,STYLE),
834: HTML_ATTR(SELECT,TABINDEX),
835: HTML_ATTR(SELECT,TITLE),
836: HTML_ATTRIBUTES(SELECT)
837: };
838: </PRE>
839: <H3>
840: STYLE
841: </H3>
842: <PRE>
843: enum _HTML_STYLE_Attributes {
844: HTML_ATTR(STYLE,DIR) = 0,
845: HTML_ATTR(STYLE,LANG),
846: HTML_ATTR(STYLE,MEDIA),
847: HTML_ATTR(STYLE,TITLE),
848: HTML_ATTR(STYLE,TYPE),
849: HTML_ATTRIBUTES(STYLE)
850: };
2.28 frystyk 851: </PRE>
852: <H3>
853: TABLE
854: </H3>
855: <PRE>
2.30 frystyk 856: enum _HTML_TABLE_Attributes {
857: HTML_ATTR(TABLE,ALIGN) = 0,
858: HTML_ATTR(TABLE,BGCOLOR),
859: HTML_ATTR(TABLE,BORDER),
860: HTML_ATTR(TABLE,CELLPADDING),
861: HTML_ATTR(TABLE,CELLSPACING),
862: HTML_ATTR(TABLE,CLASS),
863: HTML_ATTR(TABLE,DIR),
864: HTML_ATTR(TABLE,FRAME),
865: HTML_ATTR(TABLE,ID),
866: HTML_ATTR(TABLE,LANG),
867: HTML_ATTR(TABLE,RULES),
868: HTML_ATTR(TABLE,SUMMARY),
869: HTML_ATTR(TABLE,STYLE),
870: HTML_ATTR(TABLE,TITLE),
871: HTML_ATTR(TABLE,WIDTH),
872: HTML_ATTRIBUTES(TABLE)
873: };
874: </PRE>
875: <H3>
876: TABLE Elements
877: </H3>
878: <PRE>
879: enum _HTML_TELE_Attributes {
880: HTML_ATTR(TELE,ALIGN) = 0,
881: HTML_ATTR(TELE,CHAR),
882: HTML_ATTR(TELE,CHAROFF),
883: HTML_ATTR(TELE,CLASS),
884: HTML_ATTR(TELE,DIR),
885: HTML_ATTR(TELE,ID),
886: HTML_ATTR(TELE,LANG),
887: HTML_ATTR(TELE,STYLE),
888: HTML_ATTR(TELE,TITLE),
889: HTML_ATTR(TELE,VALIGN),
890: HTML_ATTRIBUTES(TELE)
891: };
2.28 frystyk 892: </PRE>
893: <H3>
894: TD
895: </H3>
896: <PRE>
2.30 frystyk 897: enum _HTML_TD_Attributes {
898: HTML_ATTR(TD,ABBR) = 0,
899: HTML_ATTR(TD,ALIGN),
900: HTML_ATTR(TD,AXIS),
901: HTML_ATTR(TD,BGCOLOR),
902: HTML_ATTR(TD,CHAR),
903: HTML_ATTR(TD,CHAROFF),
904: HTML_ATTR(TD,CLASS),
905: HTML_ATTR(TD,COLSPAN),
906: HTML_ATTR(TD,DIR),
907: HTML_ATTR(TD,ID),
908: HTML_ATTR(TD,HEADERS),
909: HTML_ATTR(TD,HEIGHT),
910: HTML_ATTR(TD,LANG),
911: HTML_ATTR(TD,NOWRAP),
912: HTML_ATTR(TD,ROWSPAN),
913: HTML_ATTR(TD,SCOPE),
914: HTML_ATTR(TD,STYLE),
915: HTML_ATTR(TD,TITLE),
916: HTML_ATTR(TD,VALIGN),
917: HTML_ATTR(TD,WIDTH),
918: HTML_ATTRIBUTES(TD)
919: };
2.28 frystyk 920: </PRE>
921: <H3>
922: TEXTAREA
923: </H3>
924: <PRE>
2.30 frystyk 925: enum _HTML_TEXTAREA_Attributes {
926: HTML_ATTR(TEXTAREA,CLASS) = 0,
927: HTML_ATTR(TEXTAREA,COLS),
928: HTML_ATTR(TEXTAREA,DIR),
929: HTML_ATTR(TEXTAREA,DISABLED),
930: HTML_ATTR(TEXTAREA,ID),
931: HTML_ATTR(TEXTAREA,LANG),
932: HTML_ATTR(TEXTAREA,NAME),
933: HTML_ATTR(TEXTAREA,READONLY),
934: HTML_ATTR(TEXTAREA,ROWS),
935: HTML_ATTR(TEXTAREA,STYLE),
936: HTML_ATTR(TEXTAREA,TABINDEX),
937: HTML_ATTR(TEXTAREA,TITLE),
938: HTML_ATTRIBUTES(TEXTAREA)
939: };
940: </PRE>
941: <H3>
942: TITLE
943: </H3>
944: <PRE>
945: enum _HTML_TITLE_Attributes {
946: HTML_ATTR(TITLE,DIR) = 0,
947: HTML_ATTR(TITLE,LANG),
948: HTML_ATTRIBUTES(TITLE)
949: };
2.28 frystyk 950: </PRE>
951: <H3>
952: UL
953: </H3>
954: <PRE>
2.30 frystyk 955: enum _HTML_UL_Attributes {
956: HTML_ATTR(UL,CLASS) = 0,
957: HTML_ATTR(UL,COMPACT),
958: HTML_ATTR(UL,DIR),
959: HTML_ATTR(UL,ID),
960: HTML_ATTR(UL,LANG),
961: HTML_ATTR(UL,STYLE),
962: HTML_ATTR(UL,TITLE),
963: HTML_ATTR(UL,TYPE),
964: HTML_ATTRIBUTES(UL)
965: };
2.28 frystyk 966: </PRE>
967: <H2>
968: The C Representation of the SGML DTD
969: </H2>
970: <PRE>
971: extern SGML_dtd * HTML_dtd (void);
972: extern BOOL HTML_setDtd (const SGML_dtd * dtd);
973: </PRE>
974: <H2>
975: Utitity Functions
976: </H2>
977: <H3>
978: Start anchor element
979: </H3>
980: <P>
981: It is kinda convenient to have a particular routine for starting an anchor
982: element, as everything else for HTML is simple anyway.
983: <PRE>
2.17 frystyk 984: extern void HTStartAnchor (
2.1 timbl 985: HTStructured * targetstream,
2.18 frystyk 986: const char * name,
987: const char * href);
2.28 frystyk 988: </PRE>
989: <H3>
990: Put image element
991: </H3>
992: <P>
993: This is the same idea but for images
994: <PRE>
2.17 frystyk 995: extern void HTMLPutImg (HTStructured *obj,
2.18 frystyk 996: const char *src,
997: const char *alt,
998: const char *align);
2.1 timbl 999:
2.28 frystyk 1000: </PRE>
1001: <H3>
1002: Specify next ID to be used
1003: </H3>
1004: <P>
1005: This is another convenience routine, for specifying the next ID to be used
1006: by an editor in the series z1. z2,...
1007: <PRE>
1008: extern void HTNextID (HTStructured * targetStream, const char * s);
1009: </PRE>
2.6 timbl 1010: <PRE>
2.33 ! vbancrof 1011: #ifdef __cplusplus
! 1012: }
! 1013: #endif
! 1014:
2.1 timbl 1015: #endif /* HTMLDTD_H */
2.20 frystyk 1016: </PRE>
2.28 frystyk 1017: <P>
1018: <HR>
2.20 frystyk 1019: <ADDRESS>
2.33 ! vbancrof 1020: @(#) $Id: HTMLPDTD.html,v 2.32 2000/01/06 10:48:50 kahan Exp $
2.20 frystyk 1021: </ADDRESS>
2.28 frystyk 1022: </BODY></HTML>
Webmaster