<!-- html4blue.dtd version 0.7

HTML Blue is a ready to use SGML DTD influenced by developments in HTML since
the advent of HTML 4. It is a late (blue) HTML 4 definition doing away with
contents which neither will make the leap over to HTML 5 nor became part of the 
International Standard of HTML (ISO-HTML). HTML Blue is beneficial in 
situations where compliance with existing web practices is required, XHTML is 
not called for, and a DTD validator is used to check the validity of the web 
page. 

Elements not part of (drafts of) HTML 5 are dropped (i.e. all elements - except 
MENU - that were deprecated with HTML 4, and ACRONYM, BIG, FRAME, FRAMESET, 
NOFRAMES and TT). New elements in HTML 5 are added only if they were previously 
widely implemented in browsers (i.e. EMBED only). 

Attributes to respective elements, which are not applied in either HTML 5 or 
ISO-HTML are dropped. (Attribute names which are part of ISO-HTML but not of 
HTML 5 appear in upper case in the declarations.) No new attributes from HTML 5 
are added, but HTML 4 attributes widening their range to apply to more elements 
in HTML 5 will do likewise in HTML Blue (except that the event handler 
attributes keep their limitations as do "accesskey" for now). 

Note that the DOCTYPE will trigger "no quirks mode" as for now, but might not 
do so when HTML 5 has matured and received attention from user agent 
programmers. Typical usage with the following declaration put first in the 
document:

<!DOCTYPE html PUBLIC "-//mikaels.net//DTD HTML Blue v0.7//EN"
 "http://mikaels.net/archives/public/text/sgml/html4blue.dtd">

 -->
        <!-- Part 1 - Entity set -->

	<!-- Tokens defined by other standards: -->
<!ENTITY % Content-Type "CDATA"      -- MIME content type, RFC1521 -->
<!ENTITY % HTTP-Method "(get|post)"  -- as per HTTP/1.1 RFC2068  -->
<!ENTITY % URI "CDATA"     -- Universal Resource Identifier, RFC1630 -->

<!ENTITY % Script "CDATA"            -- script expression -->
<!ENTITY % StyleSheet "CDATA"        -- style sheet data -->
<!ENTITY % FrameTarget "CDATA"       -- render in this iframe -->
<!ENTITY % Charset "CDATA" -- a character encoding, as per [RFC2045] -->

        <!-- Element tokens -->
<!ENTITY % special "A | BDO | BR | EMBED | IFRAME | IMG | 
                    MAP | OBJECT | Q | SCRIPT | SPAN" >

        <!-- Logical character styles -->
<!ENTITY % logical.styles "ABBR | CITE | CODE | DFN | EM |
                           KBD | SAMP | STRONG | VAR" >

        <!-- Physical character styles -->
<!ENTITY % physical.styles "B | I | SMALL | SUB | SUP" >

        <!-- Model groups -->
        <!-- Block-like elements eg. forms, paragraphs and lists -->
<!ENTITY % form.container "FIELDSET | FORM" >

<!ENTITY % list "DL | MENU | OL | UL" >

<!ENTITY % block "%form.container; | BLOCKQUOTE | DIV | HR |
                  NOSCRIPT | P | PRE | TABLE" >

        <!-- Form fields (Formctrl) -->
<!ENTITY % form.fields "BUTTON | INPUT | LABEL | SELECT | TEXTAREA" >

        <!-- Character level elements and text strings -->
<!ENTITY % inline "%physical.styles; | %logical.styles; | %special; | 
                   %form.fields; | DEL | INS" >
<!ENTITY % phrasing.content "#PCDATA | %inline;" >

        <!-- Elements that may appear in a section of the page or table -->
<!ENTITY % section.content "(%block; | %inline; | ADDRESS)+" >
<!ENTITY % heading         "H1|H2|H3|H4|H5|H6">
<!ENTITY % prose.content   "(%section.content; | %heading; | %list;)+" >

<!ENTITY % Length "CDATA"  -- nn for pixels or nn% for percentage length -->
<!ENTITY % Pixels "CDATA"  -- integer representing length in pixels -->

        <!-- Generic attributes -->
<!ENTITY % core
 "class      CDATA         #IMPLIED  -- Comma separated list of class values --
  id         ID            #IMPLIED  -- Document-wide unique id --
  title      CDATA         #IMPLIED  -- Advisory title or amplification --" >

<!ENTITY % i18n
 "dir        (ltr|rtl)     #IMPLIED  -- Direction for weak/neutral text --
  lang       NAME          #IMPLIED  -- RFC1766 language value --" >

<!ENTITY % events
 "onclick     %Script;     #IMPLIED  -- a pointer button was clicked --
  ondblclick  %Script;     #IMPLIED  -- a pointer button was double clicked--
  onmousedown %Script;     #IMPLIED  -- a pointer button was pressed down --
  onmouseup   %Script;     #IMPLIED  -- a pointer button was released --
  onmouseover %Script;     #IMPLIED  -- a pointer was moved onto --
  onmousemove %Script;     #IMPLIED  -- a pointer was moved within --
  onmouseout  %Script;     #IMPLIED  -- a pointer was moved away --
  onkeypress  %Script;     #IMPLIED  -- a key was pressed and released --
  onkeydown   %Script;     #IMPLIED  -- a key was pressed down --
  onkeyup     %Script;     #IMPLIED  -- a key was released --" >

<!ENTITY % common "%core; %i18n; %events;" >

<!ENTITY % global 
 "%common;
  style      %StyleSheet;  #IMPLIED  -- associated style info --
  tabindex   NUMBER        #IMPLIED  -- Position in tabbing order --" >
<!-- Note: See version 0.6 for a complete list of new and old global attributes. -->

        <!-- Presentation styles -->
<!ENTITY % shape     "(circle | default | poly | rect)" >
<!ENTITY % InputType "(button | checkbox | file | hidden | image | 
                       password | radio | reset | submit | text)" >

        <!-- SHORTREF mapping for the tab character -->
<!-- Use of the tab character is deprecated.  However, to facilitate
     the preparation of conforming documents by authors who use it,
     the tab character is tolerated and is mapped into a single space. -->
<!ENTITY nontab   " " >
<!SHORTREF tabmap "&#TAB;" nontab >
<!USEMAP tabmap   HTML >

        <!-- Specify character entity sets defined by W3C -->
<!ENTITY % HTMLlat1    PUBLIC "-//W3C//ENTITIES Full Latin 1//EN//HTML" >
<!ENTITY % HTMLsymbol  PUBLIC "-//W3C//ENTITIES Symbolic//EN//HTML" >
<!ENTITY % HTMLspecial PUBLIC "-//W3C//ENTITIES Special//EN//HTML" >

        <!-- Reference character entities -->
%HTMLlat1;%HTMLsymbol;%HTMLspecial;

        <!-- Part 2 - Document element definitions --> 

<!ENTITY % head.misc "SCRIPT|STYLE|META|LINK" -- repeatable head elements -->
<!ENTITY % head.content "TITLE & BASE?">

<!-- Further normative requirements on the elements defined in this part
     of the DTD are provided in Part 3.

  ELEMENTS            MIN  CONTENT  (EXCEPTIONS) -->

        <!-- structure -->
<!ELEMENT BODY        O O  (%block;|%heading;|%list;|SCRIPT)+ +(DEL|INS) >
<!ELEMENT HEAD 	      O O  (%head.content;) +(%head.misc;) >
<!ELEMENT HTML        O O  (HEAD, BODY) >
<!ELEMENT TITLE       - -  (#PCDATA) -(%head.misc;) >

        <!-- text -->
<!ELEMENT (%logical.styles;)
                      - -  (%phrasing.content;)* >
<!ELEMENT ADDRESS     - -  (%phrasing.content;)* -(IMG|OBJECT|MAP) >
<!ELEMENT BLOCKQUOTE  - -  (%block; | %heading; | %list; | SCRIPT)+ >
<!ELEMENT BR          - O  EMPTY >
<!ELEMENT DIV         - -  (#PCDATA | %prose.content;)* >
<!ELEMENT (%heading;) - -  (%phrasing.content;)* >
<!ELEMENT P           - O  (%phrasing.content;)* >
<!ELEMENT PRE         - -  (%phrasing.content;)* -(IMG|MAP|OBJECT|SMALL|SUB|SUP) >
<!ELEMENT Q           - -  (%phrasing.content;)* >
<!ELEMENT SPAN        - -  (%phrasing.content;)* >

        <!-- hypertext -->
<!ELEMENT A           - -  (%phrasing.content;)* -(A) >

        <!-- list -->
<!ELEMENT DL          - -  (DT|DD)+ >
<!ELEMENT DT          - O  (%phrasing.content;)* >
<!ELEMENT DD          - O  (#PCDATA | %list; | %section.content;)* -(ADDRESS) >
<!ELEMENT (OL|UL)     - -  (LI)+ >
<!ELEMENT LI          - O  (%phrasing.content; | %list; | %block;)* >

        <!-- presentation -->
<!ELEMENT (%physical.styles;)
                      - -  (%phrasing.content;)* >
<!ELEMENT HR          - O  EMPTY >

        <!-- edit -->
<!ELEMENT (DEL|INS)   - -  (#PCDATA | %prose.content;)* >

        <!-- bi-directional text -->
<!ELEMENT BDO         - -  (%phrasing.content;)* >

        <!-- forms -->
<!ELEMENT FORM        - -  (%heading; | %list; | %block; | SCRIPT)+ -(%form.container) >
<!ELEMENT INPUT       - O  EMPTY >
<!ELEMENT SELECT      - -  (OPTGROUP|OPTION)+ >
<!ELEMENT OPTION      - O  (#PCDATA) >
<!ELEMENT TEXTAREA    - -  (#PCDATA) >
<!ELEMENT BUTTON      - -  (%heading; | %list; | %block; | %phrasing.content)*
                            -(%form.container;|%form.fields;|A|IFRAME) >
<!-- #PCDATA required to absorb leading white space -->
<!ELEMENT FIELDSET    - -  (#PCDATA,LEGEND,(%block; | %inline; | ADDRESS)*) -(FIELDSET) >
<!ELEMENT LABEL       - -  (%phrasing.content;)* -(LABEL) >
<!ELEMENT LEGEND      - -  (%phrasing.content;)* >
<!ELEMENT OPTGROUP    - O  (OPTION)+ >

        <!-- tables -->
<!ELEMENT CAPTION     - -  (%phrasing.content;)* >
<!ELEMENT TABLE       - -  (CAPTION?, (COL*|COLGROUP*), 
                            ((THEAD?, TFOOT?, TBODY+) | TR+)) >
<!ELEMENT TH          - O  (%phrasing.content; | %block;)* >
<!ELEMENT TD          - O  (#PCDATA | %prose.content;)* >
<!ELEMENT TR          - O  (TH|TD)+ >  
<!ELEMENT COL         - O  EMPTY >
<!ELEMENT COLGROUP    - O  (COL)* >
<!ELEMENT (THEAD,TFOOT,TBODY) - O  (TR)+ >

        <!-- image -->
<!ELEMENT IMG         - O  EMPTY >

        <!-- client-side image map -->
<!ELEMENT AREA        - O  EMPTY >
<!-- Authors should use the block-level content of the <MAP> element when
     creating accessible documents.  Each region should be specified using
     an <A> element to define its associated link and shape.  User agents
     should render the block-level content of a <MAP> element. -->
<!ELEMENT MAP         - -  ((%heading; | %block;) | AREA)+ >

        <!-- object -->
<!ELEMENT PARAM       - O  EMPTY >
<!ELEMENT OBJECT      - -  (#PCDATA | PARAM | %section.content;)* >

        <!-- iframe -->
<!ELEMENT IFRAME      - -  (#PCDATA | %prose.content;)* >

        <!-- metainformation -->
<!ELEMENT META        - O  EMPTY >

        <!-- scripting -->
<!ELEMENT NOSCRIPT    - -  (%heading; | %list; | %block;)+ >
<!ELEMENT SCRIPT      - -  %Script; >

        <!-- style sheet -->
<!ELEMENT STYLE       - -  %StyleSheet; >

        <!-- link -->
<!ELEMENT LINK        - O  EMPTY >

        <!-- base -->
<!ELEMENT BASE        - O  EMPTY >

        <!-- html5 -->
<!ELEMENT EMBED       - O  EMPTY     -- embedded objects -- >
<!ELEMENT MENU        - -  (LI*|%inline;) -(%block;) -- menu list -- >

        <!-- Part 3 - Attribute definition lists -->

<!--    ELEMENTS 
  NAME       VALUE         DEFAULT --> 
<!ATTLIST A
  %global;                           -- %core, %i18n, %events, style, tabindex --
  ACCESSKEY  CDATA         #IMPLIED  -- Accessibility key character --
  CHARSET    CDATA         #IMPLIED  -- Character encoding as per RFC2045 --
  COORDS     CDATA         #IMPLIED  -- Comma separated list of values --
  href       %URI;         #IMPLIED  -- Source anchor is URI of target --
  hreflang   NAME          #IMPLIED  -- Language code of resource --
  media      CDATA         #IMPLIED  -- media of referenced doc --
  NAME       CDATA         #IMPLIED  -- Target anchor --
  rel        CDATA         #IMPLIED  -- Forward link types --
  REV        CDATA         #IMPLIED  -- Reverse link types --
  SHAPE      %shape;           rect  -- Control interpretation of coords --
  type       CDATA         #IMPLIED  -- Advisory content type --
  onfocus    %Script;      #IMPLIED  -- the element got the focus --
  onblur     %Script;      #IMPLIED  -- the element lost the focus --
  target     %FrameTarget; #IMPLIED  -- render in this iframe -- >

<!ATTLIST ADDRESS
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST AREA     
  %global;                           -- %core, %i18n, %events, style, tabindex --
  ACCESSKEY  CDATA         #IMPLIED  -- Accessibility key character --
  alt        CDATA         #REQUIRED -- Description for text-only UAs --
  coords     CDATA         #IMPLIED  -- Comma separated list of values --
  href       %URI;         #IMPLIED  -- This region acts as hypertext link --
  hreflang   NAME          #IMPLIED  -- Language code of resource --
  media      CDATA         #IMPLIED  -- media of referenced doc --
  NOHREF     (nohref)      #IMPLIED  -- This region has no action --
  rel        CDATA         #IMPLIED  -- Forward link types --
  shape      %shape;       rect      -- Control interpretation of coords --
  onfocus    %Script;      #IMPLIED  -- the element got the focus --
  onblur     %Script;      #IMPLIED  -- the element lost the focus --
  target     %FrameTarget; #IMPLIED  -- render in this iframe -- >

<!ATTLIST BASE
  href       %URI;         #IMPLIED  -- URI that acts as base URI -- 
  target     %FrameTarget; #IMPLIED  -- render in this iframe -- >

<!ATTLIST BDO
  %core;                             -- Element CLASS, ID and TITLE --
  dir        (ltr|rtl)     #REQUIRED -- Direction of writing --
  lang       NAME          #IMPLIED  -- RFC1766 language value -- >

<!ATTLIST BLOCKQUOTE
  %global;                           -- %core, %i18n, %events, style, tabindex --
  cite       %URI;         #IMPLIED  -- URI for source document or message -- >

<!ATTLIST BODY
  %common;                           -- %core, %i18n, %events --
  onload     %Script;      #IMPLIED  -- the document has been loaded --
  onunload   %Script;      #IMPLIED  -- the document has been removed --
  style      %StyleSheet;  #IMPLIED  -- associated style info -- >

<!ATTLIST BR
  %core;                             -- Element CLASS, ID and TITLE --
  style      %StyleSheet;  #IMPLIED  -- associated style info -- >

<!ATTLIST BUTTON
  %global;                           -- %core, %i18n, %events, style, tabindex --
  ACCESSKEY  CDATA         #IMPLIED  -- Accessibility key character --
  disabled   (disabled)    #IMPLIED  -- Control unavailable in this context --
  name       CDATA         #IMPLIED  -- Required for all except submit, reset --

  type       (button|submit|reset)    
                           submit    -- For use as form submit/reset button --
  value      CDATA         #IMPLIED  -- Passed to server when submitted --
  onfocus    %Script;      #IMPLIED  -- the element got the focus --
  onblur     %Script;      #IMPLIED  -- the element lost the focus -- >

<!ATTLIST CAPTION
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST COL
  %global;                           -- %core, %i18n, %events, style, tabindex -- 
  span       NUMBER        1         -- Number of cols spanned -- >

<!ATTLIST COLGROUP
  %global;                           -- %core, %i18n, %events, style, tabindex -- 
  span       NUMBER        1         -- Number of cols spanned by group -- >

<!ATTLIST DD
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST DEL
  %global;                           -- %core, %i18n, %events, style, tabindex --
  cite       %URI;         #IMPLIED  -- Information on reason for change --
  datetime   CDATA         #IMPLIED  -- When changed, subset of ISO/IEC 8601 -- >

<!ATTLIST DIV
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST DL
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST DT
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST EMBED
  %global;                           -- %core, %i18n, %events, style, tabindex --
  type       %Content-Type; #IMPLIED -- advisory content type --
  src        %URI;	   #REQUIRED -- URI of object to be displayed --
  width	     %Length;      #IMPLIED  -- width of object --
  height     %Length;      #IMPLIED  -- height of object --
  -- in html5 all no namespace attributes are allowed, here defining the traditional ones --
  code	     %URI;         #IMPLIED  -- URI of an embedded applet --
  codebase   %URI;         #IMPLIED  -- base URI for embedded applet --
  pluginspage %URI         #IMPLIED  -- URI for instructions for installing 
					the plug-in required by the object --
  pluginurl  %URI          #IMPLIED  -- URI for a Java Archive (JAR) which contains 
					an installable version of the plugin --
  hidden     (true|false)  #IMPLIED  -- plugin is not displayed if false -- >

<!ATTLIST FIELDSET
  %global;                           -- %core, %i18n, %events, style, tabindex --
  disabled   (disabled)    #IMPLIED  -- Control unavailable in this context -- >

<!ATTLIST FORM
  %global;                           -- %core, %i18n, %events, style, tabindex --
  accept     CDATA         #IMPLIED  -- List of MIME types for file upload --
  accept-charset CDATA     #IMPLIED  -- List of supported char sets --
  action     %URI;         #REQUIRED -- Server-side form handler --
  enctype    %Content-Type; "application/x-www-form-urlencoded"
  method     %HTTP-Method; get       -- See HTTP specification --
  name       CDATA         #IMPLIED  -- name of form for scripting --
  onsubmit   %Script;      #IMPLIED  -- the form was submitted --
  onreset    %Script;      #IMPLIED  -- the form was reset --
  target     %FrameTarget; #IMPLIED  -- render in this iframe -- >

<!ATTLIST HEAD
  %i18n;                             -- Internationalization DIR and LANG -- 
  PROFILE    %URI;         #IMPLIED  -- Named dictionary of meta info --
  style      %StyleSheet;  #IMPLIED  -- associated style info -- >

<!ATTLIST HR
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST HTML 
  %i18n;                             -- Internationalization DIR and LANG --
  style      %StyleSheet;  #IMPLIED  -- associated style info -- >

<!ATTLIST (H1 | H2 | H3 | H4 | H5 | H6)
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST IFRAME
  %core;                             -- id, class, title --
  name       CDATA         #IMPLIED  -- name of frame for targetting --
  src        %URI;         #IMPLIED  -- source of iframe content -- >

<!ATTLIST IMG
  %global;                           -- %core, %i18n, %events, style, tabindex --
  alt        CDATA         #REQUIRED -- Text for text-only user agent --
  ismap      (ismap)       #IMPLIED  -- Use server image map --
  LONGDESC   %URI;         #IMPLIED  -- Extended description for text UA --
  src        %URI;         #REQUIRED -- URI of image to embed --
  usemap     %URI;         #IMPLIED  -- Use client-side image map --
  height     %Length;      #IMPLIED  -- override height --
  width      %Length;      #IMPLIED  -- override width -- >

<!ATTLIST INPUT
  %global;                           -- %core, %i18n, %events, style, tabindex --
  accept     CDATA         #IMPLIED  -- List of MIME types for file upload --
  ACCESSKEY  CDATA         #IMPLIED  -- Accessibility key character --
  alt        CDATA         #IMPLIED  -- short description --
  checked    (checked)     #IMPLIED  -- For radio buttons, checkboxes --
  disabled   (disabled)    #IMPLIED  -- Control unavailable in this context --
  ismap      (ismap)       #IMPLIED  -- use server-side image map --
  maxlength  NUMBER        #IMPLIED  -- Max chars for text fields --
  multiple   (multiple)    #IMPLIED  -- whether to be allowed to specify more than one value --
  name       CDATA         #IMPLIED  -- Required for all except submit, reset --
  readonly   (readonly)    #IMPLIED  -- For text --
  size       CDATA         #IMPLIED  -- Specific to each type of field --
  src        %URI;         #IMPLIED  -- for fields with images --
  type       %InputType;   text      -- Widget --
  usemap     %URI;         #IMPLIED  -- use client-side image map --
  value      CDATA         #IMPLIED  -- Required for radio, checkboxes --
  onfocus    %Script;      #IMPLIED  -- the element got the focus --
  onblur     %Script;      #IMPLIED  -- the element lost the focus --
  onselect   %Script;      #IMPLIED  -- some text was selected --
  onchange   %Script;      #IMPLIED  -- the element value was changed -- >

<!ATTLIST INS
  %global;                           -- %core, %i18n, %events, style, tabindex --
  cite       %URI;         #IMPLIED  -- Information on reason for change --
  datetime   CDATA         #IMPLIED  -- When changed, subset of ISO/IEC 8601 -- >

<!ATTLIST LABEL
  %global;                           -- %core, %i18n, %events, style, tabindex --
  ACCESSKEY  CDATA         #IMPLIED  -- Accessibility key character --
  for        IDREF         #IMPLIED  -- Points to associated field --
  onfocus    %Script;      #IMPLIED  -- the element got the focus -- 
  onblur     %Script;      #IMPLIED  -- the element lost the focus -- >

<!ATTLIST LEGEND
  %global;                           -- %core, %i18n, %events, style, tabindex -- 
  ACCESSKEY  CDATA         #IMPLIED  -- Accessibility key character -- >

<!ATTLIST LI
  %global;                           -- %core, %i18n, %events, style, tabindex --
  value      NUMBER        #IMPLIED  -- reset sequence number -- >

<!ATTLIST LINK
  %common;                           -- %core, %i18n, %events --
  CHARSET    CDATA         #IMPLIED  -- Character encoding as per RFC2045 --
  href       %URI;         #IMPLIED  -- URI for link resource --
  hreflang   NAME          #IMPLIED  -- Language code of resource --
  media      CDATA         #IMPLIED  -- Destination media of referenced doc --
  rel        CDATA         #IMPLIED  -- Forward link types --
  REV        CDATA         #IMPLIED  -- Reverse link types --
  type       CDATA         #IMPLIED  -- Advisory Internet content type -- >

<!ATTLIST MAP
  %events;                           -- Intrinsic Events Module  --
  %i18n;                             -- Internationalization DIR and LANG --
  class      CDATA         #IMPLIED  -- Comma separated list of class values --
  id         ID            #REQUIRED -- Document-wide unique id --
  name       CDATA         #IMPLIED  -- Referenced by USEMAP in IMG --
  title      CDATA         #IMPLIED  -- Advisory title or amplification -- >

<!ATTLIST MENU
  %global;                           -- %core, %i18n, %events, style, tabindex --
  label      CDATA         #IMPLIED  -- the label of the menu --
  type	     (context|toolbar) #IMPLIED 
                                     -- indicating the kind of menu -- >
 
<!ATTLIST META     
  %i18n;                             -- Internationalization DIR and LANG --
  charset    %Charset;     #IMPLIED  -- char encoding of linked resource --
  content    CDATA         #REQUIRED -- Associated information --
  http-equiv NAME          #IMPLIED  -- HTTP response header name --
  name       NAME          #IMPLIED  -- Meta-information name -- 
  SCHEME     CDATA         #IMPLIED  -- Nature of content -- >

<!ATTLIST NOSCRIPT
  %common;                           -- %core, %i18n, %events -- >

<!ATTLIST OBJECT   
  %global;                           -- %core, %i18n, %events, style, tabindex --
  CLASSID    %URI;         #IMPLIED  -- Identifies implementation --
  CODEBASE   %URI;         #IMPLIED  -- Needed by some systems --
  CODETYPE   CDATA         #IMPLIED  -- Internet content type for code --
  data       %URI;         #IMPLIED  -- Reference to objects data --
  DECLARE    (declare)     #IMPLIED  -- Flag: declare but dont instantiate --
  name       CDATA         #IMPLIED  -- Submit as part of form --
  STANDBY    CDATA         #IMPLIED  -- Show this msg while loading --
  type       CDATA         #IMPLIED  -- Internet content type for data --
  usemap     %URI;         #IMPLIED  -- Reference to image map --
  height     %Length;      #IMPLIED  -- override height --
  width      %Length;      #IMPLIED  -- override width -- >

<!ATTLIST OL
  %global;                           -- %core, %i18n, %events, style, tabindex --
  start      NUMBER        #IMPLIED  -- starting sequence number -- >

<!ATTLIST OPTGROUP
  %global;                           -- %core, %i18n, %events, style, tabindex --
  disabled   (disabled)    #IMPLIED  -- Control unavailable in this context --
  label      CDATA         #REQUIRED -- For use in hierarchical menus -- >

<!ATTLIST OPTION
  %global;                           -- %core, %i18n, %events, style, tabindex --
  disabled   (disabled)    #IMPLIED  -- Control unavailable in this context --
  label      CDATA         #IMPLIED  -- For use in hierarchical menus --
  selected   (selected)    #IMPLIED  -- Pre-selected option --
  value      CDATA         #IMPLIED  -- Defaults to content -- >

<!ATTLIST P
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST PARAM
  id         ID            #IMPLIED  -- Document-wide unique id --
  name       CDATA         #REQUIRED -- Name of parameter --
  TYPE       CDATA         #IMPLIED  -- Internet Media Type --
  value      CDATA         #IMPLIED  -- Value of parameter -- 
  VALUETYPE  (data|ref|object)
                                data -- Interpret value as -- >

<!ATTLIST PRE
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST Q
  %global;                           -- %core, %i18n, %events, style, tabindex --
  cite       %URI;         #IMPLIED  -- URI for source document or message -- >

<!ATTLIST SCRIPT
  defer      (defer)       #IMPLIED  -- UA may defer execution of script --
  src        %URI;         #IMPLIED  -- URI for an external script --
  type       %Content-Type; #REQUIRED -- content type of script language -- >

<!ATTLIST SELECT
  %global;                           -- %core, %i18n, %events, style, tabindex --
  disabled   (disabled)    #IMPLIED  -- Control unavailable in this context --
  multiple   (multiple)    #IMPLIED  -- Default is single selection --
  name       CDATA         #IMPLIED  -- Field name --
  size       NUMBER        #IMPLIED  -- Rows visible --
  onfocus    %Script;      #IMPLIED  -- the element got the focus --
  onblur     %Script;      #IMPLIED  -- the element lost the focus --
  onchange   %Script;      #IMPLIED  -- the element value was changed -- >

<!ATTLIST SPAN
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST STYLE
  %i18n;                             -- Internationalization DIR and LANG --
  media      CDATA         #IMPLIED  -- Designed for use with these media --
  title      CDATA         #IMPLIED  -- Advisory title --
  type       CDATA         #REQUIRED -- Internet content type for style lang -- >

<!ATTLIST TABLE
  %global;                           -- %core, %i18n, %events, style, tabindex -- 
  SUMMARY    CDATA         #IMPLIED  -- Purpose/structure for speech output -- >

<!ATTLIST TBODY
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST TD
  %global;                           -- %core, %i18n, %events, style, tabindex --
  ABBR       CDATA         #IMPLIED  -- Abbreviation for header cell --
  AXIS       CDATA         #IMPLIED  -- Names groups of related headers --
  colspan    NUMBER        1         -- Number of columns spanned by cell --
  HEADERS    IDREFS        #IMPLIED  -- List of ID's for header cells --
  rowspan    NUMBER        1         -- Number of rows spanned by cell -- 
  SCOPE      (col|colgroup|row|rowgroup)
                           #IMPLIED  -- Scope covered by header cells -- >

<!ATTLIST TEXTAREA
  %global;                           -- %core, %i18n, %events, style, tabindex --
  ACCESSKEY  CDATA         #IMPLIED  -- Accessibility key character --
  cols       NUMBER        #REQUIRED -- Number required in av char widths --
  disabled   (disabled)    #IMPLIED  -- Control unavailable in this context --
  name       CDATA         #IMPLIED  -- Name of form field --
  readonly   (readonly)    #IMPLIED  -- For text --
  rows       NUMBER        #REQUIRED -- Number of rows required --
  onfocus    %Script;      #IMPLIED  -- the element got the focus --
  onblur     %Script;      #IMPLIED  -- the element lost the focus --
  onselect   %Script;      #IMPLIED  -- some text was selected --
  onchange   %Script;      #IMPLIED  -- the element value was changed -- >

<!ATTLIST TFOOT
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST TH
  %global;                           -- %core, %i18n, %events, style, tabindex --
  ABBR       CDATA         #IMPLIED  -- Abbreviation for header cell --
  AXIS       CDATA         #IMPLIED  -- Names groups of related headers --
  colspan    NUMBER        1         -- Number of columns spanned by cell --
  HEADERS    IDREFS        #IMPLIED  -- List of ID's for header cells --
  rowspan    NUMBER        1         -- Number of rows spanned by cell --
  scope      (col|colgroup|row|rowgroup)
                           #IMPLIED  -- Scope covered by header cells -- >

<!ATTLIST THEAD
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST TITLE
  %i18n;                             -- Internationalization DIR and LANG -- >

<!ATTLIST TR
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST UL
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

        <!-- Attribute group definition lists -->

<!ATTLIST (%physical.styles;)
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!ATTLIST (%logical.styles;)
  %global;                           -- %core, %i18n, %events, style, tabindex -- >

<!-- End of file --> 
