Annotation of libwww/Library/src/HTMLPDTD.html, revision 2.7
2.7 ! frystyk 1: <HTML>
! 2: <HEAD>
! 3: <TITLE>The HTML PLUS DTD -- software interface in libwww</TITLE>
! 4: </HEAD>
! 5: <BODY>
! 6:
! 7: <H1>HTML Plus DTD - Software Interface</H1>
! 8:
! 9: <PRE>
! 10: /*
! 11: ** (c) COPYRIGHT CERN 1994.
! 12: ** Please first read the full copyright statement in the file COPYRIGH.
! 13: */
! 14: </PRE>
! 15:
! 16: SGML purists should excuse the use of the term "DTD" in this file to
! 17: represent DTD-related information which is not exactly a DTD
! 18: itself. The C modular structure doesn't work very well here, as the
! 19: dtd is partly in the .h and partly in the .c which are not very
! 20: independent. <EM>Tant pis!</EM> There are a couple of HTML-specific
! 21: utility routines also defined. <P>
! 22:
! 23: This module is a part of the <A
! 24: HREF="http://info.cern.ch/hypertext/WWW/Library/User/Guide/Guide.html">
! 25: Library of Common Code</A>.
! 26:
2.6 timbl 27: <PRE>
28: #ifndef HTMLDTD_H
2.1 timbl 29: #define HTMLDTD_H
30:
31: #include "HTUtils.h"
2.6 timbl 32: #include <A HREF="SGML.html" NAME="z3">"SGML.h"</A>
33:
34: </PRE><H2>Entity numbers</H2></BODY><BODY>
35: The entity names are defined in the C file. This gives the number of them.
36: </BODY><BODY><PRE>
37: #define HTML_ENTITIES 66
38:
2.1 timbl 39:
2.6 timbl 40:
41: </PRE></BODY><BODY><H2>Element Numbers</H2>Must Match all tables by element!
42: These include tables in <A HREF="HTMLPDTD.c" NAME="z1">HTMLPDTD.c</A> and code
43: in <A HREF="HTML.c" NAME="z0">HTML.c</A> .
44: <P>Differences from Internet Draft 00:
45: HTML, H7,PLAINTEXT LISTINGand XMP left in. <PRE>
46: typedef enum _HTMLElement {
2.1 timbl 47: HTML_A,
48: HTML_ABBREV,
49: HTML_ABSTRACT,
50: HTML_ACRONYM,
51: HTML_ADDED,
52: HTML_ADDRESS,
53: HTML_ARG,
54: HTML_B,
55: HTML_BASE,
56: HTML_BLOCKQUOTE,
57: HTML_BODY,
58: HTML_BOX,
59: HTML_BR,
60: HTML_BYLINE,
61: HTML_CAPTION,
62: HTML_CHANGED,
63: HTML_CITE,
64: HTML_CMD,
65: HTML_CODE,
66: HTML_COMMENT,
67: HTML_DD,
68: HTML_DFN,
69: HTML_DIR,
70: HTML_DL,
71: HTML_DT,
72: HTML_EM,
73: HTML_FIG,
74: HTML_FOOTNOTE,
75: HTML_FORM,
76: HTML_H1,
77: HTML_H2,
78: HTML_H3,
79: HTML_H4,
80: HTML_H5,
81: HTML_H6,
82: HTML_H7,
83: HTML_HEAD,
84: HTML_HR,
85: HTML_HTML,
86: HTML_HTMLPLUS,
87: HTML_I,
88: HTML_IMAGE,
89: HTML_IMG,
90: HTML_INPUT,
91: HTML_ISINDEX,
92: HTML_KBD,
93: HTML_L,
94: HTML_LI,
95: HTML_LINK,
96: HTML_LISTING,
97: HTML_LIT,
98: HTML_MARGIN,
99: HTML_MATH,
100: HTML_MENU,
101: HTML_NEXTID,
102: HTML_NOTE,
103: HTML_OL,
104: HTML_OPTION,
105: HTML_OVER,
106: HTML_P,
107: HTML_PERSON,
108: HTML_PLAINTEXT,
109: HTML_PRE,
110: HTML_Q,
111: HTML_QUOTE,
112: HTML_RENDER,
113: HTML_REMOVED,
114: HTML_S,
115: HTML_SAMP,
116: HTML_SELECT,
117: HTML_STRONG,
118: HTML_SUB,
119: HTML_SUP,
120: HTML_TAB,
121: HTML_TABLE,
122: HTML_TD,
123: HTML_TEXTAREA,
124: HTML_TH,
125: HTML_TITLE,
126: HTML_TR,
127: HTML_TT,
128: HTML_U,
129: HTML_UL,
130: HTML_VAR,
131: HTML_XMP }
132: HTMLElement;
133:
134: #define HTMLP_ELEMENTS 85
135:
2.6 timbl 136: </PRE><H2>Attribute numbers</H2>Identifier is
137: HTML_<element>_<attribute>. These must match the tables in <A
138: HREF="HTMLPDTD.c" NAME="z2">HTMLPDTD.c</A> ! <PRE>
139: #define HTML_A_EFFECT 0
2.1 timbl 140: #define HTML_A_HREF 1
141: #define HTML_A_ID 2
142: #define HTML_A_METHODS 3
143: #define HTML_A_NAME 4
144: #define HTML_A_PRINT 5
145: #define HTML_A_REL 6
146: #define HTML_A_REV 7
147: #define HTML_A_SHAPE 8
148: #define HTML_A_TITLE 9
149: #define HTML_A_ATTRIBUTES 10
150:
151: #define HTML_BASE_ATTRIBUTES 1
152: #define HTML_FORM_ATTRIBUTES 5
153:
154: #define HTML_FIG_ATTRIBUTES 6
155:
156: #define HTML_GEN_ATTRIBUTES 3
157:
158: #define HTML_HTMLPLUS_ATTRIBUTES 2
159:
160: #define HTML_IMAGE_ATTRIBUTES 5
161:
162: #define HTML_CHANGED_ATTRIBUTES 2
2.3 frystyk 163: #define HTML_DL_ATTRIBUTES 3
2.1 timbl 164:
165: #define DL_COMPACT 0
166:
167: #define HTML_IMG_ALIGN 0
168: #define HTML_IMG_ALT 1
169: #define HTML_IMG_ISMAP 2 /* Obsolete but supported */
170: #define HTML_IMG_SEETHRU 3
171:
172: #define HTML_IMG_SRC 4
173:
174: #define HTML_IMG_ATTRIBUTES 5
175:
2.2 timbl 176: #define HTML_INPUT_ALIGN 0
177: #define HTML_INPUT_CHECKED 1
178: #define HTML_INPUT_DISABLED 2
179: #define HTML_INPUT_ERROR 3
180: #define HTML_INPUT_MAX 4
181: #define HTML_INPUT_MIN 5
182: #define HTML_INPUT_NAME 6
183: #define HTML_INPUT_SIZE 7
184: #define HTML_INPUT_SRC 8
185: #define HTML_INPUT_TYPE 9
186: #define HTML_INPUT_VALUE 10
187: #define HTML_INPUT_ATTRIBUTES 11
2.1 timbl 188:
189: #define HTML_L_ATTRIBUTES 4
190:
191: #define HTML_LI_ATTRIBUTES 4
192: #define HTML_LIST_ATTRIBUTES 4
193:
194: #define HTML_LINK_ATTRIBUTES 5
195:
196: #define HTML_ID_ATTRIBUTE 1
197:
198: #define HTML_NEXTID_ATTRIBUTES 1
199: #define HTML_NEXTID_N 0
200:
201: #define HTML_NOTE_ATTRIBUTES 4
202:
203: #define HTML_OPTION_ATTRIBUTES 3
204:
205: /* #define HTML_PRE_WIDTH 0
206: #define HTML_PRE_ATTRIBUTES 1
207: */
208: #define HTML_RENDER_ATTRIBUTES 2
209:
210: #define HTML_SELECT_ATTRIBUTES 4
211: #define HTML_TAB_ATTRIBUTES 2
212: #define HTML_TABLE_ATTRIBUTES 4
213: #define HTML_TD_ATTRIBUTES 4
214:
215: #define HTML_TEXTAREA_ATTRIBUTES 6
216:
217: #define HTML_TH_ATTRIBUTES 4
218:
219: #define HTML_UL_ATTRIBUTES 6
220:
221: extern CONST SGML_dtd HTMLP_dtd;
222:
223:
2.6 timbl 224: </PRE><H2>Start anchor element</H2>It is kinda convenient to have a particular
225: routine for starting an anchor element,
226: as everything else for HTML is simple anyway. <H3>On entry</H3>targetstream
227: poinst to a structured stream object.<P>name and href point to attribute
228: strings or are NULL if the attribute is to be omitted. <PRE>
229: extern void HTStartAnchor PARAMS((
2.1 timbl 230: HTStructured * targetstream,
231: CONST char * name,
232: CONST char * href));
233:
2.6 timbl 234:
235: </PRE><H2>Put image element</H2>Hopefully as useful as HTStartAnchor. <H3>
236: On entry</H3>targetstream point to a structured stream object.<P>src,
237: alt and align are omitted if they are set to NULL. <PRE>
2.4 frystyk 238: extern void HTMLPutImg PARAMS((HTStructured *obj,
239: CONST char *src,
240: CONST char *alt,
241: CONST char *align));
2.1 timbl 242:
2.6 timbl 243: </PRE><H2>Specify next ID to be used</H2>This is another convenience routine,
244: for specifying the next ID to be used by an editor in the series z1. z2,...
245: <PRE>
246: extern void HTNextID PARAMS((HTStructured * targetStream,
2.5 timbl 247: CONST char * s));
2.1 timbl 248:
249: #endif /* HTMLDTD_H */
250:
2.6 timbl 251: </PRE>End of module definition </BODY></HTML>
Webmaster