Ocsigen

This is a preliminary version of the documentation. Help us to improve it by filling tickets. We are looking for native english speakers to proof read the documentation. Contact us!

sig
  module type T =
    sig
      type cdata = string
      type id = string
      type idref = string
      type idrefs = XHTML.T.idref list
      type name = string
      type nmtoken = string
      type nmtokens = XHTML.T.nmtoken list
      type pcdata = string
      type character = char
      type charset = string
      type charsets = XHTML.T.charset list
      type color =
          [ `Aqua
          | `Black
          | `Blue
          | `Fuchsia
          | `Gray
          | `Green
          | `Hex of string
          | `Lime
          | `Maroon
          | `Navy
          | `Olive
          | `Purple
          | `RGB of int * int * int
          | `Red
          | `Silver
          | `Teal
          | `White
          | `Yellow ]
      type contenttype = string
      type contenttypes = XHTML.T.contenttype list
      type coords = string list
      type datetime = string
      type fpi = string
      type frametarget = string
      type languagecode = string
      type length = [ `Percent of int | `Pixels of int ]
      type linktypes =
          [ `Alternate
          | `Appendix
          | `Bookmark
          | `Chapter
          | `Contents
          | `Copyright
          | `Glossary
          | `Help
          | `Index
          | `Next
          | `Other of string
          | `Prev
          | `Section
          | `Start
          | `Stylesheet
          | `Subsection ] list
      type mediadesc =
          [ `All
          | `Aural
          | `Braille
          | `Handheld
          | `Print
          | `Projection
          | `Screen
          | `TTY
          | `TV ] list
      type multilength =
          [ `Percent of int | `Pixels of int | `Relative of int ]
      type multilengths = XHTML.T.multilength list
      type number = int
      type pixels = int
      type script = string
      type text = string
      type uri
      val uri_of_string : string -> XHTML.T.uri
      val string_of_uri : XHTML.T.uri -> string
      type uris = XHTML.T.uri
      type +'a attrib
      type +'a attribs
      val to_xmlattribs : 'XHTML.T.attrib list -> XML.attrib list
      type core = [ `Class | `Id | `Title ]
      val a_class : XHTML.T.nmtokens -> [> `Class ] XHTML.T.attrib
      val a_id : XHTML.T.id -> [> `Id ] XHTML.T.attrib
      val a_title : XHTML.T.cdata -> [> `Title ] XHTML.T.attrib
      type i18n = [ `XML_lang ]
      val a_xml_lang : XHTML.T.nmtoken -> [> `XML_lang ] XHTML.T.attrib
      type events =
          [ `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp ]
      val a_onclick : XHTML.T.cdata -> [> `OnClick ] XHTML.T.attrib
      val a_ondblclick : XHTML.T.cdata -> [> `OnDblClick ] XHTML.T.attrib
      val a_onmousedown : XHTML.T.cdata -> [> `OnMouseDown ] XHTML.T.attrib
      val a_onmouseup : XHTML.T.cdata -> [> `OnMouseUp ] XHTML.T.attrib
      val a_onmouseover : XHTML.T.cdata -> [> `OnMouseOver ] XHTML.T.attrib
      val a_onmousemove : XHTML.T.cdata -> [> `OnMouseMove ] XHTML.T.attrib
      val a_onmouseout : XHTML.T.cdata -> [> `OnMouseOut ] XHTML.T.attrib
      val a_onkeypress : XHTML.T.cdata -> [> `OnKeyPress ] XHTML.T.attrib
      val a_onkeydown : XHTML.T.cdata -> [> `OnKeyDown ] XHTML.T.attrib
      val a_onkeyup : XHTML.T.cdata -> [> `OnKeyUp ] XHTML.T.attrib
      type common =
          [ `Class
          | `Id
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Title
          | `XML_lang ]
      module STRUCTURE : sig type t = [ `Body | `Head | `Html | `Title ] end
      val a_profile : XHTML.T.uri -> [> `Profile ] XHTML.T.attrib
      val a_version : XHTML.T.cdata -> [> `Version ] XHTML.T.attrib
      val a_xmlns : [< `W3_org_1999_xhtml ] -> [> `XMLns ] XHTML.T.attrib
      module TEXT :
        sig
          type heading = [ `H1 | `H2 | `H3 | `H4 | `H5 | `H6 ]
          type block = [ `Address | `Blockquote | `Div | `P | `Pre ]
          type inline =
              [ `Abbr
              | `Acronym
              | `Br
              | `Cite
              | `Code
              | `Dfn
              | `Em
              | `Kbd
              | `Q
              | `Samp
              | `Span
              | `Strong
              | `Var ]
          type flow =
              [ `Abbr
              | `Acronym
              | `Address
              | `Blockquote
              | `Br
              | `Cite
              | `Code
              | `Dfn
              | `Div
              | `Em
              | `H1
              | `H2
              | `H3
              | `H4
              | `H5
              | `H6
              | `Kbd
              | `P
              | `Pre
              | `Q
              | `Samp
              | `Span
              | `Strong
              | `Var ]
        end
      val a_cite : XHTML.T.uri -> [> `Cite ] XHTML.T.attrib
      val a_xml_space : [< `Preserve ] -> [> `XML_space ] XHTML.T.attrib
      module HYPERTEXT :
        sig type inline = [ `A ] type flow = XHTML.T.HYPERTEXT.inline end
      val a_accesskey : XHTML.T.character -> [> `Accesskey ] XHTML.T.attrib
      val a_charset : XHTML.T.charset -> [> `Charset ] XHTML.T.attrib
      val a_accept_charset :
        XHTML.T.charset -> [> `Accept_charset ] XHTML.T.attrib
      val a_accept : XHTML.T.contenttype -> [> `Accept ] XHTML.T.attrib
      val a_href : XHTML.T.uri -> [> `Href ] XHTML.T.attrib
      val a_hreflang : XHTML.T.languagecode -> [> `Hreflang ] XHTML.T.attrib
      val a_rel : XHTML.T.linktypes -> [> `Rel ] XHTML.T.attrib
      val a_rev : XHTML.T.linktypes -> [> `Rev ] XHTML.T.attrib
      val a_tabindex : XHTML.T.number -> [> `Tabindex ] XHTML.T.attrib
      val a_type : XHTML.T.contenttype -> [> `Type ] XHTML.T.attrib
      module LIST :
        sig
          type list = [ `Dl | `Ol | `Ul ]
          type t = [ `Dd | `Dt | `Li ]
          type flow = XHTML.T.LIST.list
        end
      module PRESENTATION :
        sig
          type block = [ `Hr ]
          type inline = [ `B | `Big | `I | `Small | `Sub | `Sup | `Tt ]
          type flow = [ `B | `Big | `Hr | `I | `Small | `Sub | `Sup | `Tt ]
        end
      val a_datetime : XHTML.T.cdata -> [> `Datetime ] XHTML.T.attrib
      val a_dir : [< `Ltr | `Rtl ] -> [> `Dir ] XHTML.T.attrib
      module FORMS :
        sig
          type t = [ `Option ]
          type form = [ `Form ]
          type formctrl_sans_label =
              [ `Button | `Input | `Select | `Textarea ]
          type formctrl = [ `Button | `Input | `Label | `Select | `Textarea ]
          type block = XHTML.T.FORMS.form
          type inline_sans_label = XHTML.T.FORMS.formctrl_sans_label
          type inline = XHTML.T.FORMS.formctrl
          type flow_sans_label =
              [ `Button | `Form | `Input | `Select | `Textarea ]
          type flow =
              [ `Button | `Form | `Input | `Label | `Select | `Textarea ]
        end
      val a_action : XHTML.T.uri -> [> `Action ] XHTML.T.attrib
      val a_checked : [< `Checked ] -> [> `Checked ] XHTML.T.attrib
      val a_cols : XHTML.T.number -> [> `Cols ] XHTML.T.attrib
      val a_enctype : XHTML.T.contenttype -> [> `Enctype ] XHTML.T.attrib
      val a_for : XHTML.T.idref -> [> `For ] XHTML.T.attrib
      val a_maxlength : XHTML.T.number -> [> `Maxlength ] XHTML.T.attrib
      val a_method : [< `Get | `Post ] -> [> `Method ] XHTML.T.attrib
      val a_multiple : [< `Multiple ] -> [> `Multiple ] XHTML.T.attrib
      val a_name : XHTML.T.cdata -> [> `Name ] XHTML.T.attrib
      val a_rows : XHTML.T.number -> [> `Rows ] XHTML.T.attrib
      val a_selected : [< `Selected ] -> [> `Selected ] XHTML.T.attrib
      val a_size : XHTML.T.number -> [> `Size ] XHTML.T.attrib
      val a_src : XHTML.T.uri -> [> `Src ] XHTML.T.attrib
      val a_input_type :
        [< `Button
         | `Checkbox
         | `File
         | `Hidden
         | `Image
         | `Password
         | `Radio
         | `Reset
         | `Submit
         | `Text ] ->
        [> `Input_Type ] XHTML.T.attrib
      val a_value : XHTML.T.cdata -> [> `Value ] XHTML.T.attrib
      val a_disabled : [< `Disabled ] -> [> `Disabled ] XHTML.T.attrib
      val a_readonly : [< `Readonly ] -> [> `Readonly ] XHTML.T.attrib
      val a_button_type :
        [< `Button | `Reset | `Submit ] -> [> `Button_Type ] XHTML.T.attrib
      val a_label : XHTML.T.text -> [> `Label ] XHTML.T.attrib
      module TABLES :
        sig
          type t = [ `Caption | `Td | `Th | `Tr ]
          type block = [ `Table ]
          type flow = XHTML.T.TABLES.block
        end
      val a_abbr : XHTML.T.text -> [> `Abbr ] XHTML.T.attrib
      val a_align :
        [< `Center | `Char | `Justify | `Left | `Right ] ->
        [> `Align ] XHTML.T.attrib
      val a_axis : XHTML.T.cdata -> [> `Axis ] XHTML.T.attrib
      val a_colspan : XHTML.T.number -> [> `Colspan ] XHTML.T.attrib
      val a_headers : XHTML.T.idrefs -> [> `Headers ] XHTML.T.attrib
      val a_rowspan : XHTML.T.number -> [> `Rowspan ] XHTML.T.attrib
      val a_scope :
        [< `Col | `Colgroup | `Row | `Rowgroup ] ->
        [> `Scope ] XHTML.T.attrib
      val a_summary : XHTML.T.text -> [> `Summary ] XHTML.T.attrib
      val a_valign :
        [< `Baseline | `Bottom | `Middle | `Top ] ->
        [> `Valign ] XHTML.T.attrib
      val a_border : XHTML.T.pixels -> [> `Border ] XHTML.T.attrib
      val a_cellpadding : XHTML.T.length -> [> `Cellpadding ] XHTML.T.attrib
      val a_cellspacing : XHTML.T.length -> [> `Cellspacing ] XHTML.T.attrib
      val a_datapagesize : XHTML.T.cdata -> [> `Datapagesize ] XHTML.T.attrib
      val a_frame :
        [< `Above
         | `Below
         | `Border
         | `Box
         | `Hsides
         | `LHS
         | `RHS
         | `Void
         | `Vsides ] ->
        [> `Frame ] XHTML.T.attrib
      val a_rules :
        [< `All | `Cols | `Groups | `None | `Rows ] ->
        [> `Rules ] XHTML.T.attrib
      val a_char : XHTML.T.character -> [> `Char ] XHTML.T.attrib
      val a_charoff : XHTML.T.length -> [> `Charoff ] XHTML.T.attrib
      module IMAGE : sig type inline = [ `Img ] end
      val a_alt : XHTML.T.text -> [> `Alt ] XHTML.T.attrib
      val a_height : XHTML.T.length -> [> `Height ] XHTML.T.attrib
      val a_longdesc : XHTML.T.uri -> [> `Longdesc ] XHTML.T.attrib
      val a_width : XHTML.T.length -> [> `Width ] XHTML.T.attrib
      type shape = [ `Circle | `Default | `Poly | `Rect ]
      val a_shape : XHTML.T.shape -> [> `Shape ] XHTML.T.attrib
      val a_coords : int list -> [> `Coords ] XHTML.T.attrib
      val a_nohref : [< `Nohref ] -> [> `Nohref ] XHTML.T.attrib
      val a_usemap : XHTML.T.idref -> [> `Usemap ] XHTML.T.attrib
      val a_declare : [< `Declare ] -> [> `Declare ] XHTML.T.attrib
      val a_classid : XHTML.T.uri -> [> `Classid ] XHTML.T.attrib
      val a_codebase : XHTML.T.uri -> [> `Codebase ] XHTML.T.attrib
      val a_data : XHTML.T.uri -> [> `Data ] XHTML.T.attrib
      val a_codetype : XHTML.T.contenttype -> [> `Codetype ] XHTML.T.attrib
      val a_archive : XHTML.T.uris -> [> `Archive ] XHTML.T.attrib
      val a_standby : XHTML.T.text -> [> `Standby ] XHTML.T.attrib
      val a_fs_rows : XHTML.T.multilengths -> [> `FS_Rows ] XHTML.T.attrib
      val a_fs_cols : XHTML.T.multilengths -> [> `FS_Cols ] XHTML.T.attrib
      val a_frameborder :
        [< `One | `Zero ] -> [> `Frameborder ] XHTML.T.attrib
      val a_marginheight :
        XHTML.T.pixels -> [> `Marginheight ] XHTML.T.attrib
      val a_marginwidth : XHTML.T.pixels -> [> `Marginwidth ] XHTML.T.attrib
      val a_noresize : [< `Noresize ] -> [> `Noresize ] XHTML.T.attrib
      val a_scrolling :
        [< `Auto | `No | `Yes ] -> [> `Scrolling ] XHTML.T.attrib
      val a_target : XHTML.T.frametarget -> [> `Target ] XHTML.T.attrib
      module METAINFORMATION : sig type t = [ `Meta ] end
      val a_content : XHTML.T.cdata -> [> `Content ] XHTML.T.attrib
      val a_http_equiv : XHTML.T.nmtoken -> [> `Http_equiv ] XHTML.T.attrib
      val a_scheme : XHTML.T.cdata -> [> `Scheme ] XHTML.T.attrib
      val a_defer : [< `Defer ] -> [> `Defer ] XHTML.T.attrib
      module STYLE_SHEET : sig type t = [ `Style ] end
      val a_media : XHTML.T.mediadesc -> [> `Media ] XHTML.T.attrib
      module LINK : sig type t = [ `Link ] end
      module BASE : sig type t = [ `Base ] end
      type edit = [ `Del | `Ins ]
      type scripttag = [ `Noscript | `Script ]
      type misc = [ `Del | `Ins | `Noscript | `Script ]
      module SPECIAL :
        sig
          type inline = [ `Img | `Map | `Object ]
          type block = [ `Fieldset | `Form | `Table ]
          type flow = [ `Fieldset | `Form | `Img | `Map | `Object | `Table ]
        end
      type i18nclass = [ `Bdo ]
      type block =
          [ `Address
          | `Blockquote
          | `Del
          | `Div
          | `Dl
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `Ins
          | `Noscript
          | `Ol
          | `P
          | `Pre
          | `Script
          | `Table
          | `Ul ]
      type block_sans_form =
          [ `Address
          | `Blockquote
          | `Del
          | `Div
          | `Dl
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `Ins
          | `Noscript
          | `Ol
          | `P
          | `Pre
          | `Script
          | `Table
          | `Ul ]
      type flow =
          [ `A
          | `Abbr
          | `Acronym
          | `Address
          | `B
          | `Bdo
          | `Big
          | `Blockquote
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Div
          | `Dl
          | `Em
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `Ol
          | `P
          | `Pre
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Table
          | `Textarea
          | `Tt
          | `Ul
          | `Var ]
      type flow_sans_table =
          [ `A
          | `Abbr
          | `Acronym
          | `Address
          | `B
          | `Bdo
          | `Big
          | `Blockquote
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Div
          | `Dl
          | `Em
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `Ol
          | `P
          | `Pre
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Table
          | `Textarea
          | `Tt
          | `Ul
          | `Var ]
      type inline =
          [ `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ]
      type inline_sans_a_mix =
          [ `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ]
      type buttoncontent =
          [ `Abbr
          | `Acronym
          | `Address
          | `B
          | `Bdo
          | `Big
          | `Blockquote
          | `Br
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Div
          | `Dl
          | `Em
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `I
          | `Img
          | `Ins
          | `Kbd
          | `Map
          | `Noscript
          | `Object
          | `Ol
          | `P
          | `Pre
          | `Q
          | `Samp
          | `Script
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Table
          | `Tt
          | `Ul
          | `Var ]
      type precontent =
          [ `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Br
          | `Cite
          | `Code
          | `Dfn
          | `Em
          | `I
          | `Kbd
          | `Map
          | `Q
          | `Samp
          | `Script
          | `Span
          | `Strong
          | `Tt
          | `Var ]
      type inline_sans_label =
          [ `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Map
          | `Noscript
          | `Object
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ]
      type heading = XHTML.T.TEXT.heading
      type +'a elt
      type ('a, 'b) nullary =
          ?a:'XHTML.T.attrib list -> unit -> 'XHTML.T.elt
      type ('a, 'b, 'c) unary =
          ?a:'XHTML.T.attrib list -> 'XHTML.T.elt -> 'XHTML.T.elt
      type ('a, 'b, 'c, 'd) binary =
          ?a:'XHTML.T.attrib list ->
          'XHTML.T.elt -> 'XHTML.T.elt -> 'XHTML.T.elt
      type ('a, 'b, 'c) star =
          ?a:'XHTML.T.attrib list -> 'XHTML.T.elt list -> 'XHTML.T.elt
      type ('a, 'b, 'c) plus =
          ?a:'XHTML.T.attrib list ->
          'XHTML.T.elt -> 'XHTML.T.elt list -> 'XHTML.T.elt
      type html = [ `Html ] XHTML.T.elt
      val html :
        ?a:[< `Version | `XML_lang | `XMLns ] XHTML.T.attrib list ->
        [< `Head ] XHTML.T.elt ->
        [< `Body | `Frameset ] XHTML.T.elt -> XHTML.T.html
      val head :
        ?a:[< `Profile | `XML_lang ] XHTML.T.attrib list ->
        [< `Base | `Title ] XHTML.T.elt ->
        [< `Link | `Meta | `Object | `Script | `Style ] XHTML.T.elt list ->
        [> `Head ] XHTML.T.elt
      val title :
        ([< XHTML.T.i18n ], [< `PCDATA ], [> `Title ]) XHTML.T.unary
      val body :
        ([< XHTML.T.common ], [< XHTML.T.block ], [> `Body ]) XHTML.T.star
      val pcdata : string -> [> `PCDATA ] XHTML.T.elt
      val entity : string -> [> `PCDATA ] XHTML.T.elt
      val space : unit -> [> `PCDATA ] XHTML.T.elt
      val cdata : string -> [> `PCDATA ] XHTML.T.elt
      val cdata_script : string -> [> `PCDATA ] XHTML.T.elt
      val cdata_style : string -> [> `PCDATA ] XHTML.T.elt
      val unsafe_data : string -> 'XHTML.T.elt
      val h1 :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `H1 ])
        XHTML.T.star
      val h2 :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `H2 ])
        XHTML.T.star
      val h3 :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `H3 ])
        XHTML.T.star
      val h4 :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `H4 ])
        XHTML.T.star
      val h5 :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `H5 ])
        XHTML.T.star
      val h6 :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `H6 ])
        XHTML.T.star
      val address :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Address ])
        XHTML.T.star
      val blockquote :
        ([< `Cite
          | `Class
          | `Id
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Title
          | `XML_lang ],
         [< `Address
          | `Blockquote
          | `Del
          | `Div
          | `Dl
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `Ins
          | `Noscript
          | `Ol
          | `P
          | `PCDATA
          | `Pre
          | `Script
          | `Table
          | `Ul ],
         [> `Blockquote ])
        XHTML.T.star
      val div :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `Address
          | `B
          | `Bdo
          | `Big
          | `Blockquote
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Div
          | `Dl
          | `Em
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `Ol
          | `P
          | `PCDATA
          | `Pre
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Table
          | `Textarea
          | `Tt
          | `Ul
          | `Var ],
         [> `Div ])
        XHTML.T.star
      val p :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `P ])
        XHTML.T.star
      val pre :
        ([< `Class
          | `Id
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Title
          | `XML_lang
          | `XML_space ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Br
          | `Cite
          | `Code
          | `Dfn
          | `Em
          | `I
          | `Kbd
          | `Map
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Span
          | `Strong
          | `Tt
          | `Var ],
         [> `Pre ])
        XHTML.T.star
      val abbr :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Abbr ])
        XHTML.T.star
      val acronym :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Acronym ])
        XHTML.T.star
      val br : ([< XHTML.T.core ], [> `Br ]) XHTML.T.nullary
      val cite :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Cite ])
        XHTML.T.star
      val code :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Code ])
        XHTML.T.star
      val dfn :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Dfn ])
        XHTML.T.star
      val em :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Em ])
        XHTML.T.star
      val kbd :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Kbd ])
        XHTML.T.star
      val q :
        ([< `Cite
          | `Class
          | `Id
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Title
          | `XML_lang ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Q ])
        XHTML.T.star
      val samp :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Samp ])
        XHTML.T.star
      val span :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Span ])
        XHTML.T.star
      val strong :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Strong ])
        XHTML.T.star
      val var :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Var ])
        XHTML.T.star
      val a :
        ([< `Accesskey
          | `Charset
          | `Class
          | `Coords
          | `Href
          | `Hreflang
          | `Id
          | `Name_01_00
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Rel
          | `Rev
          | `Shape
          | `Tabindex
          | `Target
          | `Title
          | `Type
          | `XML_lang ],
         [< `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `A ])
        XHTML.T.star
      val dl : ([< XHTML.T.common ], [< `Dd | `Dt ], [> `Dl ]) XHTML.T.plus
      val ol : ([< XHTML.T.common ], [< `Li ], [> `Ol ]) XHTML.T.plus
      val ul : ([< XHTML.T.common ], [< `Li ], [> `Ul ]) XHTML.T.plus
      val dd :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `Address
          | `B
          | `Bdo
          | `Big
          | `Blockquote
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Div
          | `Dl
          | `Em
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `Ol
          | `P
          | `PCDATA
          | `Pre
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Table
          | `Textarea
          | `Tt
          | `Ul
          | `Var ],
         [> `Dd ])
        XHTML.T.star
      val dt :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Dt ])
        XHTML.T.star
      val li :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `Address
          | `B
          | `Bdo
          | `Big
          | `Blockquote
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Div
          | `Dl
          | `Em
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `Ol
          | `P
          | `PCDATA
          | `Pre
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Table
          | `Textarea
          | `Tt
          | `Ul
          | `Var ],
         [> `Li ])
        XHTML.T.star
      val hr : ([< XHTML.T.common ], [> `Hr ]) XHTML.T.nullary
      val b :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `B ])
        XHTML.T.star
      val big :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Big ])
        XHTML.T.star
      val i :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `I ])
        XHTML.T.star
      val small :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Small ])
        XHTML.T.star
      val sub :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Sub ])
        XHTML.T.star
      val sup :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Sup ])
        XHTML.T.star
      val tt :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Tt ])
        XHTML.T.star
      val bdo :
        ([< `Class | `Dir | `Id | `Title | `XML_lang ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Bdo ])
        XHTML.T.star
      val area :
        alt:XHTML.T.text ->
        ([< `Accesskey
          | `Class
          | `Coords
          | `Href
          | `Id
          | `Nohref
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Shape
          | `Tabindex
          | `Title
          | `XML_lang ],
         [> `Area ])
        XHTML.T.nullary
      val map :
        id:XHTML.T.id ->
        ([< `Class | `Title | `XML_lang | `XMLns ],
         [< `Address
          | `Area
          | `Blockquote
          | `Del
          | `Div
          | `Dl
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `Ins
          | `Noscript
          | `Ol
          | `P
          | `Pre
          | `Script
          | `Table
          | `Ul ],
         [> `Map ])
        XHTML.T.plus
      val del :
        ([< `Cite
          | `Class
          | `Datetime
          | `Id
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Title
          | `XML_lang ],
         [< `A
          | `Abbr
          | `Acronym
          | `Address
          | `B
          | `Bdo
          | `Big
          | `Blockquote
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Div
          | `Dl
          | `Em
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `Ol
          | `P
          | `PCDATA
          | `Pre
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Table
          | `Textarea
          | `Tt
          | `Ul
          | `Var ],
         [> `Del ])
        XHTML.T.star
      val ins :
        ([< `Cite
          | `Class
          | `Datetime
          | `Id
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Title
          | `XML_lang ],
         [< `A
          | `Abbr
          | `Acronym
          | `Address
          | `B
          | `Bdo
          | `Big
          | `Blockquote
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Div
          | `Dl
          | `Em
          | `Fieldset
          | `Form
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Label
          | `Map
          | `Noscript
          | `Object
          | `Ol
          | `P
          | `PCDATA
          | `Pre
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Table
          | `Textarea
          | `Tt
          | `Ul
          | `Var ],
         [> `Ins ])
        XHTML.T.star
      val script :
        contenttype:XHTML.T.contenttype ->
        ([< `Charset | `Defer | `Src | `XML_space | `XMLns ], [< `PCDATA ],
         [> `Script ])
        XHTML.T.unary
      val noscript :
        ([< XHTML.T.common ], [< XHTML.T.block ], [> `Noscript ])
        XHTML.T.plus
      module Basic_Forms :
        sig
          val form :
            action:XHTML.T.uri ->
            ([< `Class
              | `Enctype
              | `Id
              | `Method
              | `Name_01_00
              | `OnClick
              | `OnDblClick
              | `OnKeyDown
              | `OnKeyPress
              | `OnKeyUp
              | `OnMouseDown
              | `OnMouseMove
              | `OnMouseOut
              | `OnMouseOver
              | `OnMouseUp
              | `Target
              | `Title
              | `XML_lang ],
             [< XHTML.T.block_sans_form ], [> `Form ])
            XHTML.T.plus
          val input :
            ([< `Accesskey
              | `Checked
              | `Class
              | `Id
              | `Input_Type
              | `Maxlength
              | `Name
              | `OnClick
              | `OnDblClick
              | `OnKeyDown
              | `OnKeyPress
              | `OnKeyUp
              | `OnMouseDown
              | `OnMouseMove
              | `OnMouseOut
              | `OnMouseOver
              | `OnMouseUp
              | `Size
              | `Src
              | `Tabindex
              | `Title
              | `Usemap
              | `Value
              | `XML_lang ],
             [> `Input ])
            XHTML.T.nullary
          val label :
            ([< `Accesskey
              | `Class
              | `For
              | `Id
              | `OnClick
              | `OnDblClick
              | `OnKeyDown
              | `OnKeyPress
              | `OnKeyUp
              | `OnMouseDown
              | `OnMouseMove
              | `OnMouseOut
              | `OnMouseOver
              | `OnMouseUp
              | `Title
              | `XML_lang ],
             [< `A
              | `Abbr
              | `Acronym
              | `B
              | `Bdo
              | `Big
              | `Br
              | `Button
              | `Cite
              | `Code
              | `Del
              | `Dfn
              | `Em
              | `I
              | `Img
              | `Input
              | `Ins
              | `Kbd
              | `Map
              | `Noscript
              | `Object
              | `PCDATA
              | `Q
              | `Samp
              | `Script
              | `Select
              | `Small
              | `Span
              | `Strong
              | `Sub
              | `Sup
              | `Textarea
              | `Tt
              | `Var ],
             [> `Label ])
            XHTML.T.star
          val option :
            ([< `Class
              | `Id
              | `OnClick
              | `OnDblClick
              | `OnKeyDown
              | `OnKeyPress
              | `OnKeyUp
              | `OnMouseDown
              | `OnMouseMove
              | `OnMouseOut
              | `OnMouseOver
              | `OnMouseUp
              | `Selected
              | `Title
              | `Value
              | `XML_lang ],
             [< `PCDATA ], [> `Option ])
            XHTML.T.unary
          val select :
            ([< `Class
              | `Id
              | `Multiple
              | `Name
              | `OnClick
              | `OnDblClick
              | `OnKeyDown
              | `OnKeyPress
              | `OnKeyUp
              | `OnMouseDown
              | `OnMouseMove
              | `OnMouseOut
              | `OnMouseOver
              | `OnMouseUp
              | `Size
              | `Tabindex
              | `Title
              | `XML_lang ],
             [< `Option ], [> `Select ])
            XHTML.T.plus
          val textarea :
            rows:XHTML.T.number ->
            cols:XHTML.T.number ->
            ([< `Accesskey
              | `Class
              | `Id
              | `Name
              | `OnClick
              | `OnDblClick
              | `OnKeyDown
              | `OnKeyPress
              | `OnKeyUp
              | `OnMouseDown
              | `OnMouseMove
              | `OnMouseOut
              | `OnMouseOver
              | `OnMouseUp
              | `Tabindex
              | `Title
              | `XML_lang ],
             [< `PCDATA ], [> `Textarea ])
            XHTML.T.unary
        end
      val form :
        action:XHTML.T.uri ->
        ([< `Accept
          | `Accept_charset
          | `Class
          | `Enctype
          | `Id
          | `Method
          | `Name_01_00
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Target
          | `Title
          | `XML_lang ],
         [< `Address
          | `Blockquote
          | `Del
          | `Div
          | `Dl
          | `Fieldset
          | `H1
          | `H2
          | `H3
          | `H4
          | `H5
          | `H6
          | `Hr
          | `Ins
          | `Noscript
          | `Ol
          | `P
          | `Pre
          | `Script
          | `Table
          | `Ul ],
         [> `Form ])
        XHTML.T.plus
      val input :
        ([< `Accept
          | `Accesskey
          | `Alt
          | `Checked
          | `Class
          | `Disabled
          | `Id
          | `Input_Type
          | `Maxlength
          | `Name
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Readonly
          | `Size
          | `Src
          | `Tabindex
          | `Title
          | `Usemap
          | `Value
          | `XML_lang ],
         [> `Input ])
        XHTML.T.nullary
      val label :
        ([< `Accesskey
          | `Class
          | `For
          | `Id
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Title
          | `XML_lang ],
         [< `A
          | `Abbr
          | `Acronym
          | `B
          | `Bdo
          | `Big
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Em
          | `I
          | `Img
          | `Input
          | `Ins
          | `Kbd
          | `Map
          | `Noscript
          | `Object
          | `PCDATA
          | `Q
          | `Samp
          | `Script
          | `Select
          | `Small
          | `Span
          | `Strong
          | `Sub
          | `Sup
          | `Textarea
          | `Tt
          | `Var ],
         [> `Label ])
        XHTML.T.star
      val optgroup :
        label:XHTML.T.text ->
        ([< `Class
          | `Disabled
          | `Id
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Title
          | `XML_lang ],
         [< `Option ], [> `Optgroup ])
        XHTML.T.plus
      val option :
        ([< `Class
          | `Disabled
          | `Id
          | `Label
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Selected
          | `Title
          | `Value
          | `XML_lang ],
         [< `PCDATA ], [> `Option ])
        XHTML.T.unary
      val select :
        ([< `Class
          | `Disabled
          | `Id
          | `Multiple
          | `Name
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Size
          | `Tabindex
          | `Title
          | `XML_lang ],
         [< `Optgroup | `Option ], [> `Select ])
        XHTML.T.plus
      val textarea :
        rows:XHTML.T.number ->
        cols:XHTML.T.number ->
        ([< `Accesskey
          | `Class
          | `Disabled
          | `Id
          | `Name
          | `OnClick
          | `OnDblClick
          | `OnKeyDown
          | `OnKeyPress
          | `OnKeyUp
          | `OnMouseDown
          | `OnMouseMove
          | `OnMouseOut
          | `OnMouseOver
          | `OnMouseUp
          | `Readonly
          | `Tabindex
          | `Title
          | `XML_lang ],
         [< `PCDATA ], [> `Textarea ])
        XHTML.T.unary
      val fieldset :
        ([< XHTML.T.common ],
         [< `A
          | `Abbr
          | `Acronym
          | `Address
          | `B
          | `Bdo
          | `Big
          | `Blockquote
          | `Br
          | `Button
          | `Cite
          | `Code
          | `Del
          | `Dfn
          | `Div
          | `Dl
          | `Em
          | `Fieldset
          |&n