1075 lines
18 KiB
C++
1075 lines
18 KiB
C++
/**
|
|
libwww Copyright Notice
|
|
[This notice should be placed within redistributed or derivative software
|
|
code when appropriate. This particular formulation of W3C's notice for
|
|
inclusion in libwww code became active on August 14 1998.]
|
|
|
|
LIBWWW COPYRIGHT NOTICE
|
|
|
|
libwww: W3C's implementation of HTTP can be found at:
|
|
http://www.w3.org/Library/
|
|
|
|
Copyright ¨ 1995-2002 World Wide Web Consortium,
|
|
(Massachusetts Institute of Technology, Institut
|
|
National de Recherche en Informatique et en
|
|
Automatique, Keio University). All Rights Reserved.
|
|
This program is distributed under the W3C's
|
|
Intellectual Property License. This program is
|
|
distributed in the hope that it will be useful, but
|
|
WITHOUT ANY WARRANTY; without even the implied
|
|
warranty of MERCHANTABILITY or FITNESS FOR A
|
|
PARTICULAR PURPOSE. See W3C License
|
|
http://www.w3.org/Consortium/Legal/ for more details.
|
|
|
|
Copyright ¨ 1995 CERN. "This product includes computer
|
|
software created and made available by CERN. This
|
|
acknowledgment shall be mentioned in full in any
|
|
product which includes the CERN computer software
|
|
included herein or parts thereof."
|
|
|
|
*****************************************************************************/
|
|
|
|
#ifndef CL_LIB_WWW_TYPES_H
|
|
#define CL_LIB_WWW_TYPES_H
|
|
|
|
#include <string>
|
|
|
|
//
|
|
// LibWWW elements
|
|
// - order must be kept for backward compatibility, new tags can be added to the end
|
|
typedef enum _HTMLElement {
|
|
HTML_A = 0,
|
|
HTML_ABBR,
|
|
HTML_ACRONYM,
|
|
HTML_ADDRESS,
|
|
HTML_APPLET,
|
|
HTML_AREA,
|
|
HTML_B,
|
|
HTML_BASE,
|
|
HTML_BASEFONT,
|
|
HTML_BDO,
|
|
HTML_BIG,
|
|
HTML_BLOCKQUOTE,
|
|
HTML_BODY,
|
|
HTML_BR,
|
|
HTML_BUTTON,
|
|
HTML_CAPTION,
|
|
HTML_CENTER,
|
|
HTML_CITE,
|
|
HTML_CODE,
|
|
HTML_COL,
|
|
HTML_COLGROUP,
|
|
HTML_DD,
|
|
HTML_DEL,
|
|
HTML_DFN,
|
|
HTML_DIR,
|
|
HTML_DIV,
|
|
HTML_DL,
|
|
HTML_DT,
|
|
HTML_EM,
|
|
HTML_FIELDSET,
|
|
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_I,
|
|
HTML_IFRAME,
|
|
HTML_IMG,
|
|
HTML_INPUT,
|
|
HTML_INS,
|
|
HTML_ISINDEX,
|
|
HTML_KBD,
|
|
HTML_LABEL,
|
|
HTML_LEGEND,
|
|
HTML_LI,
|
|
HTML_LINK,
|
|
HTML_MAP,
|
|
HTML_MENU,
|
|
HTML_META,
|
|
HTML_NEXTID, /* !!! */
|
|
HTML_NOFRAMES,
|
|
HTML_NOSCRIPT,
|
|
HTML_OBJECT,
|
|
HTML_OL,
|
|
HTML_OPTGROUP,
|
|
HTML_OPTION,
|
|
HTML_P,
|
|
HTML_PARAM,
|
|
HTML_PRE,
|
|
HTML_Q,
|
|
HTML_S,
|
|
HTML_SAMP,
|
|
HTML_SCRIPT,
|
|
HTML_SELECT,
|
|
HTML_SMALL,
|
|
HTML_SPAN,
|
|
HTML_STRIKE,
|
|
HTML_STRONG,
|
|
HTML_STYLE,
|
|
HTML_SUB,
|
|
HTML_SUP,
|
|
HTML_TABLE,
|
|
HTML_TBODY,
|
|
HTML_TD,
|
|
HTML_TEXTAREA,
|
|
HTML_TFOOT,
|
|
HTML_TH,
|
|
HTML_THEAD,
|
|
HTML_TITLE,
|
|
HTML_TR,
|
|
HTML_TT,
|
|
HTML_U,
|
|
HTML_UL,
|
|
HTML_VAR,
|
|
// new tags
|
|
HTML_LUA,
|
|
// this must be the last entry
|
|
HTML_ELEMENTS
|
|
} HTMLElement;
|
|
|
|
|
|
#define HTML_ATTR(t,a) HTML_##t##_##a
|
|
#define HTML_ATTRIBUTES(t) HTML_##t##_ATTRIBUTES
|
|
|
|
/*
|
|
(
|
|
A
|
|
)
|
|
*/
|
|
|
|
enum _HTML_A_Attributes {
|
|
HTML_ATTR(A,ACCESSKEY) = 0,
|
|
HTML_ATTR(A,CHARSET),
|
|
HTML_ATTR(A,CLASS),
|
|
HTML_ATTR(A,COORDS),
|
|
HTML_ATTR(A,DIR),
|
|
HTML_ATTR(A,HREF),
|
|
HTML_ATTR(A,HREFLANG),
|
|
HTML_ATTR(A,ID),
|
|
HTML_ATTR(A,NAME),
|
|
HTML_ATTR(A,REL),
|
|
HTML_ATTR(A,REV),
|
|
HTML_ATTR(A,SHAPE),
|
|
HTML_ATTR(A,STYLE),
|
|
HTML_ATTR(A,TABINDEX),
|
|
HTML_ATTR(A,TARGET),
|
|
HTML_ATTR(A,TYPE),
|
|
HTML_ATTR(A,TITLE),
|
|
HTML_ATTR(A,Z_ACTION_CATEGORY), // NLGUI
|
|
HTML_ATTR(A,Z_ACTION_PARANS), // NLGUI
|
|
HTML_ATTR(A,Z_ACTION_SHORTCUT), // NLGUI
|
|
HTML_ATTRIBUTES(A)
|
|
};
|
|
|
|
/*
|
|
(
|
|
APPLET - Deprecated
|
|
)
|
|
*/
|
|
|
|
enum _HTML_APPLET_Attributes {
|
|
HTML_ATTR(APPLET,ALIGN) = 0,
|
|
HTML_ATTR(APPLET,ALT),
|
|
HTML_ATTR(APPLET,ARCHIVE),
|
|
HTML_ATTR(APPLET,CLASS),
|
|
HTML_ATTR(APPLET,CODE),
|
|
HTML_ATTR(APPLET,CODEBASE),
|
|
HTML_ATTR(APPLET,HEIGHT),
|
|
HTML_ATTR(APPLET,HSPACE),
|
|
HTML_ATTR(APPLET,ID),
|
|
HTML_ATTR(APPLET,NAME),
|
|
HTML_ATTR(APPLET,OBJECT),
|
|
HTML_ATTR(APPLET,STYLE),
|
|
HTML_ATTR(APPLET,TITLE),
|
|
HTML_ATTR(APPLET,VSPACE),
|
|
HTML_ATTR(APPLET,WIDTH),
|
|
HTML_ATTRIBUTES(APPLET)
|
|
};
|
|
|
|
/*
|
|
(
|
|
AREA
|
|
)
|
|
*/
|
|
|
|
enum _HTML_AREA_Attributes {
|
|
HTML_ATTR(AREA,ACCESSKEY) = 0,
|
|
HTML_ATTR(AREA,ALT),
|
|
HTML_ATTR(AREA,CLASS),
|
|
HTML_ATTR(AREA,COORDS),
|
|
HTML_ATTR(AREA,DIR),
|
|
HTML_ATTR(AREA,HREF),
|
|
HTML_ATTR(AREA,ID),
|
|
HTML_ATTR(AREA,NAME),
|
|
HTML_ATTR(AREA,NOHREF),
|
|
HTML_ATTR(AREA,LANG),
|
|
HTML_ATTR(AREA,SHAPE),
|
|
HTML_ATTR(AREA,STYLE),
|
|
HTML_ATTR(AREA,TABINDEX),
|
|
HTML_ATTR(AREA,TARGET),
|
|
HTML_ATTR(AREA,TITLE),
|
|
HTML_ATTRIBUTES(AREA)
|
|
};
|
|
|
|
|
|
/*
|
|
(
|
|
BASE
|
|
)
|
|
*/
|
|
|
|
enum _HTML_BASE_Attributes {
|
|
HTML_ATTR(BASE,HREF) = 0,
|
|
HTML_ATTR(BASE,TARGET),
|
|
HTML_ATTRIBUTES(BASE)
|
|
};
|
|
|
|
/*
|
|
(
|
|
BDO
|
|
)
|
|
*/
|
|
|
|
enum _HTML_BDO_Attributes {
|
|
HTML_ATTR(BDO,CLASS) = 0,
|
|
HTML_ATTR(BDO,DIR),
|
|
HTML_ATTR(BDO,ID),
|
|
HTML_ATTR(BDO,LANG),
|
|
HTML_ATTR(BDO,STYLE),
|
|
HTML_ATTR(BDO,TITLE),
|
|
HTML_ATTRIBUTES(BDO)
|
|
};
|
|
|
|
/*
|
|
(
|
|
BLOCKQUOTE
|
|
)
|
|
*/
|
|
|
|
enum _HTML_BQ_Attributes {
|
|
HTML_ATTR(BQ,CITE) = 0,
|
|
HTML_ATTR(BQ,CLASS),
|
|
HTML_ATTR(BQ,DIR),
|
|
HTML_ATTR(BQ,ID),
|
|
HTML_ATTR(BQ,LANG),
|
|
HTML_ATTR(BQ,STYLE),
|
|
HTML_ATTR(BQ,TITLE),
|
|
HTML_ATTRIBUTES(BQ)
|
|
};
|
|
|
|
/*
|
|
(
|
|
BODY
|
|
)
|
|
*/
|
|
|
|
enum _HTML_BODY_Attributes {
|
|
HTML_ATTR(BODY,ALINK) = 0,
|
|
HTML_ATTR(BODY,BACKGROUND),
|
|
HTML_ATTR(BODY,BGCOLOR),
|
|
HTML_ATTR(BODY,CLASS),
|
|
HTML_ATTR(BODY,DIR),
|
|
HTML_ATTR(BODY,ID),
|
|
HTML_ATTR(BODY,LANG),
|
|
HTML_ATTR(BODY,LINK),
|
|
HTML_ATTR(BODY,STYLE),
|
|
HTML_ATTR(BODY,TEXT),
|
|
HTML_ATTR(BODY,TITLE),
|
|
HTML_ATTR(BODY,VLINK),
|
|
HTML_ATTRIBUTES(BODY)
|
|
};
|
|
|
|
/*
|
|
(
|
|
BR
|
|
)
|
|
*/
|
|
|
|
enum _HTML_BR_Attributes {
|
|
HTML_ATTR(BR,CLASS) = 0,
|
|
HTML_ATTR(BR,CLEAR),
|
|
HTML_ATTR(BR,ID),
|
|
HTML_ATTR(BR,STYLE),
|
|
HTML_ATTR(BR,TITLE),
|
|
HTML_ATTRIBUTES(BR)
|
|
};
|
|
|
|
/*
|
|
(
|
|
BUTTON
|
|
)
|
|
*/
|
|
|
|
enum _HTML_BUTTON_Attributes {
|
|
HTML_ATTR(BUTTON,ACCESSKEY) = 0,
|
|
HTML_ATTR(BUTTON,CLASS),
|
|
HTML_ATTR(BUTTON,DIR),
|
|
HTML_ATTR(BUTTON,DISABLED),
|
|
HTML_ATTR(BUTTON,ID),
|
|
HTML_ATTR(BUTTON,LANG),
|
|
HTML_ATTR(BUTTON,NAME),
|
|
HTML_ATTR(BUTTON,STYLE),
|
|
HTML_ATTR(BUTTON,TABINDEX),
|
|
HTML_ATTR(BUTTON,TITLE),
|
|
HTML_ATTR(BUTTON,TYPE),
|
|
HTML_ATTR(BUTTON,VALUE),
|
|
HTML_ATTRIBUTES(BUTTON)
|
|
};
|
|
|
|
/*
|
|
(
|
|
COL
|
|
)
|
|
*/
|
|
|
|
enum _HTML_COL_Attributes {
|
|
HTML_ATTR(COL,CLASS) = 0,
|
|
HTML_ATTR(COL,DIR),
|
|
HTML_ATTR(COL,ID),
|
|
HTML_ATTR(COL,LANG),
|
|
HTML_ATTR(COL,SPAN),
|
|
HTML_ATTR(COL,STYLE),
|
|
HTML_ATTR(COL,TITLE),
|
|
HTML_ATTR(COL,WIDTH),
|
|
HTML_ATTRIBUTES(COL)
|
|
};
|
|
|
|
/*
|
|
(
|
|
DEL, INS
|
|
)
|
|
*/
|
|
|
|
enum _HTML_CHANGES_Attributes {
|
|
HTML_ATTR(CHANGES,CITE) = 0,
|
|
HTML_ATTR(CHANGES,CLASS),
|
|
HTML_ATTR(CHANGES,DATETIME),
|
|
HTML_ATTR(CHANGES,DIR),
|
|
HTML_ATTR(CHANGES,ID),
|
|
HTML_ATTR(CHANGES,LANG),
|
|
HTML_ATTR(CHANGES,STYLE),
|
|
HTML_ATTR(CHANGES,TITLE),
|
|
HTML_ATTRIBUTES(CHANGES)
|
|
};
|
|
|
|
/*
|
|
(
|
|
FONT - Deprecated
|
|
)
|
|
*/
|
|
|
|
enum _HTML_FONT_Attributes {
|
|
HTML_ATTR(FONT,CLASS) = 0,
|
|
HTML_ATTR(FONT,COLOR),
|
|
HTML_ATTR(FONT,DIR),
|
|
HTML_ATTR(FONT,FACE),
|
|
HTML_ATTR(FONT,ID),
|
|
HTML_ATTR(FONT,LANG),
|
|
HTML_ATTR(FONT,SIZE),
|
|
HTML_ATTR(FONT,STYLE),
|
|
HTML_ATTR(FONT,TITLE),
|
|
HTML_ATTRIBUTES(FONT)
|
|
};
|
|
|
|
/*
|
|
(
|
|
FORM
|
|
)
|
|
*/
|
|
|
|
enum _HTML_FORM_Attributes {
|
|
HTML_ATTR(FORM,ACCEPT) = 0,
|
|
HTML_ATTR(FORM,ACCEPT_CHARSET), /* { "ACCEPT-CHARSET" } */
|
|
HTML_ATTR(FORM,ACTION),
|
|
HTML_ATTR(FORM,CLASS),
|
|
HTML_ATTR(FORM,DIR),
|
|
HTML_ATTR(FORM,ENCTYPE),
|
|
HTML_ATTR(FORM,ID),
|
|
HTML_ATTR(FORM,LANG),
|
|
HTML_ATTR(FORM,METHOD),
|
|
HTML_ATTR(FORM,STYLE),
|
|
HTML_ATTR(FORM,TARGET),
|
|
HTML_ATTR(FORM,TITLE),
|
|
HTML_ATTRIBUTES(FORM)
|
|
};
|
|
|
|
/*
|
|
(
|
|
FRAME
|
|
)
|
|
*/
|
|
|
|
enum _HTML_FRAME_Attributes {
|
|
HTML_ATTR(FRAME,CLASS) = 0,
|
|
HTML_ATTR(FRAME,FRAMEBORDER),
|
|
HTML_ATTR(FRAME,ID),
|
|
HTML_ATTR(FRAME,NAME),
|
|
HTML_ATTR(FRAME,MARGINHEIGHT),
|
|
HTML_ATTR(FRAME,MARGINWIDTH),
|
|
HTML_ATTR(FRAME,NORESIZE),
|
|
HTML_ATTR(FRAME,LONGDESC),
|
|
HTML_ATTR(FRAME,SCROLLING),
|
|
HTML_ATTR(FRAME,SRC),
|
|
HTML_ATTR(FRAME,STYLE),
|
|
HTML_ATTR(FRAME,TARGET),
|
|
HTML_ATTR(FRAME,TITLE),
|
|
HTML_ATTRIBUTES(FRAME)
|
|
};
|
|
|
|
/*
|
|
(
|
|
FRAMESET
|
|
)
|
|
*/
|
|
|
|
enum _HTML_FRAMESET_Attributes {
|
|
HTML_ATTR(FRAMESET,CLASS) = 0,
|
|
HTML_ATTR(FRAMESET,COLS),
|
|
HTML_ATTR(FRAMESET,ID),
|
|
HTML_ATTR(FRAMESET,ROWS),
|
|
HTML_ATTR(FRAMESET,STYLE),
|
|
HTML_ATTR(FRAMESET,TITLE),
|
|
HTML_ATTRIBUTES(FRAMESET)
|
|
};
|
|
|
|
/*
|
|
(
|
|
Generic attributes
|
|
)
|
|
*/
|
|
|
|
enum _HTML_GEN_Attributes {
|
|
HTML_ATTR(GEN,CLASS) = 0,
|
|
HTML_ATTR(GEN,DIR),
|
|
HTML_ATTR(GEN,ID),
|
|
HTML_ATTR(GEN,LANG),
|
|
HTML_ATTR(GEN,STYLE),
|
|
HTML_ATTR(GEN,TITLE),
|
|
HTML_ATTRIBUTES(GEN)
|
|
};
|
|
|
|
/*
|
|
(
|
|
BLOCK
|
|
)
|
|
*/
|
|
|
|
enum _HTML_BLOCK_Attributes {
|
|
HTML_ATTR(BLOCK,ALIGN) = 0,
|
|
HTML_ATTR(BLOCK,CLASS),
|
|
HTML_ATTR(BLOCK,DIR),
|
|
HTML_ATTR(BLOCK,ID),
|
|
HTML_ATTR(BLOCK,LANG),
|
|
HTML_ATTR(BLOCK,STYLE),
|
|
HTML_ATTR(BLOCK,TITLE),
|
|
HTML_ATTRIBUTES(BLOCK)
|
|
};
|
|
|
|
/*
|
|
(
|
|
HEAD
|
|
)
|
|
*/
|
|
|
|
enum _HTML_HEAD_Attributes {
|
|
HTML_ATTR(HEAD,DIR) = 0,
|
|
HTML_ATTR(HEAD,LANG),
|
|
HTML_ATTR(HEAD,PROFILE),
|
|
HTML_ATTRIBUTES(HEAD)
|
|
};
|
|
|
|
/*
|
|
(
|
|
HR
|
|
)
|
|
*/
|
|
|
|
enum _HTML_HR_Attributes {
|
|
HTML_ATTR(HR,ALIGN) = 0,
|
|
HTML_ATTR(HR,CLASS),
|
|
HTML_ATTR(HR,DIR),
|
|
HTML_ATTR(HR,ID),
|
|
HTML_ATTR(HR,LANG),
|
|
HTML_ATTR(HR,NOSHADE),
|
|
HTML_ATTR(HR,SIZE),
|
|
HTML_ATTR(HR,STYLE),
|
|
HTML_ATTR(HR,TITLE),
|
|
HTML_ATTR(HR,WIDTH),
|
|
HTML_ATTRIBUTES(HR)
|
|
};
|
|
|
|
/*
|
|
(
|
|
HTML
|
|
)
|
|
*/
|
|
|
|
enum _HTML_HTML_Attributes {
|
|
HTML_ATTR(HTML,DIR) = 0,
|
|
HTML_ATTR(HTML,LANG),
|
|
HTML_ATTR(HTML,VERSION),
|
|
HTML_ATTRIBUTES(HTML)
|
|
};
|
|
|
|
/*
|
|
(
|
|
IFRAME
|
|
)
|
|
*/
|
|
|
|
enum _HTML_IFRAME_Attributes {
|
|
HTML_ATTR(IFRAME,ALIGN) = 0,
|
|
HTML_ATTR(IFRAME,CLASS),
|
|
HTML_ATTR(IFRAME,FRAMEBORDER),
|
|
HTML_ATTR(IFRAME,HEIGHT),
|
|
HTML_ATTR(IFRAME,ID),
|
|
HTML_ATTR(IFRAME,LONGDESC),
|
|
HTML_ATTR(IFRAME,MARGINHEIGHT),
|
|
HTML_ATTR(IFRAME,MARGINWIDTH),
|
|
HTML_ATTR(IFRAME,NAME),
|
|
HTML_ATTR(IFRAME,SCROLLING),
|
|
HTML_ATTR(IFRAME,SRC),
|
|
HTML_ATTR(IFRAME,STYLE),
|
|
HTML_ATTR(IFRAME,TARGET),
|
|
HTML_ATTR(IFRAME,TITLE),
|
|
HTML_ATTR(IFRAME,WIDTH),
|
|
HTML_ATTRIBUTES(IFRAME)
|
|
};
|
|
|
|
/*
|
|
(
|
|
IMG
|
|
)
|
|
*/
|
|
|
|
enum _HTML_IMG_Attributes {
|
|
HTML_ATTR(IMG,ALIGN) = 0,
|
|
HTML_ATTR(IMG,ALT),
|
|
HTML_ATTR(IMG,BORDER),
|
|
HTML_ATTR(IMG,CLASS),
|
|
HTML_ATTR(IMG,DIR),
|
|
HTML_ATTR(IMG,HEIGHT),
|
|
HTML_ATTR(IMG,HSPACE),
|
|
HTML_ATTR(IMG,ID),
|
|
HTML_ATTR(IMG,ISMAP),
|
|
HTML_ATTR(IMG,LANG),
|
|
HTML_ATTR(IMG,LONGDESC),
|
|
HTML_ATTR(IMG,SRC),
|
|
HTML_ATTR(IMG,STYLE),
|
|
HTML_ATTR(IMG,TITLE),
|
|
HTML_ATTR(IMG,USEMAP),
|
|
HTML_ATTR(IMG,VSPACE),
|
|
HTML_ATTR(IMG,WIDTH),
|
|
HTML_ATTRIBUTES(IMG)
|
|
};
|
|
|
|
/*
|
|
(
|
|
INPUT
|
|
)
|
|
*/
|
|
|
|
enum _HTML_INPUT_Attributes {
|
|
HTML_ATTR(INPUT,ACCEPT) = 0,
|
|
HTML_ATTR(INPUT,ACCESSKEY),
|
|
HTML_ATTR(INPUT,ALIGN),
|
|
HTML_ATTR(INPUT,ALT),
|
|
HTML_ATTR(INPUT,CHECKED),
|
|
HTML_ATTR(INPUT,CLASS),
|
|
HTML_ATTR(INPUT,DIR),
|
|
HTML_ATTR(INPUT,DISABLED),
|
|
HTML_ATTR(INPUT,ID),
|
|
HTML_ATTR(INPUT,LANG),
|
|
HTML_ATTR(INPUT,MAXLENGTH),
|
|
HTML_ATTR(INPUT,NAME),
|
|
HTML_ATTR(INPUT,READONLY),
|
|
HTML_ATTR(INPUT,SIZE),
|
|
HTML_ATTR(INPUT,SRC),
|
|
HTML_ATTR(INPUT,STYLE),
|
|
HTML_ATTR(INPUT,TABINDEX),
|
|
HTML_ATTR(INPUT,TITLE),
|
|
HTML_ATTR(INPUT,TYPE),
|
|
HTML_ATTR(INPUT,USEMAP),
|
|
HTML_ATTR(INPUT,VALUE),
|
|
HTML_ATTRIBUTES(INPUT)
|
|
};
|
|
|
|
/*
|
|
(
|
|
)
|
|
*/
|
|
|
|
enum _HTML_ISINDEX_Attributes {
|
|
HTML_ATTR(ISINDEX,CLASS) = 0,
|
|
HTML_ATTR(ISINDEX,DIR),
|
|
HTML_ATTR(ISINDEX,ID),
|
|
HTML_ATTR(ISINDEX,LANG),
|
|
HTML_ATTR(ISINDEX,PROMPT),
|
|
HTML_ATTR(ISINDEX,STYLE),
|
|
HTML_ATTR(ISINDEX,TITLE),
|
|
HTML_ATTRIBUTES(ISINDEX)
|
|
};
|
|
|
|
/*
|
|
(
|
|
)
|
|
*/
|
|
|
|
enum _HTML_LABEL_Attributes {
|
|
HTML_ATTR(LABEL,ACCESSKEY) = 0,
|
|
HTML_ATTR(LABEL,CLASS),
|
|
HTML_ATTR(LABEL,DIR),
|
|
HTML_ATTR(LABEL,FOR),
|
|
HTML_ATTR(LABEL,ID),
|
|
HTML_ATTR(LABEL,LANG),
|
|
HTML_ATTR(LABEL,STYLE),
|
|
HTML_ATTR(LABEL,TITLE),
|
|
HTML_ATTRIBUTES(LABEL)
|
|
};
|
|
|
|
/*
|
|
(
|
|
)
|
|
*/
|
|
|
|
enum _HTML_LEGEND_Attributes {
|
|
HTML_ATTR(LEGEND,ACCESSKEY) = 0,
|
|
HTML_ATTR(LEGEND,ALIGN),
|
|
HTML_ATTR(LEGEND,CLASS),
|
|
HTML_ATTR(LEGEND,DIR),
|
|
HTML_ATTR(LEGEND,ID),
|
|
HTML_ATTR(LEGEND,LANG),
|
|
HTML_ATTR(LEGEND,STYLE),
|
|
HTML_ATTR(LEGEND,TITLE),
|
|
HTML_ATTRIBUTES(LEGEND)
|
|
};
|
|
|
|
/*
|
|
(
|
|
LI
|
|
)
|
|
*/
|
|
|
|
enum _HTML_LI_Attributes {
|
|
HTML_ATTR(LI,CLASS) = 0,
|
|
HTML_ATTR(LI,COMPACT),
|
|
HTML_ATTR(LI,DIR),
|
|
HTML_ATTR(LI,ID),
|
|
HTML_ATTR(LI,LANG),
|
|
HTML_ATTR(LI,STYLE),
|
|
HTML_ATTR(LI,TITLE),
|
|
HTML_ATTR(LI,TYPE),
|
|
HTML_ATTR(LI,VALUE),
|
|
HTML_ATTRIBUTES(LI)
|
|
};
|
|
|
|
/*
|
|
(
|
|
LINK
|
|
)
|
|
*/
|
|
|
|
enum _HTML_LINK_Attributes {
|
|
HTML_ATTR(LINK,CHARSET) = 0,
|
|
HTML_ATTR(LINK,CLASS),
|
|
HTML_ATTR(LINK,DIR),
|
|
HTML_ATTR(LINK,HREF),
|
|
HTML_ATTR(LINK,HREFLANG),
|
|
HTML_ATTR(LINK,ID),
|
|
HTML_ATTR(LINK,LANG),
|
|
HTML_ATTR(LINK,MEDIA),
|
|
HTML_ATTR(LINK,REL),
|
|
HTML_ATTR(LINK,REV),
|
|
HTML_ATTR(LINK,STYLE),
|
|
HTML_ATTR(LINK,TARGET),
|
|
HTML_ATTR(LINK,TITLE),
|
|
HTML_ATTR(LINK,TYPE),
|
|
HTML_ATTRIBUTES(LINK)
|
|
};
|
|
|
|
/*
|
|
(
|
|
MAP
|
|
)
|
|
*/
|
|
|
|
enum _HTML_MAP_Attributes {
|
|
HTML_ATTR(MAP,CLASS) = 0,
|
|
HTML_ATTR(MAP,DIR),
|
|
HTML_ATTR(MAP,ID),
|
|
HTML_ATTR(MAP,LANG),
|
|
HTML_ATTR(MAP,NAME),
|
|
HTML_ATTR(MAP,STYLE),
|
|
HTML_ATTR(MAP,TITLE),
|
|
HTML_ATTRIBUTES(MAP)
|
|
};
|
|
|
|
/*
|
|
(
|
|
META
|
|
)
|
|
*/
|
|
|
|
enum _HTML_META_Attributes {
|
|
HTML_ATTR(META,CONTENT) = 0,
|
|
HTML_ATTR(META,DIR),
|
|
HTML_ATTR(META,HTTP_EQUIV), /* { "HTTP-EQUIV" ) */
|
|
HTML_ATTR(META,LANG),
|
|
HTML_ATTR(META,NAME),
|
|
HTML_ATTR(META,SCHEME),
|
|
HTML_ATTRIBUTES(META)
|
|
};
|
|
|
|
/*
|
|
(
|
|
NEXTID
|
|
)
|
|
*/
|
|
|
|
#define HTML_NEXTID_ATTRIBUTES 1
|
|
#define HTML_NEXTID_N 0
|
|
|
|
/*
|
|
(
|
|
OBJECT
|
|
)
|
|
*/
|
|
|
|
enum _HTML_OBJECT_Attributes {
|
|
HTML_ATTR(OBJECT,ALIGN) = 0,
|
|
HTML_ATTR(OBJECT,ARCHIVE),
|
|
HTML_ATTR(OBJECT,BORDER),
|
|
HTML_ATTR(OBJECT,CLASS),
|
|
HTML_ATTR(OBJECT,CLASSID),
|
|
HTML_ATTR(OBJECT,CODEBASE),
|
|
HTML_ATTR(OBJECT,CODETYPE),
|
|
HTML_ATTR(OBJECT,DATA),
|
|
HTML_ATTR(OBJECT,DECLARE),
|
|
HTML_ATTR(OBJECT,DIR),
|
|
HTML_ATTR(OBJECT,HEIGHT),
|
|
HTML_ATTR(OBJECT,HSPACE),
|
|
HTML_ATTR(OBJECT,ID),
|
|
HTML_ATTR(OBJECT,LANG),
|
|
HTML_ATTR(OBJECT,NAME),
|
|
HTML_ATTR(OBJECT,STANDBY),
|
|
HTML_ATTR(OBJECT,STYLE),
|
|
HTML_ATTR(OBJECT,TABINDEX),
|
|
HTML_ATTR(OBJECT,TITLE),
|
|
HTML_ATTR(OBJECT,TYPE),
|
|
HTML_ATTR(OBJECT,USEMAP),
|
|
HTML_ATTR(OBJECT,VSPACE),
|
|
HTML_ATTR(OBJECT,WIDTH),
|
|
HTML_ATTRIBUTES(OBJECT)
|
|
};
|
|
|
|
/*
|
|
(
|
|
OL
|
|
)
|
|
*/
|
|
|
|
enum _HTML_OL_Attributes {
|
|
HTML_ATTR(OL,CLASS) = 0,
|
|
HTML_ATTR(OL,COMPACT),
|
|
HTML_ATTR(OL,DIR),
|
|
HTML_ATTR(OL,ID),
|
|
HTML_ATTR(OL,LANG),
|
|
HTML_ATTR(OL,START),
|
|
HTML_ATTR(OL,STYLE),
|
|
HTML_ATTR(OL,TITLE),
|
|
HTML_ATTR(OL,TYPE),
|
|
HTML_ATTRIBUTES(OL)
|
|
};
|
|
|
|
/*
|
|
(
|
|
OPTGROUP
|
|
)
|
|
*/
|
|
|
|
enum _HTML_OPTGROUP_Attributes {
|
|
HTML_ATTR(OPTGROUP,CLASS) = 0,
|
|
HTML_ATTR(OPTGROUP,DISABLED),
|
|
HTML_ATTR(OPTGROUP,DIR),
|
|
HTML_ATTR(OPTGROUP,ID),
|
|
HTML_ATTR(OPTGROUP,LABEL),
|
|
HTML_ATTR(OPTGROUP,LANG),
|
|
HTML_ATTR(OPTGROUP,STYLE),
|
|
HTML_ATTR(OPTGROUP,TITLE),
|
|
HTML_ATTRIBUTES(OPTGROUP)
|
|
};
|
|
|
|
/*
|
|
(
|
|
OPTION
|
|
)
|
|
*/
|
|
|
|
enum _HTML_OPTION_Attributes {
|
|
HTML_ATTR(OPTION,CLASS) = 0,
|
|
HTML_ATTR(OPTION,DISABLED),
|
|
HTML_ATTR(OPTION,DIR),
|
|
HTML_ATTR(OPTION,ID),
|
|
HTML_ATTR(OPTION,LABEL),
|
|
HTML_ATTR(OPTION,LANG),
|
|
HTML_ATTR(OPTION,SELECTED),
|
|
HTML_ATTR(OPTION,STYLE),
|
|
HTML_ATTR(OPTION,TITLE),
|
|
HTML_ATTR(OPTION,VALUE),
|
|
HTML_ATTRIBUTES(OPTION)
|
|
};
|
|
|
|
/*
|
|
(
|
|
PARAM
|
|
)
|
|
*/
|
|
|
|
enum _HTML_PARAM_Attributes {
|
|
HTML_ATTR(PARAM,ID) = 0,
|
|
HTML_ATTR(PARAM,NAME),
|
|
HTML_ATTR(PARAM,TYPE),
|
|
HTML_ATTR(PARAM,VALUE),
|
|
HTML_ATTR(PARAM,VALUETYPE),
|
|
HTML_ATTRIBUTES(PARAM)
|
|
};
|
|
|
|
/*
|
|
(
|
|
PRE
|
|
)
|
|
*/
|
|
|
|
enum _HTML_PRE_Attributes {
|
|
HTML_ATTR(PRE,CLASS) = 0,
|
|
HTML_ATTR(PRE,DIR),
|
|
HTML_ATTR(PRE,ID),
|
|
HTML_ATTR(PRE,LANG),
|
|
HTML_ATTR(PRE,STYLE),
|
|
HTML_ATTR(PRE,TITLE),
|
|
HTML_ATTR(PRE,WIDTH),
|
|
HTML_ATTRIBUTES(PRE)
|
|
};
|
|
|
|
/*
|
|
(
|
|
SCRIPT
|
|
)
|
|
*/
|
|
|
|
enum _HTML_SCRIPT_Attributes {
|
|
HTML_ATTR(SCRIPT,CHARSET) = 0,
|
|
HTML_ATTR(SCRIPT,DEFER),
|
|
HTML_ATTR(SCRIPT,LANGUAGE),
|
|
HTML_ATTR(SCRIPT,SRC),
|
|
HTML_ATTR(SCRIPT,TYPE),
|
|
HTML_ATTRIBUTES(SCRIPT)
|
|
};
|
|
|
|
/*
|
|
(
|
|
SELECT
|
|
)
|
|
*/
|
|
|
|
enum _HTML_SELECT_Attributes {
|
|
HTML_ATTR(SELECT,CLASS) = 0,
|
|
HTML_ATTR(SELECT,DIR),
|
|
HTML_ATTR(SELECT,DISABLED),
|
|
HTML_ATTR(SELECT,ID),
|
|
HTML_ATTR(SELECT,LANG),
|
|
HTML_ATTR(SELECT,MULTIPLE),
|
|
HTML_ATTR(SELECT,NAME),
|
|
HTML_ATTR(SELECT,SIZE),
|
|
HTML_ATTR(SELECT,STYLE),
|
|
HTML_ATTR(SELECT,TABINDEX),
|
|
HTML_ATTR(SELECT,TITLE),
|
|
HTML_ATTRIBUTES(SELECT)
|
|
};
|
|
|
|
/*
|
|
(
|
|
STYLE
|
|
)
|
|
*/
|
|
|
|
enum _HTML_STYLE_Attributes {
|
|
HTML_ATTR(STYLE,DIR) = 0,
|
|
HTML_ATTR(STYLE,LANG),
|
|
HTML_ATTR(STYLE,MEDIA),
|
|
HTML_ATTR(STYLE,TITLE),
|
|
HTML_ATTR(STYLE,TYPE),
|
|
HTML_ATTRIBUTES(STYLE)
|
|
};
|
|
|
|
/*
|
|
(
|
|
TABLE
|
|
)
|
|
*/
|
|
|
|
enum _HTML_TABLE_Attributes {
|
|
HTML_ATTR(TABLE,ALIGN) = 0,
|
|
HTML_ATTR(TABLE,BGCOLOR),
|
|
HTML_ATTR(TABLE,BORDER),
|
|
HTML_ATTR(TABLE,CELLPADDING),
|
|
HTML_ATTR(TABLE,CELLSPACING),
|
|
HTML_ATTR(TABLE,CLASS),
|
|
HTML_ATTR(TABLE,DIR),
|
|
HTML_ATTR(TABLE,FRAME),
|
|
HTML_ATTR(TABLE,ID),
|
|
HTML_ATTR(TABLE,LANG),
|
|
HTML_ATTR(TABLE,RULES),
|
|
HTML_ATTR(TABLE,SUMMARY),
|
|
HTML_ATTR(TABLE,STYLE),
|
|
HTML_ATTR(TABLE,TITLE),
|
|
HTML_ATTR(TABLE,WIDTH),
|
|
HTML_ATTRIBUTES(TABLE)
|
|
};
|
|
|
|
/*
|
|
(
|
|
TABLE Elements
|
|
)
|
|
*/
|
|
|
|
enum _HTML_TELE_Attributes {
|
|
HTML_ATTR(TELE,ALIGN) = 0,
|
|
HTML_ATTR(TELE,CHAR),
|
|
HTML_ATTR(TELE,CHAROFF),
|
|
HTML_ATTR(TELE,CLASS),
|
|
HTML_ATTR(TELE,DIR),
|
|
HTML_ATTR(TELE,ID),
|
|
HTML_ATTR(TELE,LANG),
|
|
HTML_ATTR(TELE,STYLE),
|
|
HTML_ATTR(TELE,TITLE),
|
|
HTML_ATTR(TELE,VALIGN),
|
|
HTML_ATTRIBUTES(TELE)
|
|
};
|
|
|
|
/*
|
|
(
|
|
TD
|
|
)
|
|
*/
|
|
|
|
enum _HTML_TD_Attributes {
|
|
HTML_ATTR(TD,ABBR) = 0,
|
|
HTML_ATTR(TD,ALIGN),
|
|
HTML_ATTR(TD,AXIS),
|
|
HTML_ATTR(TD,BGCOLOR),
|
|
HTML_ATTR(TD,CHAR),
|
|
HTML_ATTR(TD,CHAROFF),
|
|
HTML_ATTR(TD,CLASS),
|
|
HTML_ATTR(TD,COLSPAN),
|
|
HTML_ATTR(TD,DIR),
|
|
HTML_ATTR(TD,ID),
|
|
HTML_ATTR(TD,HEADERS),
|
|
HTML_ATTR(TD,HEIGHT),
|
|
HTML_ATTR(TD,LANG),
|
|
HTML_ATTR(TD,NOWRAP),
|
|
HTML_ATTR(TD,ROWSPAN),
|
|
HTML_ATTR(TD,SCOPE),
|
|
HTML_ATTR(TD,STYLE),
|
|
HTML_ATTR(TD,TITLE),
|
|
HTML_ATTR(TD,VALIGN),
|
|
HTML_ATTR(TD,WIDTH),
|
|
HTML_ATTRIBUTES(TD)
|
|
};
|
|
|
|
/*
|
|
(
|
|
TEXTAREA
|
|
)
|
|
*/
|
|
|
|
enum _HTML_TEXTAREA_Attributes {
|
|
HTML_ATTR(TEXTAREA,CLASS) = 0,
|
|
HTML_ATTR(TEXTAREA,COLS),
|
|
HTML_ATTR(TEXTAREA,DIR),
|
|
HTML_ATTR(TEXTAREA,DISABLED),
|
|
HTML_ATTR(TEXTAREA,ID),
|
|
HTML_ATTR(TEXTAREA,LANG),
|
|
HTML_ATTR(TEXTAREA,NAME),
|
|
HTML_ATTR(TEXTAREA,READONLY),
|
|
HTML_ATTR(TEXTAREA,ROWS),
|
|
HTML_ATTR(TEXTAREA,STYLE),
|
|
HTML_ATTR(TEXTAREA,TABINDEX),
|
|
HTML_ATTR(TEXTAREA,TITLE),
|
|
HTML_ATTRIBUTES(TEXTAREA)
|
|
};
|
|
|
|
/*
|
|
(
|
|
TITLE
|
|
)
|
|
*/
|
|
|
|
enum _HTML_TITLE_Attributes {
|
|
HTML_ATTR(TITLE,DIR) = 0,
|
|
HTML_ATTR(TITLE,LANG),
|
|
HTML_ATTRIBUTES(TITLE)
|
|
};
|
|
|
|
/*
|
|
(
|
|
UL
|
|
)
|
|
*/
|
|
|
|
enum _HTML_UL_Attributes {
|
|
HTML_ATTR(UL,CLASS) = 0,
|
|
HTML_ATTR(UL,COMPACT),
|
|
HTML_ATTR(UL,DIR),
|
|
HTML_ATTR(UL,ID),
|
|
HTML_ATTR(UL,LANG),
|
|
HTML_ATTR(UL,STYLE),
|
|
HTML_ATTR(UL,TITLE),
|
|
HTML_ATTR(UL,TYPE),
|
|
HTML_ATTRIBUTES(UL)
|
|
};
|
|
|
|
|
|
/*
|
|
** ELEMENTS
|
|
** Must match definitions in HTMLPDTD.html!
|
|
** Must be in alphabetical order.
|
|
**
|
|
** Name, Attributes, content
|
|
*/
|
|
|
|
//
|
|
// SGML.h
|
|
//
|
|
#define MAX_ATTRIBUTES 32
|
|
|
|
typedef struct _HTAttr {
|
|
char * name;
|
|
} HTAttr;
|
|
|
|
// striped struct
|
|
typedef struct _HTTag {
|
|
std::string name;
|
|
HTAttr * attributes;
|
|
int number_of_attributes;
|
|
} HTTag;
|
|
|
|
// entities are removed
|
|
typedef struct {
|
|
HTTag * tags;
|
|
int number_of_tags;
|
|
} SGML_dtd;
|
|
|
|
SGML_dtd * HTML_dtd (void);
|
|
|
|
#endif
|
|
|