1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
|
/* The HTML DTD -- software interface in libwww
HTML DTD - SOFTWARE INTERFACE
SGML purists should excuse the use of the term "DTD" in this file to
represent DTD-related information which is not exactly a DTD itself.
The C modular structure doesn't work very well here, as the dtd is
partly in the .h and partly in the .c which are not very independent.
Tant pis.
*/
#ifndef HTMLDTD_H
#define HTMLDTD_H
#include <SGML.h>
#include <HTFont.h>
/*
** Valid name chars for tag parsing.
*/
#define IsNmStart(c) (isalpha(UCH(c)))
#define IsNmChar(c) (isalnum(UCH(c)) || \
c == '_' || c=='-' || c == '.' || c==':')
#define ReallyEmptyTagNum(e) ((HTML_dtd.tags[e].contents == SGML_EMPTY) && \
!(HTML_dtd.tags[e].flags & Tgf_nreie))
#define ReallyEmptyTag(t) ((t->contents == SGML_EMPTY) && \
!(t->flags & Tgf_nreie))
/*
Element Numbers
*/
/*
Must Match all tables by element!
These include tables in HTMLDTD.c and code in HTML.c.
*/
typedef enum {
HTML_A,
HTML_ABBREV,
HTML_ACRONYM,
HTML_ADDRESS,
HTML_APPLET,
HTML_AREA,
HTML_AU,
HTML_AUTHOR,
HTML_B,
HTML_BANNER,
HTML_BASE,
HTML_BASEFONT,
HTML_BDO,
HTML_BGSOUND,
HTML_BIG,
HTML_BLINK,
HTML_BLOCKQUOTE,
HTML_BODY,
HTML_BODYTEXT,
HTML_BQ,
HTML_BR,
HTML_BUTTON,
HTML_CAPTION,
HTML_CENTER,
HTML_CITE,
HTML_CODE,
HTML_COL,
HTML_COLGROUP,
HTML_COMMENT,
HTML_CREDIT,
HTML_DD,
HTML_DEL,
HTML_DFN,
HTML_DIR,
HTML_DIV,
HTML_DL,
HTML_DLC,
HTML_DT,
HTML_EM,
HTML_EMBED,
HTML_FIELDSET,
HTML_FIG,
HTML_FN,
HTML_FONT,
HTML_FORM,
HTML_FRAME,
HTML_FRAMESET,
HTML_H1,
HTML_H2,
HTML_H3,
HTML_H4,
HTML_H5,
HTML_H6,
HTML_HEAD,
HTML_HR,
HTML_HTML,
HTML_HY,
HTML_I,
HTML_IFRAME,
HTML_IMG,
HTML_INPUT,
HTML_INS,
HTML_ISINDEX,
HTML_KBD,
HTML_KEYGEN,
HTML_LABEL,
HTML_LEGEND,
HTML_LH,
HTML_LI,
HTML_LINK,
HTML_LISTING,
HTML_MAP,
HTML_MARQUEE,
HTML_MATH,
HTML_MENU,
HTML_META,
HTML_NEXTID,
HTML_NOFRAMES,
HTML_NOTE,
HTML_OBJECT,
HTML_OL,
HTML_OPTION,
HTML_OVERLAY,
HTML_P,
HTML_PARAM,
HTML_PLAINTEXT,
HTML_PRE,
HTML_Q,
HTML_S,
HTML_SAMP,
HTML_SCRIPT,
HTML_SELECT,
HTML_SHY,
HTML_SMALL,
HTML_SPAN,
HTML_SPOT,
HTML_STRIKE,
HTML_STRONG,
HTML_STYLE,
HTML_SUB,
HTML_SUP,
HTML_TAB,
HTML_TABLE,
HTML_TBODY,
HTML_TD,
HTML_TEXTAREA,
HTML_TEXTFLOW,
HTML_TFOOT,
HTML_TH,
HTML_THEAD,
HTML_TITLE,
HTML_TR,
HTML_TT,
HTML_U,
HTML_UL,
HTML_VAR,
HTML_WBR,
HTML_XMP,
HTML_ALT_OBJECT } HTMLElement;
/* Notes: HTML.c uses a different extension of the HTML_ELEMENTS space
privately, see HTNestedList.h. */
/* Don't replace HTML_ELEMENTS with TABLESIZE(mumble_dtd.tags). */
/* Keep the following defines in synch with the above enum! */
/* HTML_ELEMENTS: number of elements visible to Lynx code in general,
alphabetic (ASCII) order. */
#define HTML_ELEMENTS 118
/* HTML_ALL_ELEMENTS: number of elements visible to SGML parser,
additional variant(s) at end. */
#define HTML_ALL_ELEMENTS 119
/*
Attribute numbers
*/
/*
Identifier is HTML_<element>_<attribute>.
These must match the tables in HTML.c!
*/
#define HTML_A_ACCESSKEY 0
#define HTML_A_CHARSET 1 /* i18n draft, added tentatively - KW */
#define HTML_A_CLASS 2
#define HTML_A_CLEAR 3
#define HTML_A_COORDS 4
#define HTML_A_DIR 5
#define HTML_A_HREF 6
#define HTML_A_ID 7
#define HTML_A_ISMAP 8
#define HTML_A_LANG 9
#define HTML_A_MD 10
#define HTML_A_NAME 11
#define HTML_A_NOTAB 12
#define HTML_A_ONCLICK 13
#define HTML_A_ONMOUSEOUT 14
#define HTML_A_ONMOUSEOVER 15
#define HTML_A_REL 16
#define HTML_A_REV 17
#define HTML_A_SHAPE 18
#define HTML_A_STYLE 19
#define HTML_A_TABINDEX 20
#define HTML_A_TARGET 21
#define HTML_A_TITLE 22
#define HTML_A_TYPE 23
#define HTML_A_URN 24
#define HTML_A_ATTRIBUTES 25
#define HTML_ADDRESS_CLASS 0
#define HTML_ADDRESS_CLEAR 1
#define HTML_ADDRESS_DIR 2
#define HTML_ADDRESS_ID 3
#define HTML_ADDRESS_LANG 4
#define HTML_ADDRESS_NOWRAP 5
#define HTML_ADDRESS_STYLE 6
#define HTML_ADDRESS_TITLE 7
#define HTML_ADDRESS_ATTRIBUTES 8
#define HTML_APPLET_ALIGN 0
#define HTML_APPLET_ALT 1
#define HTML_APPLET_CLASS 2
#define HTML_APPLET_CLEAR 3
#define HTML_APPLET_CODE 4
#define HTML_APPLET_CODEBASE 5
#define HTML_APPLET_DIR 6
#define HTML_APPLET_DOWNLOAD 7
#define HTML_APPLET_HEIGHT 8
#define HTML_APPLET_HSPACE 9
#define HTML_APPLET_ID 10
#define HTML_APPLET_LANG 11
#define HTML_APPLET_NAME 12
#define HTML_APPLET_STYLE 13
#define HTML_APPLET_TITLE 14
#define HTML_APPLET_VSPACE 15
#define HTML_APPLET_WIDTH 16
#define HTML_APPLET_ATTRIBUTES 17
#define HTML_AREA_ALT 0
#define HTML_AREA_CLASS 1
#define HTML_AREA_CLEAR 2
#define HTML_AREA_COORDS 3
#define HTML_AREA_DIR 4
#define HTML_AREA_HREF 5
#define HTML_AREA_ID 6
#define HTML_AREA_LANG 7
#define HTML_AREA_NOHREF 8
#define HTML_AREA_NONOTAB 9
#define HTML_AREA_ONCLICK 10
#define HTML_AREA_ONMOUSEOUT 11
#define HTML_AREA_ONMOUSEOVER 12
#define HTML_AREA_SHAPE 13
#define HTML_AREA_STYLE 14
#define HTML_AREA_TABINDEX 15
#define HTML_AREA_TARGET 16
#define HTML_AREA_TITLE 17
#define HTML_AREA_ATTRIBUTES 18
#define HTML_BASE_HREF 0
#define HTML_BASE_TARGET 1
#define HTML_BASE_TITLE 2
#define HTML_BASE_ATTRIBUTES 3
#define HTML_BGSOUND_CLASS 0
#define HTML_BGSOUND_CLEAR 1
#define HTML_BGSOUND_DIR 2
#define HTML_BGSOUND_ID 3
#define HTML_BGSOUND_LANG 4
#define HTML_BGSOUND_LOOP 5
#define HTML_BGSOUND_SRC 6
#define HTML_BGSOUND_STYLE 7
#define HTML_BGSOUND_TITLE 8
#define HTML_BGSOUND_ATTRIBUTES 9
#define HTML_BODY_ALINK 0
#define HTML_BODY_BACKGROUND 1
#define HTML_BODY_BGCOLOR 2
#define HTML_BODY_CLASS 3
#define HTML_BODY_CLEAR 4
#define HTML_BODY_DIR 5
#define HTML_BODY_ID 6
#define HTML_BODY_LANG 7
#define HTML_BODY_LINK 8
#define HTML_BODY_ONLOAD 9
#define HTML_BODY_ONUNLOAD 10
#define HTML_BODY_STYLE 11
#define HTML_BODY_TEXT 12
#define HTML_BODY_TITLE 13
#define HTML_BODY_VLINK 14
#define HTML_BODY_ATTRIBUTES 15
#define HTML_BODYTEXT_CLASS 0
#define HTML_BODYTEXT_CLEAR 1
#define HTML_BODYTEXT_DATA 2
#define HTML_BODYTEXT_DIR 3
#define HTML_BODYTEXT_ID 4
#define HTML_BODYTEXT_LANG 5
#define HTML_BODYTEXT_NAME 6
#define HTML_BODYTEXT_OBJECT 7
#define HTML_BODYTEXT_REF 8
#define HTML_BODYTEXT_STYLE 9
#define HTML_BODYTEXT_TITLE 10
#define HTML_BODYTEXT_TYPE 11
#define HTML_BODYTEXT_VALUE 12
#define HTML_BODYTEXT_VALUETYPE 13
#define HTML_BODYTEXT_ATTRIBUTES 14
#define HTML_BQ_CITE 0
#define HTML_BQ_CLASS 1
#define HTML_BQ_CLEAR 2
#define HTML_BQ_DIR 3
#define HTML_BQ_ID 4
#define HTML_BQ_LANG 5
#define HTML_BQ_NOWRAP 6
#define HTML_BQ_STYLE 7
#define HTML_BQ_TITLE 8
#define HTML_BQ_ATTRIBUTES 9
#define HTML_BUTTON_CLASS 0
#define HTML_BUTTON_CLEAR 1
#define HTML_BUTTON_DIR 2
#define HTML_BUTTON_DISABLED 3
#define HTML_BUTTON_ID 4
#define HTML_BUTTON_LANG 5
#define HTML_BUTTON_NAME 6
#define HTML_BUTTON_ONFOCUS 7
#define HTML_BUTTON_ONBLUR 8
#define HTML_BUTTON_STYLE 9
#define HTML_BUTTON_TABINDEX 10
#define HTML_BUTTON_TITLE 11
#define HTML_BUTTON_TYPE 12
#define HTML_BUTTON_VALUE 13
#define HTML_BUTTON_ATTRIBUTES 14
#define HTML_CAPTION_ACCESSKEY 0
#define HTML_CAPTION_ALIGN 1
#define HTML_CAPTION_CLASS 2
#define HTML_CAPTION_CLEAR 3
#define HTML_CAPTION_DIR 4
#define HTML_CAPTION_ID 5
#define HTML_CAPTION_LANG 6
#define HTML_CAPTION_STYLE 7
#define HTML_CAPTION_TITLE 8
#define HTML_CAPTION_ATTRIBUTES 9
#define HTML_COL_ALIGN 0
#define HTML_COL_CHAR 1
#define HTML_COL_CHAROFF 2
#define HTML_COL_CLASS 3
#define HTML_COL_CLEAR 4
#define HTML_COL_DIR 5
#define HTML_COL_ID 6
#define HTML_COL_LANG 7
#define HTML_COL_SPAN 8
#define HTML_COL_STYLE 9
#define HTML_COL_TITLE 10
#define HTML_COL_VALIGN 11
#define HTML_COL_WIDTH 12
#define HTML_COL_ATTRIBUTES 13
#define HTML_CREDIT_CLASS 0
#define HTML_CREDIT_CLEAR 1
#define HTML_CREDIT_DIR 2
#define HTML_CREDIT_ID 3
#define HTML_CREDIT_LANG 4
#define HTML_CREDIT_STYLE 5
#define HTML_CREDIT_TITLE 6
#define HTML_CREDIT_ATTRIBUTES 7
#define HTML_DIV_ALIGN 0
#define HTML_DIV_CLASS 1
#define HTML_DIV_CLEAR 2
#define HTML_DIV_DIR 3
#define HTML_DIV_ID 4
#define HTML_DIV_LANG 5
#define HTML_DIV_STYLE 6
#define HTML_DIV_TITLE 7
#define HTML_DIV_ATTRIBUTES 8
#define HTML_DL_CLASS 0
#define HTML_DL_CLEAR 1
#define HTML_DL_COMPACT 2
#define HTML_DL_DIR 3
#define HTML_DL_ID 4
#define HTML_DL_LANG 5
#define HTML_DL_STYLE 6
#define HTML_DL_TITLE 7
#define HTML_DL_ATTRIBUTES 8
#define HTML_EMBED_ALIGN 0
#define HTML_EMBED_ALT 1
#define HTML_EMBED_BORDER 2
#define HTML_EMBED_CLASS 3
#define HTML_EMBED_CLEAR 4
#define HTML_EMBED_DIR 5
#define HTML_EMBED_HEIGHT 6
#define HTML_EMBED_ID 7
#define HTML_EMBED_IMAGEMAP 8
#define HTML_EMBED_ISMAP 9
#define HTML_EMBED_LANG 10
#define HTML_EMBED_MD 11
#define HTML_EMBED_NAME 12
#define HTML_EMBED_NOFLOW 13
#define HTML_EMBED_PARAMS 14
#define HTML_EMBED_SRC 15
#define HTML_EMBED_STYLE 16
#define HTML_EMBED_TITLE 17
#define HTML_EMBED_UNITS 18
#define HTML_EMBED_USEMAP 19
#define HTML_EMBED_WIDTH 20
#define HTML_EMBED_ATTRIBUTES 21
#define HTML_FIELDSET_CLASS 0
#define HTML_FIELDSET_CLEAR 1
#define HTML_FIELDSET_DIR 2
#define HTML_FIELDSET_ID 3
#define HTML_FIELDSET_LANG 4
#define HTML_FIELDSET_STYLE 5
#define HTML_FIELDSET_TITLE 6
#define HTML_FIELDSET_ATTRIBUTES 7
#define HTML_FIG_ALIGN 0
#define HTML_FIG_BORDER 1
#define HTML_FIG_CLASS 2
#define HTML_FIG_CLEAR 3
#define HTML_FIG_DIR 4
#define HTML_FIG_HEIGHT 5
#define HTML_FIG_ID 6
#define HTML_FIG_IMAGEMAP 7
#define HTML_FIG_ISOBJECT 8
#define HTML_FIG_LANG 9
#define HTML_FIG_MD 10
#define HTML_FIG_NOFLOW 11
#define HTML_FIG_SRC 12
#define HTML_FIG_STYLE 13
#define HTML_FIG_TITLE 14
#define HTML_FIG_UNITS 15
#define HTML_FIG_WIDTH 16
#define HTML_FIG_ATTRIBUTES 17
#define HTML_FN_CLASS 0
#define HTML_FN_CLEAR 1
#define HTML_FN_DIR 2
#define HTML_FN_ID 3
#define HTML_FN_LANG 4
#define HTML_FN_STYLE 5
#define HTML_FN_TITLE 6
#define HTML_FN_ATTRIBUTES 7
#define HTML_FONT_CLASS 0
#define HTML_FONT_CLEAR 1
#define HTML_FONT_COLOR 2
#define HTML_FONT_DIR 3
#define HTML_FONT_FACE 4
#define HTML_FONT_ID 5
#define HTML_FONT_LANG 6
#define HTML_FONT_SIZE 7
#define HTML_FONT_STYLE 8
#define HTML_FONT_ATTRIBUTES 9
#define HTML_FORM_ACCEPT_CHARSET 0 /* HTML 4.0 draft - kw */
#define HTML_FORM_ACTION 1
#define HTML_FORM_CLASS 2
#define HTML_FORM_CLEAR 3
#define HTML_FORM_DIR 4
#define HTML_FORM_ENCTYPE 5
#define HTML_FORM_ID 6
#define HTML_FORM_LANG 7
#define HTML_FORM_METHOD 8
#define HTML_FORM_ONSUBMIT 9
#define HTML_FORM_SCRIPT 10
#define HTML_FORM_STYLE 11
#define HTML_FORM_SUBJECT 12
#define HTML_FORM_TARGET 13
#define HTML_FORM_TITLE 14
#define HTML_FORM_ATTRIBUTES 15
#define HTML_FRAME_ID 0
#define HTML_FRAME_LONGDESC 1
#define HTML_FRAME_MARGINHEIGHT 2
#define HTML_FRAME_MARGINWIDTH 3
#define HTML_FRAME_NAME 4
#define HTML_FRAME_NORESIZE 5
#define HTML_FRAME_SCROLLING 6
#define HTML_FRAME_SRC 7
#define HTML_FRAME_ATTRIBUTES 8
#define HTML_FRAMESET_COLS 0
#define HTML_FRAMESET_ROWS 1
#define HTML_FRAMESET_ATTRIBUTES 2
#define HTML_GEN_CLASS 0
#define HTML_GEN_CLEAR 1
#define HTML_GEN_DIR 2
#define HTML_GEN_ID 3
#define HTML_GEN_LANG 4
#define HTML_GEN_STYLE 5
#define HTML_GEN_TITLE 6
#define HTML_GEN_ATTRIBUTES 7
#define HTML_H_ALIGN 0
#define HTML_H_CLASS 1
#define HTML_H_CLEAR 2
#define HTML_H_DINGBAT 3
#define HTML_H_DIR 4
#define HTML_H_ID 5
#define HTML_H_LANG 6
#define HTML_H_MD 7
#define HTML_H_NOWRAP 8
#define HTML_H_SEQNUM 9
#define HTML_H_SKIP 10
#define HTML_H_SRC 11
#define HTML_H_STYLE 12
#define HTML_H_TITLE 13
#define HTML_H_ATTRIBUTES 14
#define HTML_HR_ALIGN 0
#define HTML_HR_CLASS 1
#define HTML_HR_CLEAR 2
#define HTML_HR_DIR 3
#define HTML_HR_ID 4
#define HTML_HR_MD 5
#define HTML_HR_NOSHADE 6
#define HTML_HR_SIZE 7
#define HTML_HR_SRC 8
#define HTML_HR_STYLE 9
#define HTML_HR_TITLE 10
#define HTML_HR_WIDTH 11
#define HTML_HR_ATTRIBUTES 12
#define HTML_IFRAME_ALIGN 0
#define HTML_IFRAME_FRAMEBORDER 1
#define HTML_IFRAME_HEIGHT 2
#define HTML_IFRAME_ID 3
#define HTML_IFRAME_LONGDESC 4
#define HTML_IFRAME_MARGINHEIGHT 5
#define HTML_IFRAME_MARGINWIDTH 6
#define HTML_IFRAME_NAME 7
#define HTML_IFRAME_SCROLLING 8
#define HTML_IFRAME_SRC 9
#define HTML_IFRAME_STYLE 10
#define HTML_IFRAME_WIDTH 11
#define HTML_IFRAME_ATTRIBUTES 12
#define HTML_IMG_ALIGN 0
#define HTML_IMG_ALT 1
#define HTML_IMG_BORDER 2
#define HTML_IMG_CLASS 3
#define HTML_IMG_CLEAR 4
#define HTML_IMG_DIR 5
#define HTML_IMG_HEIGHT 6
#define HTML_IMG_ID 7
#define HTML_IMG_ISMAP 8
#define HTML_IMG_ISOBJECT 9
#define HTML_IMG_LANG 10
#define HTML_IMG_LONGDESC 11
#define HTML_IMG_MD 12
#define HTML_IMG_SRC 13
#define HTML_IMG_STYLE 14
#define HTML_IMG_TITLE 15
#define HTML_IMG_UNITS 16
#define HTML_IMG_USEMAP 17
#define HTML_IMG_WIDTH 18
#define HTML_IMG_ATTRIBUTES 19
#define HTML_INPUT_ACCEPT 0
#define HTML_INPUT_ACCEPT_CHARSET 1 /* RFC 2070 HTML i18n - kw */
#define HTML_INPUT_ALIGN 2
#define HTML_INPUT_ALT 3
#define HTML_INPUT_CHECKED 4
#define HTML_INPUT_CLASS 5
#define HTML_INPUT_CLEAR 6
#define HTML_INPUT_DIR 7
#define HTML_INPUT_DISABLED 8
#define HTML_INPUT_ERROR 9
#define HTML_INPUT_HEIGHT 10
#define HTML_INPUT_ID 11
#define HTML_INPUT_LANG 12
#define HTML_INPUT_MAX 13
#define HTML_INPUT_MAXLENGTH 14
#define HTML_INPUT_MD 15
#define HTML_INPUT_MIN 16
#define HTML_INPUT_NAME 17
#define HTML_INPUT_NOTAB 18
#define HTML_INPUT_ONBLUR 19
#define HTML_INPUT_ONCHANGE 20
#define HTML_INPUT_ONCLICK 21
#define HTML_INPUT_ONFOCUS 22
#define HTML_INPUT_ONSELECT 23
#define HTML_INPUT_SIZE 24
#define HTML_INPUT_SRC 25
#define HTML_INPUT_STYLE 26
#define HTML_INPUT_TABINDEX 27
#define HTML_INPUT_TITLE 28
#define HTML_INPUT_TYPE 29
#define HTML_INPUT_VALUE 30
#define HTML_INPUT_WIDTH 31
#define HTML_INPUT_ATTRIBUTES 32
#define HTML_ISINDEX_ACTION 0 /* Treat as synonym for HREF. - FM */
#define HTML_ISINDEX_DIR 1
#define HTML_ISINDEX_HREF 2 /* HTML 3.0 "action". - FM */
#define HTML_ISINDEX_ID 3
#define HTML_ISINDEX_LANG 4
#define HTML_ISINDEX_PROMPT 5 /* HTML 3.0 "prompt". - FM */
#define HTML_ISINDEX_TITLE 6
#define HTML_ISINDEX_ATTRIBUTES 7
#define HTML_KEYGEN_CHALLENGE 0
#define HTML_KEYGEN_CLASS 1
#define HTML_KEYGEN_DIR 2
#define HTML_KEYGEN_ID 3
#define HTML_KEYGEN_LANG 4
#define HTML_KEYGEN_NAME 5
#define HTML_KEYGEN_STYLE 6
#define HTML_KEYGEN_TITLE 7
#define HTML_KEYGEN_ATTRIBUTES 8
#define HTML_LABEL_ACCESSKEY 0
#define HTML_LABEL_CLASS 1
#define HTML_LABEL_CLEAR 2
#define HTML_LABEL_DIR 3
#define HTML_LABEL_FOR 4
#define HTML_LABEL_ID 5
#define HTML_LABEL_LANG 6
#define HTML_LABEL_ONCLICK 7
#define HTML_LABEL_STYLE 8
#define HTML_LABEL_TITLE 9
#define HTML_LABEL_ATTRIBUTES 10
#define HTML_LEGEND_ACCESSKEY 0
#define HTML_LEGEND_ALIGN 1
#define HTML_LEGEND_CLASS 2
#define HTML_LEGEND_CLEAR 3
#define HTML_LEGEND_DIR 4
#define HTML_LEGEND_ID 5
#define HTML_LEGEND_LANG 6
#define HTML_LEGEND_STYLE 7
#define HTML_LEGEND_TITLE 8
#define HTML_LEGEND_ATTRIBUTES 9
#define HTML_LI_CLASS 0
#define HTML_LI_CLEAR 1
#define HTML_LI_DINGBAT 2
#define HTML_LI_DIR 3
#define HTML_LI_ID 4
#define HTML_LI_LANG 5
#define HTML_LI_MD 6
#define HTML_LI_SKIP 7
#define HTML_LI_SRC 8
#define HTML_LI_STYLE 9
#define HTML_LI_TITLE 10
#define HTML_LI_TYPE 11
#define HTML_LI_VALUE 12
#define HTML_LI_ATTRIBUTES 13
#define HTML_LINK_CHARSET 0 /* RFC 2070 HTML i18n - kw */
#define HTML_LINK_CLASS 1
#define HTML_LINK_HREF 2
#define HTML_LINK_ID 3
#define HTML_LINK_MEDIA 4
#define HTML_LINK_REL 5
#define HTML_LINK_REV 6
#define HTML_LINK_STYLE 7
#define HTML_LINK_TARGET 8
#define HTML_LINK_TITLE 9
#define HTML_LINK_TYPE 10
#define HTML_LINK_ATTRIBUTES 11
#define HTML_MAP_CLASS 0
#define HTML_MAP_CLEAR 1
#define HTML_MAP_DIR 2
#define HTML_MAP_ID 3
#define HTML_MAP_LANG 4
#define HTML_MAP_NAME 5
#define HTML_MAP_STYLE 6
#define HTML_MAP_TITLE 7
#define HTML_MAP_ATTRIBUTES 8
#define HTML_MATH_BOX 0
#define HTML_MATH_CLASS 1
#define HTML_MATH_CLEAR 2
#define HTML_MATH_DIR 3
#define HTML_MATH_ID 4
#define HTML_MATH_LANG 5
#define HTML_MATH_STYLE 6
#define HTML_MATH_TITLE 7
#define HTML_MATH_ATTRIBUTES 8
#define HTML_META_CONTENT 0
#define HTML_META_HTTP_EQUIV 1 /* For parsing in HTML.c - FM */
#define HTML_META_NAME 2
#define HTML_META_ATTRIBUTES 3
#define NEXTID_N 0
#define HTML_NOTE_CLASS 0
#define HTML_NOTE_CLEAR 1
#define HTML_NOTE_DIR 2
#define HTML_NOTE_ID 3
#define HTML_NOTE_LANG 4
#define HTML_NOTE_MD 5
#define HTML_NOTE_ROLE 6 /* Old name for CLASS - FM */
#define HTML_NOTE_SRC 7
#define HTML_NOTE_STYLE 8
#define HTML_NOTE_TITLE 9
#define HTML_NOTE_ATTRIBUTES 10
#define HTML_OBJECT_ALIGN 0
#define HTML_OBJECT_BORDER 1
#define HTML_OBJECT_CLASS 2
#define HTML_OBJECT_CLASSID 3
#define HTML_OBJECT_CODEBASE 4
#define HTML_OBJECT_CODETYPE 5
#define HTML_OBJECT_DATA 6
#define HTML_OBJECT_DECLARE 7
#define HTML_OBJECT_DIR 8
#define HTML_OBJECT_HEIGHT 9
#define HTML_OBJECT_HSPACE 10
#define HTML_OBJECT_ID 11
#define HTML_OBJECT_ISMAP 12
#define HTML_OBJECT_LANG 13
#define HTML_OBJECT_NAME 14
#define HTML_OBJECT_NOTAB 15
#define HTML_OBJECT_SHAPES 16
#define HTML_OBJECT_STANDBY 17
#define HTML_OBJECT_STYLE 18
#define HTML_OBJECT_TABINDEX 19
#define HTML_OBJECT_TITLE 20
#define HTML_OBJECT_TYPE 21
#define HTML_OBJECT_USEMAP 22
#define HTML_OBJECT_VSPACE 23
#define HTML_OBJECT_WIDTH 24
#define HTML_OBJECT_ATTRIBUTES 25
#define HTML_OL_CLASS 0
#define HTML_OL_CLEAR 1
#define HTML_OL_COMPACT 2
#define HTML_OL_CONTINUE 3
#define HTML_OL_DIR 4
#define HTML_OL_ID 5
#define HTML_OL_LANG 6
#define HTML_OL_SEQNUM 7
#define HTML_OL_START 8
#define HTML_OL_STYLE 9
#define HTML_OL_TITLE 10
#define HTML_OL_TYPE 11
#define HTML_OL_ATTRIBUTES 12
#define HTML_OPTION_CLASS 0
#define HTML_OPTION_CLEAR 1
#define HTML_OPTION_DIR 2
#define HTML_OPTION_DISABLED 3
#define HTML_OPTION_ERROR 4
#define HTML_OPTION_ID 5
#define HTML_OPTION_LANG 6
#define HTML_OPTION_SELECTED 7
#define HTML_OPTION_SHAPE 8
#define HTML_OPTION_STYLE 9
#define HTML_OPTION_TITLE 10
#define HTML_OPTION_VALUE 11
#define HTML_OPTION_ATTRIBUTES 12
#define HTML_OVERLAY_CLASS 0
#define HTML_OVERLAY_HEIGHT 1
#define HTML_OVERLAY_ID 2
#define HTML_OVERLAY_IMAGEMAP 3
#define HTML_OVERLAY_MD 4
#define HTML_OVERLAY_SRC 5
#define HTML_OVERLAY_STYLE 6
#define HTML_OVERLAY_TITLE 7
#define HTML_OVERLAY_UNITS 8
#define HTML_OVERLAY_WIDTH 9
#define HTML_OVERLAY_X 10
#define HTML_OVERLAY_Y 11
#define HTML_OVERLAY_ATTRIBUTES 12
#define HTML_P_ALIGN 0
#define HTML_P_CLASS 1
#define HTML_P_CLEAR 2
#define HTML_P_DIR 3
#define HTML_P_ID 4
#define HTML_P_LANG 5
#define HTML_P_NOWRAP 6
#define HTML_P_STYLE 7
#define HTML_P_TITLE 8
#define HTML_P_ATTRIBUTES 9
#define HTML_PARAM_ACCEPT 0
#define HTML_PARAM_ACCEPT_CHARSET 1
#define HTML_PARAM_ACCEPT_ENCODING 2
#define HTML_PARAM_CLASS 3
#define HTML_PARAM_CLEAR 4
#define HTML_PARAM_DATA 5
#define HTML_PARAM_DIR 6
#define HTML_PARAM_ID 7
#define HTML_PARAM_LANG 8
#define HTML_PARAM_NAME 9
#define HTML_PARAM_OBJECT 10
#define HTML_PARAM_REF 11
#define HTML_PARAM_STYLE 12
#define HTML_PARAM_TITLE 13
#define HTML_PARAM_TYPE 14
#define HTML_PARAM_VALUE 15
#define HTML_PARAM_VALUEREF 16 /* Use VALUETYPE (DATA|REF|OBJECT). - FM */
#define HTML_PARAM_VALUETYPE 17
#define HTML_PARAM_ATTRIBUTES 18
#define HTML_SCRIPT_CLASS 0
#define HTML_SCRIPT_CLEAR 1
#define HTML_SCRIPT_DIR 2
#define HTML_SCRIPT_EVENT 3
#define HTML_SCRIPT_FOR 4
#define HTML_SCRIPT_ID 5
#define HTML_SCRIPT_LANG 6
#define HTML_SCRIPT_LANGUAGE 7
#define HTML_SCRIPT_NAME 8
#define HTML_SCRIPT_SCRIPTENGINE 9
#define HTML_SCRIPT_SRC 10
#define HTML_SCRIPT_STYLE 11
#define HTML_SCRIPT_TITLE 12
#define HTML_SCRIPT_TYPE 13
#define HTML_SCRIPT_ATTRIBUTES 14
#define HTML_SELECT_ALIGN 0
#define HTML_SELECT_CLASS 1
#define HTML_SELECT_CLEAR 2
#define HTML_SELECT_DIR 3
#define HTML_SELECT_DISABLED 4
#define HTML_SELECT_ERROR 5
#define HTML_SELECT_HEIGHT 6
#define HTML_SELECT_ID 7
#define HTML_SELECT_LANG 8
#define HTML_SELECT_MD 9
#define HTML_SELECT_MULTIPLE 10
#define HTML_SELECT_NAME 11
#define HTML_SELECT_NOTAB 12
#define HTML_SELECT_ONBLUR 13
#define HTML_SELECT_ONCHANGE 14
#define HTML_SELECT_ONFOCUS 15
#define HTML_SELECT_SIZE 16
#define HTML_SELECT_STYLE 17
#define HTML_SELECT_TABINDEX 18
#define HTML_SELECT_TITLE 19
#define HTML_SELECT_UNITS 20
#define HTML_SELECT_WIDTH 21
#define HTML_SELECT_ATTRIBUTES 22
#define HTML_STYLE_DIR 0
#define HTML_STYLE_LANG 1
#define HTML_STYLE_NOTATION 2
#define HTML_STYLE_TITLE 3
#define HTML_STYLE_ATTRIBUTES 4
#define HTML_TAB_ALIGN 0
#define HTML_TAB_CLASS 1
#define HTML_TAB_CLEAR 2
#define HTML_TAB_DIR 3
#define HTML_TAB_DP 4
#define HTML_TAB_ID 5
#define HTML_TAB_INDENT 6
#define HTML_TAB_LANG 7
#define HTML_TAB_STYLE 8
#define HTML_TAB_TITLE 9
#define HTML_TAB_TO 10
#define HTML_TAB_ATTRIBUTES 11
#define HTML_TABLE_ALIGN 0
#define HTML_TABLE_BACKGROUND 1
#define HTML_TABLE_BORDER 2
#define HTML_TABLE_CELLPADDING 3
#define HTML_TABLE_CELLSPACING 4
#define HTML_TABLE_CLASS 5
#define HTML_TABLE_CLEAR 6
#define HTML_TABLE_COLS 7
#define HTML_TABLE_COLSPEC 8
#define HTML_TABLE_DIR 9
#define HTML_TABLE_DP 10
#define HTML_TABLE_FRAME 11
#define HTML_TABLE_ID 12
#define HTML_TABLE_LANG 13
#define HTML_TABLE_NOFLOW 14
#define HTML_TABLE_NOWRAP 15
#define HTML_TABLE_RULES 16
#define HTML_TABLE_STYLE 17
#define HTML_TABLE_SUMMARY 18
#define HTML_TABLE_TITLE 19
#define HTML_TABLE_UNITS 20
#define HTML_TABLE_WIDTH 21
#define HTML_TABLE_ATTRIBUTES 22
#define HTML_TD_ALIGN 0
#define HTML_TD_AXES 1
#define HTML_TD_AXIS 2
#define HTML_TD_BACKGROUND 3
#define HTML_TD_CHAR 4
#define HTML_TD_CHAROFF 5
#define HTML_TD_CLASS 6
#define HTML_TD_CLEAR 7
#define HTML_TD_COLSPAN 8
#define HTML_TD_DIR 9
#define HTML_TD_DP 10
#define HTML_TD_HEIGHT 11
#define HTML_TD_ID 12
#define HTML_TD_LANG 13
#define HTML_TD_NOWRAP 14
#define HTML_TD_ROWSPAN 15
#define HTML_TD_STYLE 16
#define HTML_TD_TITLE 17
#define HTML_TD_VALIGN 18
#define HTML_TD_WIDTH 19
#define HTML_TD_ATTRIBUTES 20
#define HTML_TEXTAREA_ACCEPT_CHARSET 0 /* RFC 2070 HTML i18n - kw */
#define HTML_TEXTAREA_ALIGN 1
#define HTML_TEXTAREA_CLASS 2
#define HTML_TEXTAREA_CLEAR 3
#define HTML_TEXTAREA_COLS 4
#define HTML_TEXTAREA_DIR 5
#define HTML_TEXTAREA_DISABLED 6
#define HTML_TEXTAREA_ERROR 7
#define HTML_TEXTAREA_ID 8
#define HTML_TEXTAREA_LANG 9
#define HTML_TEXTAREA_NAME 10
#define HTML_TEXTAREA_NOTAB 11
#define HTML_TEXTAREA_ONBLUR 12
#define HTML_TEXTAREA_ONCHANGE 13
#define HTML_TEXTAREA_ONFOCUS 14
#define HTML_TEXTAREA_ONSELECT 15
#define HTML_TEXTAREA_ROWS 16
#define HTML_TEXTAREA_STYLE 17
#define HTML_TEXTAREA_TABINDEX 18
#define HTML_TEXTAREA_TITLE 19
#define HTML_TEXTAREA_ATTRIBUTES 20
#define HTML_TR_ALIGN 0
#define HTML_TR_CHAR 1
#define HTML_TR_CHAROFF 2
#define HTML_TR_CLASS 3
#define HTML_TR_CLEAR 4
#define HTML_TR_DIR 5
#define HTML_TR_DP 6
#define HTML_TR_ID 7
#define HTML_TR_LANG 8
#define HTML_TR_NOWRAP 9
#define HTML_TR_STYLE 10
#define HTML_TR_TITLE 11
#define HTML_TR_VALIGN 12
#define HTML_TR_ATTRIBUTES 13
#define HTML_UL_CLASS 0
#define HTML_UL_CLEAR 1
#define HTML_UL_COMPACT 2
#define HTML_UL_DINGBAT 3
#define HTML_UL_DIR 4
#define HTML_UL_ID 5
#define HTML_UL_LANG 6
#define HTML_UL_MD 7
#define HTML_UL_PLAIN 8
#define HTML_UL_SRC 9
#define HTML_UL_STYLE 10
#define HTML_UL_TITLE 11
#define HTML_UL_TYPE 12
#define HTML_UL_WRAP 13
#define HTML_UL_ATTRIBUTES 14
#ifdef USE_PRETTYSRC
/* values of HTML attributes' types */
#define HTMLA_NORMAL 0 /* nothing specific */
#define HTMLA_ANAME 1 /* anchor name - 'id' or a's 'name' */
#define HTMLA_HREF 2 /* href */
#define HTMLA_CLASS 4 /* class name. */
#define HTMLA_AUXCLASS 8 /* attribute, the value of which also designates
a class name */
#endif
extern CONST SGML_dtd HTML_dtd;
extern void HTSwitchDTD PARAMS((int new_flag));
extern HTTag HTTag_unrecognized;
extern HTTag HTTag_mixedObject;
/*
Start anchor element
It is kinda convenient to have a particular routine for starting an anchor
element, as everything else for HTML is simple anyway.
ON ENTRY
targetstream points to a structured stream object.
name and href point to attribute strings or are NULL if the attribute is
to be omitted.
*/
extern void HTStartAnchor PARAMS((
HTStructured * targetstream,
CONST char * name,
CONST char * href));
extern void HTStartAnchor5 PARAMS((
HTStructured * targetstream,
CONST char * name,
CONST char * href,
CONST char * linktype,
int tag_charset));
/*
Start IsIndex element - FM
It is kinda convenient to have a particular routine for starting an IsIndex
element with the prompt and/or href (action) attributes specified.
ON ENTRY
targetstream points to a structured stream object.
prompt and href point to attribute strings or are NULL if the attribute is
to be omitted.
*/
extern void HTStartIsIndex PARAMS((
HTStructured * targetstream,
CONST char * prompt,
CONST char * href));
#endif /* HTMLDTD_H */
/*
End of module definition */
|