# XHTML1.0(SE) Frameset

#======= ELEMENTS =======
$emptyTags = '';
$pairTags = 'A|ABBR|ACRONYM|ADDRESS|APPLET|AREA|B|BASE|BASEFONT|BDO|BIG'.
            '|BLOCKQUOTE|BODY|BR|BUTTON|CAPTION|CENTER|CITE|CODE|COL|COLGROUP'.
            '|DD|DEL|DFN|DIR|DIV|DL|DT|EM|FIELDSET|FONT|FORM|FRAME|FRAMESET'.
            '|H1|H2|H3|H4|H5|H6|HEAD|HR|HTML|I|IFRAME|IMG|INPUT|INS|ISINDEX'.
            '|KBD|LABEL|LEGEND|LI|LINK|MAP|MENU|META|NOFRAMES|NOSCRIPT|OBJECT'.
            '|OL|OPTGROUP|OPTION|P|PARAM|PRE|Q|S|SAMP|SCRIPT|SELECT|SMALL'.
            '|SPAN|STRIKE|STRONG|STYLE|SUB|SUP|TABLE|TBODY|TD|TEXTAREA|TFOOT'.
            '|TH|THEAD|TITLE|TR|TT|U|UL|VAR';
$deprecatedTags = 'APPLET|BASEFONT|CENTER|DIR|FONT|ISINDEX|MENU|S|STRIKE|U';
$omitStartTags = '';
$omitEndTags = '';
#$maybeEmpty = 'A|ABBR|ACRONYM|ADDRESS|APPLET|AREA|B|BASE|BASEFONT|BDO|BIG'.
#              '|BLOCKQUOTE|BODY|BR|BUTTON|CAPTION|CENTER|CITE|CODE|COL'.
#              '|COLGROUP|DD|DEL|DFN|DIV|DT|EM|FIELDSET|FONT|FORM|FRAME'.
#              '|FRAMESET|H1|H2|H3|H4|H5|H6|HR|I|IFRAME|IMG|INPUT|INS|ISINDEX'.
#              '|KBD|LABEL|LEGEND|LI|LINK|META|NOSCRIPT|OBJECT|OPTION|P|PARAM'.
#              '|PRE|Q|S|SAMP|SCRIPT|SMALL|SPAN|STRIKE|STRONG|STYLE|SUB|SUP|TD'.
#              '|TEXTAREA|TH|TITLE|TT|U|VAR';
$maybeEmpty = 'APPLET|COLGROUP|OBJECT|PRE|SCRIPT|STYLE|TEXTAREA|TD|TH';
%requiredTags = (
  'HEAD'     => 'TITLE',
  'HTML'     => 'HEAD|FRAMESET',
  'NOFRAMES' => 'BODY',
  'TABLE'    => '#002',
);
%onceonlyTags = (
  'HEAD'     => 'TITLE|BASE',
  'HTML'     => 'HEAD|FRAMESET',
  'NOFRAMES' => 'BODY',
  'TABLE'    => 'CAPTION|THEAD|TFOOT',
);
$sequencialTags = 'HTML|TABLE';
%tagsElements = (
  '#000'       => 'SCRIPT|DEL|INS|NOSCRIPT|FORM|TABLE|FIELDSET|ISINDEX|CENTER'.
                  '|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL|UL|DIV|H6|H5|H4'.
                  '|H3|H2|H1|P',
  '#001'       => 'COLGROUP|COL',
  '#002'       => 'TR|TBODY',
  'A'          => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|#PCDATA',
  'ABBR'       => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'ACRONYM'    => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'ADDRESS'    => 'P|SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP'.
                  '|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'APPLET'     => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|PARAM|#PCDATA',
  'B'          => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'BDO'        => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'BIG'        => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'BLOCKQUOTE' => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'BODY'       => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'BUTTON'     => 'SCRIPT|DEL|INS|NOSCRIPT|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD'.
                  '|SAMP|Q|CODE|DFN|STRONG|EM|BASEFONT|FONT|SMALL|BIG|STRIKE'.
                  '|S|U|B|I|TT|MAP|IMG|APPLET|OBJECT|BDO|SPAN|BR|TABLE|CENTER'.
                  '|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL|UL|DIV|H6|H5|H4'.
                  '|H3|H2|H1|P|#PCDATA',
  'CAPTION'    => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'CENTER'     => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'CITE'       => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'CODE'       => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'COLGROUP'   => 'COL',
  'DD'         => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'DEL'        => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'DFN'        => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'DIR'        => 'LI',
  'DIV'        => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'DL'         => 'DD|DT',
  'DT'         => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'EM'         => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'FIELDSET'   => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|LEGEND|#PCDATA',
  'FONT'       => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'FORM'       => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|TABLE|FIELDSET|ISINDEX'.
                  '|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL|UL|DIV|H6'.
                  '|H5|H4|H3|H2|H1|P|#PCDATA',
  'FRAMESET'   => 'NOFRAMES|FRAME|FRAMESET',
  'H1'         => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'H2'         => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'H3'         => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'H4'         => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'H5'         => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'H6'         => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'HEAD'       => 'TITLE|BASE|SCRIPT|STYLE|META|LINK|OBJECT|ISINDEX',
  'HTML'       => 'HEAD|FRAMESET',
  'I'          => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'IFRAME'     => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'INS'        => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'KBD'        => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'LABEL'      => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'LEGEND'     => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'LI'         => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'MAP'        => 'AREA|#000',
  'MENU'       => 'LI',
  'NOFRAMES'   => 'BODY',
  'NOSCRIPT'   => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'OBJECT'     => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|PARAM|#PCDATA',
  'OL'         => 'LI',
  'OPTGROUP'   => 'OPTION',
  'OPTION'     => '#PCDATA',
  'P'          => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'PRE'        => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|ACRONYM'.
                  '|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM|STRIKE|S|U|B'.
                  '|I|TT|BDO|SPAN|BR|A|#PCDATA',
  'Q'          => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'S'          => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'SAMP'       => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'SCRIPT'     => '#PCDATA',
  'SELECT'     => 'OPTION|OPTGROUP',
  'SMALL'      => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'SPAN'       => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'STRIKE'     => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'STRONG'     => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'STYLE'      => '#PCDATA',
  'SUB'        => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'SUP'        => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'TABLE'      => 'CAPTION|#001|THEAD|TFOOT|#002',
  'TBODY'      => 'TR',
  'TD'         => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'TEXTAREA'   => '#PCDATA',
  'TFOOT'      => 'TR',
  'TH'         => 'SCRIPT|DEL|INS|NOSCRIPT|BUTTON|LABEL|TEXTAREA|SELECT|INPUT'.
                  '|SUP|SUB|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG'.
                  '|EM|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP'.
                  '|IMG|APPLET|OBJECT|BDO|SPAN|BR|A|FORM|TABLE|FIELDSET'.
                  '|ISINDEX|CENTER|ADDRESS|BLOCKQUOTE|HR|PRE|DIR|MENU|DL|OL'.
                  '|UL|DIV|H6|H5|H4|H3|H2|H1|P|#PCDATA',
  'THEAD'      => 'TR',
  'TITLE'      => '#PCDATA',
  'TR'         => 'TD|TH',
  'TT'         => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'U'          => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
  'UL'         => 'LI',
  'VAR'        => 'SCRIPT|DEL|INS|BUTTON|LABEL|TEXTAREA|SELECT|INPUT|SUP|SUB'.
                  '|ACRONYM|ABBR|CITE|VAR|KBD|SAMP|Q|CODE|DFN|STRONG|EM'.
                  '|BASEFONT|FONT|SMALL|BIG|STRIKE|S|U|B|I|TT|IFRAME|MAP|IMG'.
                  '|APPLET|OBJECT|BDO|SPAN|BR|A|#PCDATA',
);
%excludedElems = (
  'A'      => 'A',
  'PRE'    => 'IMG|OBJECT|BIG|SMALL|SUB|SUP',
  'BUTTON' => 'INPUT|SELECT|TEXTAREA|LABEL|BUTTON|FORM|ISINDEX|FIELDSET',
  'FORM'   => 'FORM',
  'LABEL'  => 'LABEL',
);
%includedElems = (
  'HEAD' => 'SCRIPT|STYLE|META|LINK|OBJECT|ISINDEX',
);
%deprecatedElems = (
# 'BLOCKQUOTE' => '#PCDATA|A|ABBR|ACRONYM|B|BDO|BIG|BR|BUTTON|CITE|CODE|DFN'.
#                 '|EM|I|IMG|INPUT|KBD|LABEL|MAP|OBJECT|Q|SAMP|SELECT|SMALL'.
#                 '|SPAN|STRONG|SUB|SUP|TEXTAREA|TT|VAR',
# 'BODY'       => '#PCDATA|A|ABBR|ACRONYM|B|BDO|BIG|BR|BUTTON|CITE|CODE|DFN'.
#                 '|EM|I|IMG|INPUT|KBD|LABEL|MAP|OBJECT|Q|SAMP|SELECT|SMALL'.
#                 '|SPAN|STRONG|SUB|SUP|TEXTAREA|TT|VAR',
# 'FORM'       => '#PCDATA|A|ABBR|ACRONYM|B|BDO|BIG|BR|BUTTON|CITE|CODE|DFN'.
#                 '|EM|I|IMG|INPUT|KBD|LABEL|MAP|OBJECT|Q|SAMP|SELECT|SMALL'.
#                 '|SPAN|STRONG|SUB|SUP|TEXTAREA|TT|VAR',
# 'NOSCRIPT'   => '#PCDATA|A|ABBR|ACRONYM|B|BDO|BIG|BR|BUTTON|CITE|CODE|DFN'.
#                 '|EM|I|IMG|INPUT|KBD|LABEL|MAP|OBJECT|Q|SAMP|SELECT|SMALL'.
#                 '|SPAN|STRONG|SUB|SUP|TEXTAREA|TT|VAR',
);
#======= ATTRIBUTES =======
%tagsAttributes = (
  'A' => {
    'ACCESSKEY'   => '%Character',
    'CHARSET'     => '%Charset',
    'CLASS'       => '%Class',
    'COORDS'      => '%Coords',
    'DIR'         => 'ltr|rtl',
    'HREF'        => '%URI',
    'HREFLANG'    => '%LanguageCode',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'NAME'        => 'NMTOKEN',
    'ONBLUR'      => '%Script',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONFOCUS'     => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'REL'         => '%LinkTypes',
    'REV'         => '%LinkTypes',
    'SHAPE'       => 'rect|circle|poly|default',
    'STYLE'       => '%StyleSheet',
    'TABINDEX'    => '%Number',
    'TARGET'      => '%FrameTarget',
    'TITLE'       => '%Text',
    'TYPE'        => '%ContentType',
    'XML:LANG'    => '%LanguageCode',
  },
  'ABBR' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'ACRONYM' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'ADDRESS' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'APPLET' => {
    'ALIGN'    => 'top|middle|bottom|left|right',
    'ALT'      => '%Text',
    'ARCHIVE'  => '%UriList',
    'CLASS'    => '%Class',
    'CODE'     => 'CDATA',
    'CODEBASE' => '%URI',
    'HEIGHT'   => '%Length',
    'HSPACE'   => '%Pixels',
    'ID'       => 'ID',
    'NAME'     => 'NMTOKEN',
    'OBJECT'   => 'CDATA',
    'STYLE'    => '%StyleSheet',
    'TITLE'    => '%Text',
    'VSPACE'   => '%Pixels',
    'WIDTH'    => '%Length',
  },
  'AREA' => {
    'ACCESSKEY'   => '%Character',
    'ALT'         => '%Text',
    'CLASS'       => '%Class',
    'COORDS'      => '%Coords',
    'DIR'         => 'ltr|rtl',
    'HREF'        => '%URI',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'NOHREF'      => 'nohref',
    'ONBLUR'      => '%Script',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONFOCUS'     => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'SHAPE'       => 'rect|circle|poly|default',
    'STYLE'       => '%StyleSheet',
    'TABINDEX'    => '%Number',
    'TARGET'      => '%FrameTarget',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'B' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'BASE' => {
    'HREF'   => '%URI',
    'ID'     => 'ID',
    'TARGET' => '%FrameTarget',
  },
  'BASEFONT' => {
    'COLOR' => '%Color',
    'FACE'  => 'CDATA',
    'ID'    => 'ID',
    'SIZE'  => 'CDATA',
  },
  'BDO' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'BIG' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'BLOCKQUOTE' => {
    'CITE'        => '%URI',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'BODY' => {
    'ALINK'       => '%Color',
    'BACKGROUND'  => '%URI',
    'BGCOLOR'     => '%Color',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'LINK'        => '%Color',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONLOAD'      => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'ONUNLOAD'    => '%Script',
    'STYLE'       => '%StyleSheet',
    'TEXT'        => '%Color',
    'TITLE'       => '%Text',
    'VLINK'       => '%Color',
    'XML:LANG'    => '%LanguageCode',
  },
  'BR' => {
    'CLASS' => '%Class',
    'CLEAR' => 'left|all|right|none',
    'ID'    => 'ID',
    'STYLE' => '%StyleSheet',
    'TITLE' => '%Text',
  },
  'BUTTON' => {
    'ACCESSKEY'   => '%Character',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'DISABLED'    => 'disabled',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'NAME'        => '%Name',
    'ONBLUR'      => '%Script',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONFOCUS'     => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TABINDEX'    => '%Number',
    'TITLE'       => '%Text',
    'TYPE'        => 'button|submit|reset',
    'VALUE'       => 'CDATA',
    'XML:LANG'    => '%LanguageCode',
  },
  'CAPTION' => {
    'ALIGN'       => 'top|bottom|left|right',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'CENTER' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'CITE' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'CODE' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'COL' => {
    'ALIGN'       => 'left|center|right|justify|char',
    'CHAR'        => '%Character',
    'CHAROFF'     => '%Length',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'SPAN'        => '%Number.plus',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'VALIGN'      => 'top|middle|bottom|baseline',
    'WIDTH'       => '%MultiLength',
    'XML:LANG'    => '%LanguageCode',
  },
  'COLGROUP' => {
    'ALIGN'       => 'left|center|right|justify|char',
    'CHAR'        => '%Character',
    'CHAROFF'     => '%Length',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'SPAN'        => '%Number.plus',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'VALIGN'      => 'top|middle|bottom|baseline',
    'WIDTH'       => '%MultiLength',
    'XML:LANG'    => '%LanguageCode',
  },
  'DD' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'DEL' => {
    'CITE'        => '%URI',
    'CLASS'       => '%Class',
    'DATETIME'    => '%Datetime',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'DFN' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'DIR' => {
    'CLASS'       => '%Class',
    'COMPACT'     => 'compact',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'DIV' => {
    'ALIGN'       => 'left|center|right|justify',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'DL' => {
    'CLASS'       => '%Class',
    'COMPACT'     => 'compact',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'DT' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'EM' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'FIELDSET' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'FONT' => {
    'CLASS'    => '%Class',
    'COLOR'    => '%Color',
    'DIR'      => 'ltr|rtl',
    'FACE'     => 'CDATA',
    'ID'       => 'ID',
    'LANG'     => '%LanguageCode',
    'SIZE'     => 'CDATA',
    'STYLE'    => '%StyleSheet',
    'TITLE'    => '%Text',
    'XML:LANG' => '%LanguageCode',
  },
  'FORM' => {
    'ACCEPT'         => '%ContentTypes',
    'ACCEPT-CHARSET' => '%Charsets',
    'ACTION'         => '%URI',
    'CLASS'          => '%Class',
    'DIR'            => 'ltr|rtl',
    'ENCTYPE'        => '%ContentType',
    'ID'             => 'ID',
    'LANG'           => '%LanguageCode',
    'METHOD'         => 'get|post',
    'NAME'           => 'NMTOKEN',
    'ONCLICK'        => '%Script',
    'ONDBLCLICK'     => '%Script',
    'ONKEYDOWN'      => '%Script',
    'ONKEYPRESS'     => '%Script',
    'ONKEYUP'        => '%Script',
    'ONMOUSEDOWN'    => '%Script',
    'ONMOUSEMOVE'    => '%Script',
    'ONMOUSEOUT'     => '%Script',
    'ONMOUSEOVER'    => '%Script',
    'ONMOUSEUP'      => '%Script',
    'ONRESET'        => '%Script',
    'ONSUBMIT'       => '%Script',
    'STYLE'          => '%StyleSheet',
    'TARGET'         => '%FrameTarget',
    'TITLE'          => '%Text',
    'XML:LANG'       => '%LanguageCode',
  },
  'FRAME' => {
    'CLASS'        => '%Class',
    'FRAMEBORDER'  => '1|0',
    'ID'           => 'ID',
    'LONGDESC'     => '%URI',
    'MARGINHEIGHT' => '%Pixels',
    'MARGINWIDTH'  => '%Pixels',
    'NAME'         => 'NMTOKEN',
    'NORESIZE'     => 'noresize',
    'SCROLLING'    => 'yes|no|auto',
    'SRC'          => '%URI',
    'STYLE'        => '%StyleSheet',
    'TITLE'        => '%Text',
  },
  'FRAMESET' => {
    'CLASS'    => '%Class',
    'COLS'     => '%MultiLengths',
    'ID'       => 'ID',
    'ONLOAD'   => '%Script',
    'ONUNLOAD' => '%Script',
    'ROWS'     => '%MultiLengths',
    'STYLE'    => '%StyleSheet',
    'TITLE'    => '%Text',
  },
  'H1' => {
    'ALIGN'       => 'left|center|right|justify',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'H2' => {
    'ALIGN'       => 'left|center|right|justify',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'H3' => {
    'ALIGN'       => 'left|center|right|justify',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'H4' => {
    'ALIGN'       => 'left|center|right|justify',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'H5' => {
    'ALIGN'       => 'left|center|right|justify',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'H6' => {
    'ALIGN'       => 'left|center|right|justify',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'HEAD' => {
    'DIR'      => 'ltr|rtl',
    'ID'       => 'ID',
    'LANG'     => '%LanguageCode',
    'PROFILE'  => '%UriList',
    'XML:LANG' => '%LanguageCode',
  },
  'HR' => {
    'ALIGN'       => 'left|center|right',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'NOSHADE'     => 'noshade',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'SIZE'        => '%Pixels',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'WIDTH'       => '%Length',
    'XML:LANG'    => '%LanguageCode',
  },
  'HTML' => {
    'DIR'      => 'ltr|rtl',
    'ID'       => 'ID',
    'LANG'     => '%LanguageCode',
    'XML:LANG' => '%LanguageCode',
    'XMLNS'    => '%URI=http://www.w3.org/1999/xhtml',
  },
  'I' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'IFRAME' => {
    'ALIGN'        => 'top|middle|bottom|left|right',
    'CLASS'        => '%Class',
    'FRAMEBORDER'  => '1|0',
    'HEIGHT'       => '%Length',
    'ID'           => 'ID',
    'LONGDESC'     => '%URI',
    'MARGINHEIGHT' => '%Pixels',
    'MARGINWIDTH'  => '%Pixels',
    'NAME'         => 'NMTOKEN',
    'SCROLLING'    => 'yes|no|auto',
    'SRC'          => '%URI',
    'STYLE'        => '%StyleSheet',
    'TITLE'        => '%Text',
    'WIDTH'        => '%Length',
  },
  'IMG' => {
    'ALIGN'       => 'top|middle|bottom|left|right',
    'ALT'         => '%Text',
    'BORDER'      => '%Pixels',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'HEIGHT'      => '%Length',
    'HSPACE'      => '%Pixels',
    'ID'          => 'ID',
    'ISMAP'       => 'ismap',
    'LANG'        => '%LanguageCode',
    'LONGDESC'    => '%URI',
    'NAME'        => 'NMTOKEN',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'SRC'         => '%URI',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'USEMAP'      => '%URI',
    'VSPACE'      => '%Pixels',
    'WIDTH'       => '%Length',
    'XML:LANG'    => '%LanguageCode',
  },
  'INPUT' => {
    'ACCEPT'      => '%ContentTypes',
    'ACCESSKEY'   => '%Character',
    'ALIGN'       => 'top|middle|bottom|left|right',
    'ALT'         => 'CDATA',
    'CHECKED'     => 'checked',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'DISABLED'    => 'disabled',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'MAXLENGTH'   => '%Number',
    'NAME'        => '%Name',
    'ONBLUR'      => '%Script',
    'ONCHANGE'    => '%Script',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONFOCUS'     => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'ONSELECT'    => '%Script',
    'READONLY'    => 'readonly',
    'SIZE'        => 'CDATA',
    'SRC'         => '%URI',
    'STYLE'       => '%StyleSheet',
    'TABINDEX'    => '%Number',
    'TITLE'       => '%Text',
    'TYPE'        => 'text|password|checkbox|radio|submit|reset|file|hidden'.
                     '|image|button',
    'USEMAP'      => '%URI',
    'VALUE'       => 'CDATA',
    'XML:LANG'    => '%LanguageCode',
  },
  'INS' => {
    'CITE'        => '%URI',
    'CLASS'       => '%Class',
    'DATETIME'    => '%Datetime',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'ISINDEX' => {
    'CLASS'    => '%Class',
    'DIR'      => 'ltr|rtl',
    'ID'       => 'ID',
    'LANG'     => '%LanguageCode',
    'PROMPT'   => '%Text',
    'STYLE'    => '%StyleSheet',
    'TITLE'    => '%Text',
    'XML:LANG' => '%LanguageCode',
  },
  'KBD' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'LABEL' => {
    'ACCESSKEY'   => '%Character',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'FOR'         => 'IDREF',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONBLUR'      => '%Script',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONFOCUS'     => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'LEGEND' => {
    'ACCESSKEY'   => '%Character',
    'ALIGN'       => 'top|bottom|left|right',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'LI' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'TYPE'        => '%LIStyle',
    'VALUE'       => '%Number',
    'XML:LANG'    => '%LanguageCode',
  },
  'LINK' => {
    'CHARSET'     => '%Charset',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'HREF'        => '%URI',
    'HREFLANG'    => '%LanguageCode',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'MEDIA'       => '%MediaDesc',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'REL'         => '%LinkTypes',
    'REV'         => '%LinkTypes',
    'STYLE'       => '%StyleSheet',
    'TARGET'      => '%FrameTarget',
    'TITLE'       => '%Text',
    'TYPE'        => '%ContentType',
    'XML:LANG'    => '%LanguageCode',
  },
  'MAP' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'NAME'        => 'NMTOKEN',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'MENU' => {
    'CLASS'       => '%Class',
    'COMPACT'     => 'compact',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'META' => {
    'CONTENT'    => 'CDATA',
    'DIR'        => 'ltr|rtl',
    'HTTP-EQUIV' => 'CDATA',
    'ID'         => 'ID',
    'LANG'       => '%LanguageCode',
    'NAME'       => '%Name',
    'SCHEME'     => 'CDATA',
    'XML:LANG'   => '%LanguageCode',
  },
  'NOFRAMES' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'NOSCRIPT' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'OBJECT' => {
    'ALIGN'       => 'top|middle|bottom|left|right',
    'ARCHIVE'     => '%UriList',
    'BORDER'      => '%Pixels',
    'CLASS'       => '%Class',
    'CLASSID'     => '%URI',
    'CODEBASE'    => '%URI',
    'CODETYPE'    => '%ContentType',
    'DATA'        => '%URI',
    'DECLARE'     => 'declare',
    'DIR'         => 'ltr|rtl',
    'HEIGHT'      => '%Length',
    'HSPACE'      => '%Pixels',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'NAME'        => 'NMTOKEN',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STANDBY'     => '%Text',
    'STYLE'       => '%StyleSheet',
    'TABINDEX'    => '%Number',
    'TITLE'       => '%Text',
    'TYPE'        => '%ContentType',
    'USEMAP'      => '%URI',
    'VSPACE'      => '%Pixels',
    'WIDTH'       => '%Length',
    'XML:LANG'    => '%LanguageCode',
  },
  'OL' => {
    'CLASS'       => '%Class',
    'COMPACT'     => 'compact',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'START'       => '%Number',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'TYPE'        => '%OLStyle',
    'XML:LANG'    => '%LanguageCode',
  },
  'OPTGROUP' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'DISABLED'    => 'disabled',
    'ID'          => 'ID',
    'LABEL'       => '%Text',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'OPTION' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'DISABLED'    => 'disabled',
    'ID'          => 'ID',
    'LABEL'       => '%Text',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'SELECTED'    => 'selected',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'VALUE'       => 'CDATA',
    'XML:LANG'    => '%LanguageCode',
  },
  'P' => {
    'ALIGN'       => 'left|center|right|justify',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'PARAM' => {
    'ID'        => 'ID',
    'NAME'      => '%Name',
    'TYPE'      => '%ContentType',
    'VALUE'     => 'CDATA',
    'VALUETYPE' => 'data|ref|object',
  },
  'PRE' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'WIDTH'       => '%Number',
    'XML:LANG'    => '%LanguageCode',
    'XML:SPACE'   => 'preserve=preserve',
  },
  'Q' => {
    'CITE'        => '%URI',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'S' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'SAMP' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'SCRIPT' => {
    'CHARSET'   => '%Charset',
    'DEFER'     => 'defer',
    'ID'        => 'ID',
    'LANGUAGE'  => 'CDATA',
    'SRC'       => '%URI',
    'TYPE'      => '%ContentType',
    'XML:SPACE' => 'preserve=preserve',
  },
  'SELECT' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'DISABLED'    => 'disabled',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'MULTIPLE'    => 'multiple',
    'NAME'        => '%Name',
    'ONBLUR'      => '%Script',
    'ONCHANGE'    => '%Script',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONFOCUS'     => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'SIZE'        => '%Number',
    'STYLE'       => '%StyleSheet',
    'TABINDEX'    => '%Number',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'SMALL' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'SPAN' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'STRIKE' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'STRONG' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'STYLE' => {
    'DIR'       => 'ltr|rtl',
    'ID'        => 'ID',
    'LANG'      => '%LanguageCode',
    'MEDIA'     => '%MediaDesc',
    'TITLE'     => '%Text',
    'TYPE'      => '%ContentType',
    'XML:LANG'  => '%LanguageCode',
    'XML:SPACE' => 'preserve=preserve',
  },
  'SUB' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'SUP' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'TABLE' => {
    'ALIGN'       => 'left|center|right',
    'BGCOLOR'     => '%Color',
    'BORDER'      => '%Pixels',
    'CELLPADDING' => '%Length',
    'CELLSPACING' => '%Length',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'FRAME'       => 'void|above|below|hsides|lhs|rhs|vsides|box|border',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'RULES'       => 'none|groups|rows|cols|all',
    'STYLE'       => '%StyleSheet',
    'SUMMARY'     => '%Text',
    'TITLE'       => '%Text',
    'WIDTH'       => '%Length',
    'XML:LANG'    => '%LanguageCode',
  },
  'TBODY' => {
    'ALIGN'       => 'left|center|right|justify|char',
    'CHAR'        => '%Character',
    'CHAROFF'     => '%Length',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'VALIGN'      => 'top|middle|bottom|baseline',
    'XML:LANG'    => '%LanguageCode',
  },
  'TD' => {
    'ABBR'        => '%Text',
    'ALIGN'       => 'left|center|right|justify|char',
    'AXIS'        => 'CDATA',
    'BGCOLOR'     => '%Color',
    'CHAR'        => '%Character',
    'CHAROFF'     => '%Length',
    'CLASS'       => '%Class',
    'COLSPAN'     => '%Number',
    'DIR'         => 'ltr|rtl',
    'HEADERS'     => 'IDREFS',
    'HEIGHT'      => '%Pixels',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'NOWRAP'      => 'nowrap',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'ROWSPAN'     => '%Number',
    'SCOPE'       => 'row|col|rowgroup|colgroup',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'VALIGN'      => 'top|middle|bottom|baseline',
    'WIDTH'       => '%Pixels',
    'XML:LANG'    => '%LanguageCode',
  },
  'TEXTAREA' => {
    'ACCESSKEY'   => '%Character',
    'CLASS'       => '%Class',
    'COLS'        => '%Number',
    'DIR'         => 'ltr|rtl',
    'DISABLED'    => 'disabled',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'NAME'        => '%Name',
    'ONBLUR'      => '%Script',
    'ONCHANGE'    => '%Script',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONFOCUS'     => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'ONSELECT'    => '%Script',
    'READONLY'    => 'readonly',
    'ROWS'        => '%Number',
    'STYLE'       => '%StyleSheet',
    'TABINDEX'    => '%Number',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'TFOOT' => {
    'ALIGN'       => 'left|center|right|justify|char',
    'CHAR'        => '%Character',
    'CHAROFF'     => '%Length',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'VALIGN'      => 'top|middle|bottom|baseline',
    'XML:LANG'    => '%LanguageCode',
  },
  'TH' => {
    'ABBR'        => '%Text',
    'ALIGN'       => 'left|center|right|justify|char',
    'AXIS'        => 'CDATA',
    'BGCOLOR'     => '%Color',
    'CHAR'        => '%Character',
    'CHAROFF'     => '%Length',
    'CLASS'       => '%Class',
    'COLSPAN'     => '%Number',
    'DIR'         => 'ltr|rtl',
    'HEADERS'     => 'IDREFS',
    'HEIGHT'      => '%Pixels',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'NOWRAP'      => 'nowrap',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'ROWSPAN'     => '%Number',
    'SCOPE'       => 'row|col|rowgroup|colgroup',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'VALIGN'      => 'top|middle|bottom|baseline',
    'WIDTH'       => '%Pixels',
    'XML:LANG'    => '%LanguageCode',
  },
  'THEAD' => {
    'ALIGN'       => 'left|center|right|justify|char',
    'CHAR'        => '%Character',
    'CHAROFF'     => '%Length',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'VALIGN'      => 'top|middle|bottom|baseline',
    'XML:LANG'    => '%LanguageCode',
  },
  'TITLE' => {
    'DIR'      => 'ltr|rtl',
    'ID'       => 'ID',
    'LANG'     => '%LanguageCode',
    'XML:LANG' => '%LanguageCode',
  },
  'TR' => {
    'ALIGN'       => 'left|center|right|justify|char',
    'BGCOLOR'     => '%Color',
    'CHAR'        => '%Character',
    'CHAROFF'     => '%Length',
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'VALIGN'      => 'top|middle|bottom|baseline',
    'XML:LANG'    => '%LanguageCode',
  },
  'TT' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'U' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
  'UL' => {
    'CLASS'       => '%Class',
    'COMPACT'     => 'compact',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'TYPE'        => 'disc|square|circle',
    'XML:LANG'    => '%LanguageCode',
  },
  'VAR' => {
    'CLASS'       => '%Class',
    'DIR'         => 'ltr|rtl',
    'ID'          => 'ID',
    'LANG'        => '%LanguageCode',
    'ONCLICK'     => '%Script',
    'ONDBLCLICK'  => '%Script',
    'ONKEYDOWN'   => '%Script',
    'ONKEYPRESS'  => '%Script',
    'ONKEYUP'     => '%Script',
    'ONMOUSEDOWN' => '%Script',
    'ONMOUSEMOVE' => '%Script',
    'ONMOUSEOUT'  => '%Script',
    'ONMOUSEOVER' => '%Script',
    'ONMOUSEUP'   => '%Script',
    'STYLE'       => '%StyleSheet',
    'TITLE'       => '%Text',
    'XML:LANG'    => '%LanguageCode',
  },
);
%requiredAttrs = (
  'APPLET'   => 'WIDTH&HEIGHT',
  'AREA'     => 'ALT',
  'BASEFONT' => 'SIZE',
  'BDO'      => 'DIR',
  'FORM'     => 'ACTION',
  'IMG'      => 'SRC&ALT',
  'MAP'      => 'ID',
  'META'     => 'CONTENT',
  'OPTGROUP' => 'LABEL',
  'PARAM'    => 'NAME',
  'SCRIPT'   => 'TYPE',
  'STYLE'    => 'TYPE',
  'TEXTAREA' => 'ROWS&COLS',
  'HTML'     => 'XMLNS',
);
%deprecatedAttrs = (
# 'A'       => 'NAME',
# 'APPLET'  => 'NAME',
# 'FORM'    => 'NAME',
# 'FRAME'   => 'NAME',
# 'IFRAME'  => 'NAME',
# 'IMG'     => 'NAME',
# 'MAP'     => 'NAME',
# 'BASE'    => 'TARGET',
  'SCRIPT'  => 'LANGUAGE',
# 'LINK'    => 'TARGET',
);
%deprecatedAttrsCss = (
  'BODY'    => 'ALINK|BACKGROUND|BGCOLOR|LINK|TEXT|VLINK',
  'BR'      => 'CLEAR',
  'CAPTION' => 'ALIGN',
  'DIV'     => 'ALIGN',
  'DL'      => 'COMPACT',
  'FORM'    => 'TARGET',
  'H1'      => 'ALIGN',
  'H2'      => 'ALIGN',
  'H3'      => 'ALIGN',
  'H4'      => 'ALIGN',
  'H5'      => 'ALIGN',
  'H6'      => 'ALIGN',
  'HR'      => 'ALIGN|NOSHADE|SIZE|WIDTH',
  'IMG'     => 'ALIGN|BORDER|HSPACE|VSPACE',
  'INPUT'   => 'ALIGN',
  'LEGEND'  => 'ALIGN',
  'LI'      => 'TYPE|VALUE',
  'OBJECT'  => 'ALIGN|BORDER|HSPACE|VSPACE',
  'OL'      => 'COMPACT|START|TYPE',
  'P'       => 'ALIGN',
  'PRE'     => 'WIDTH',
  'TABLE'   => 'ALIGN|BGCOLOR',
  'TD'      => 'BGCOLOR|HEIGHT|NOWRAP|WIDTH',
  'TH'      => 'BGCOLOR|HEIGHT|NOWRAP|WIDTH',
  'TR'      => 'BGCOLOR',
  'UL'      => 'COMPACT|TYPE',
);
#======= ENTITIES =======
%refEntities = (
  'AElig'    => '&#198;',
  'Aacute'   => '&#193;',
  'Acirc'    => '&#194;',
  'Agrave'   => '&#192;',
  'Alpha'    => '&#913;',
  'Aring'    => '&#197;',
  'Atilde'   => '&#195;',
  'Auml'     => '&#196;',
  'Beta'     => '&#914;',
  'Ccedil'   => '&#199;',
  'Chi'      => '&#935;',
  'Dagger'   => '&#8225;',
  'Delta'    => '&#916;',
  'ETH'      => '&#208;',
  'Eacute'   => '&#201;',
  'Ecirc'    => '&#202;',
  'Egrave'   => '&#200;',
  'Epsilon'  => '&#917;',
  'Eta'      => '&#919;',
  'Euml'     => '&#203;',
  'Gamma'    => '&#915;',
  'Iacute'   => '&#205;',
  'Icirc'    => '&#206;',
  'Igrave'   => '&#204;',
  'Iota'     => '&#921;',
  'Iuml'     => '&#207;',
  'Kappa'    => '&#922;',
  'Lambda'   => '&#923;',
  'Mu'       => '&#924;',
  'Ntilde'   => '&#209;',
  'Nu'       => '&#925;',
  'OElig'    => '&#338;',
  'Oacute'   => '&#211;',
  'Ocirc'    => '&#212;',
  'Ograve'   => '&#210;',
  'Omega'    => '&#937;',
  'Omicron'  => '&#927;',
  'Oslash'   => '&#216;',
  'Otilde'   => '&#213;',
  'Ouml'     => '&#214;',
  'Phi'      => '&#934;',
  'Pi'       => '&#928;',
  'Prime'    => '&#8243;',
  'Psi'      => '&#936;',
  'Rho'      => '&#929;',
  'Scaron'   => '&#352;',
  'Sigma'    => '&#931;',
  'THORN'    => '&#222;',
  'Tau'      => '&#932;',
  'Theta'    => '&#920;',
  'Uacute'   => '&#218;',
  'Ucirc'    => '&#219;',
  'Ugrave'   => '&#217;',
  'Upsilon'  => '&#933;',
  'Uuml'     => '&#220;',
  'Xi'       => '&#926;',
  'Yacute'   => '&#221;',
  'Yuml'     => '&#376;',
  'Zeta'     => '&#918;',
  'aacute'   => '&#225;',
  'acirc'    => '&#226;',
  'acute'    => '&#180;',
  'aelig'    => '&#230;',
  'agrave'   => '&#224;',
  'alefsym'  => '&#8501;',
  'alpha'    => '&#945;',
  'amp'      => '&#38;&#38;',
  'and'      => '&#8743;',
  'ang'      => '&#8736;',
  'apos'     => '&#39;',
  'aring'    => '&#229;',
  'asymp'    => '&#8776;',
  'atilde'   => '&#227;',
  'auml'     => '&#228;',
  'bdquo'    => '&#8222;',
  'beta'     => '&#946;',
  'brvbar'   => '&#166;',
  'bull'     => '&#8226;',
  'cap'      => '&#8745;',
  'ccedil'   => '&#231;',
  'cedil'    => '&#184;',
  'cent'     => '&#162;',
  'chi'      => '&#967;',
  'circ'     => '&#710;',
  'clubs'    => '&#9827;',
  'cong'     => '&#8773;',
  'copy'     => '&#169;',
  'crarr'    => '&#8629;',
  'cup'      => '&#8746;',
  'curren'   => '&#164;',
  'dArr'     => '&#8659;',
  'dagger'   => '&#8224;',
  'darr'     => '&#8595;',
  'deg'      => '&#176;',
  'delta'    => '&#948;',
  'diams'    => '&#9830;',
  'divide'   => '&#247;',
  'eacute'   => '&#233;',
  'ecirc'    => '&#234;',
  'egrave'   => '&#232;',
  'empty'    => '&#8709;',
  'emsp'     => '&#8195;',
  'ensp'     => '&#8194;',
  'epsilon'  => '&#949;',
  'equiv'    => '&#8801;',
  'eta'      => '&#951;',
  'eth'      => '&#240;',
  'euml'     => '&#235;',
  'euro'     => '&#8364;',
  'exist'    => '&#8707;',
  'fnof'     => '&#402;',
  'forall'   => '&#8704;',
  'frac12'   => '&#189;',
  'frac14'   => '&#188;',
  'frac34'   => '&#190;',
  'frasl'    => '&#8260;',
  'gamma'    => '&#947;',
  'ge'       => '&#8805;',
  'gt'       => '&#62;',
  'hArr'     => '&#8660;',
  'harr'     => '&#8596;',
  'hearts'   => '&#9829;',
  'hellip'   => '&#8230;',
  'iacute'   => '&#237;',
  'icirc'    => '&#238;',
  'iexcl'    => '&#161;',
  'igrave'   => '&#236;',
  'image'    => '&#8465;',
  'infin'    => '&#8734;',
  'int'      => '&#8747;',
  'iota'     => '&#953;',
  'iquest'   => '&#191;',
  'isin'     => '&#8712;',
  'iuml'     => '&#239;',
  'kappa'    => '&#954;',
  'lArr'     => '&#8656;',
  'lambda'   => '&#955;',
  'lang'     => '&#9001;',
  'laquo'    => '&#171;',
  'larr'     => '&#8592;',
  'lceil'    => '&#8968;',
  'ldquo'    => '&#8220;',
  'le'       => '&#8804;',
  'lfloor'   => '&#8970;',
  'lowast'   => '&#8727;',
  'loz'      => '&#9674;',
  'lrm'      => '&#8206;',
  'lsaquo'   => '&#8249;',
  'lsquo'    => '&#8216;',
  'lt'       => '&#38;&#60;',
  'macr'     => '&#175;',
  'mdash'    => '&#8212;',
  'micro'    => '&#181;',
  'middot'   => '&#183;',
  'minus'    => '&#8722;',
  'mu'       => '&#956;',
  'nabla'    => '&#8711;',
  'nbsp'     => '&#160;',
  'ndash'    => '&#8211;',
  'ne'       => '&#8800;',
  'ni'       => '&#8715;',
  'not'      => '&#172;',
  'notin'    => '&#8713;',
  'nsub'     => '&#8836;',
  'ntilde'   => '&#241;',
  'nu'       => '&#957;',
  'oacute'   => '&#243;',
  'ocirc'    => '&#244;',
  'oelig'    => '&#339;',
  'ograve'   => '&#242;',
  'oline'    => '&#8254;',
  'omega'    => '&#969;',
  'omicron'  => '&#959;',
  'oplus'    => '&#8853;',
  'or'       => '&#8744;',
  'ordf'     => '&#170;',
  'ordm'     => '&#186;',
  'oslash'   => '&#248;',
  'otilde'   => '&#245;',
  'otimes'   => '&#8855;',
  'ouml'     => '&#246;',
  'para'     => '&#182;',
  'part'     => '&#8706;',
  'permil'   => '&#8240;',
  'perp'     => '&#8869;',
  'phi'      => '&#966;',
  'pi'       => '&#960;',
  'piv'      => '&#982;',
  'plusmn'   => '&#177;',
  'pound'    => '&#163;',
  'prime'    => '&#8242;',
  'prod'     => '&#8719;',
  'prop'     => '&#8733;',
  'psi'      => '&#968;',
  'quot'     => '&#34;',
  'rArr'     => '&#8658;',
  'radic'    => '&#8730;',
  'rang'     => '&#9002;',
  'raquo'    => '&#187;',
  'rarr'     => '&#8594;',
  'rceil'    => '&#8969;',
  'rdquo'    => '&#8221;',
  'real'     => '&#8476;',
  'reg'      => '&#174;',
  'rfloor'   => '&#8971;',
  'rho'      => '&#961;',
  'rlm'      => '&#8207;',
  'rsaquo'   => '&#8250;',
  'rsquo'    => '&#8217;',
  'sbquo'    => '&#8218;',
  'scaron'   => '&#353;',
  'sdot'     => '&#8901;',
  'sect'     => '&#167;',
  'shy'      => '&#173;',
  'sigma'    => '&#963;',
  'sigmaf'   => '&#962;',
  'sim'      => '&#8764;',
  'spades'   => '&#9824;',
  'sub'      => '&#8834;',
  'sube'     => '&#8838;',
  'sum'      => '&#8721;',
  'sup'      => '&#8835;',
  'sup1'     => '&#185;',
  'sup2'     => '&#178;',
  'sup3'     => '&#179;',
  'supe'     => '&#8839;',
  'szlig'    => '&#223;',
  'tau'      => '&#964;',
  'there4'   => '&#8756;',
  'theta'    => '&#952;',
  'thetasym' => '&#977;',
  'thinsp'   => '&#8201;',
  'thorn'    => '&#254;',
  'tilde'    => '&#732;',
  'times'    => '&#215;',
  'trade'    => '&#8482;',
  'uArr'     => '&#8657;',
  'uacute'   => '&#250;',
  'uarr'     => '&#8593;',
  'ucirc'    => '&#251;',
  'ugrave'   => '&#249;',
  'uml'      => '&#168;',
  'upsih'    => '&#978;',
  'upsilon'  => '&#965;',
  'uuml'     => '&#252;',
  'weierp'   => '&#8472;',
  'xi'       => '&#958;',
  'yacute'   => '&#253;',
  'yen'      => '&#165;',
  'yuml'     => '&#255;',
  'zeta'     => '&#950;',
  'zwj'      => '&#8205;',
  'zwnj'     => '&#8204;',
);
%refParams = (
  'Character'    => '[\x20-\x7E]',
  'Charset'      => 'CDATA+',
  'Charsets'     => 'CDATA+',
  'Class'        => 'CDATA+',
  'Color'        => '(?i)#[0-9A-F]{6}'.
                    '|aqua|black|blue|fuchsia|gray|green|lime|maroon'.
                    '|navy|olive|purple|red|silver|teal|white|yellow'.
                    '|activeborder|activecaption|appworkspace|background'.
                    '|buttonface|buttonhighlight|buttonshadow|buttontext'.
                    '|captiontext|graytext|highlight|highlighttext'.
                    '|inactiveborder|inactivecaption|inactivecaptiontext'.
                    '|infobackground|infotext|menu|menutext|scrollbar'.
                    '|threeddarkshadow|threedface|threedhighlight'.
                    '|threedlightshadow|threedshadow|window|windowframe'.
                    '|windowtext',
  'ContentType'  => 'CDATA+',
  'ContentTypes' => 'CDATA+',
  'Coords'       => '(?:\d+(?:\s*,\s*|\s+))+\d+',
  'Datetime'      => '\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1])(?:T(?:[0-1][0-9]|2[0-3]):(?:[0-5][0-9]):(?:[0-5][0-9])(?:Z|[\+\-][0-5][0-9]:[0-5][0-9]))',
  'FrameTarget'  => 'NMTOKEN',
  'LIStyle'      => '&LIStyle',
  'LanguageCode' => '(?:(?i)[A-Z]{1,8}(?:-[A-Z]{1,8})*)?',
  'Length'       => '\d+%?',
  'LinkTypes'    => 'CDATA+',
  'MediaDesc'    => 'CDATA+',
  'MultiLength'  => '(?:\d+(?:\.\d+)?(?:\*|%)?|\*)',
  'MultiLengths' => '(?:(?:\d+(?:\.\d+)?(?:\*|%)?|\*)\s*,\s*)*(?:\d+(?:\.\d+)?(?:\*|%)?|\*)',
  'Name'         => 'CDATA+',
  'Number'       => 'NUMBER',
  'Number.plus'  => 'NUMBER+',
  'OLStyle'      => '&OLStyle',
  'Pixels'       => '\d+',
  'Script'       => 'CDATA',
  'StyleSheet'   => 'CDATA',
  'Text'         => 'CDATA',
  'URI'          => '&URL',
  'UriList'      => '&URLs',
);

1;
