sig
  module Info : XML_sigs.Info
  type uri = XML.uri
  val string_of_uri : uri -> string
  val uri_of_string : string -> uri
  type +'a attrib
  val to_xmlattribs : 'a attrib list -> XML.attrib list
  val to_attrib : XML.attrib -> 'a attrib
  val a_class : XHTML_types.nmtokens -> [> `Class ] attrib
  val a_id : XHTML_types.id -> [> `Id ] attrib
  val a_title : XHTML_types.cdata -> [> `Title ] attrib
  val a_xml_lang : XHTML_types.nmtoken -> [> `XML_lang ] attrib
  val a_onblur : XML.event -> [> `OnBlur ] attrib
  val a_onclick : XML.event -> [> `OnClick ] attrib
  val a_ondblclick : XML.event -> [> `OnDblClick ] attrib
  val a_onchange : XML.event -> [> `OnChange ] attrib
  val a_onfocus : XML.event -> [> `OnFocus ] attrib
  val a_onload : XML.event -> [> `OnLoad ] attrib
  val a_onunload : XML.event -> [> `OnUnload ] attrib
  val a_onreset : XML.event -> [> `OnReset ] attrib
  val a_onselect : XML.event -> [> `OnSelect ] attrib
  val a_onsubmit : XML.event -> [> `OnSubmit ] attrib
  val a_onmousedown : XML.event -> [> `OnMouseDown ] attrib
  val a_onmouseup : XML.event -> [> `OnMouseUp ] attrib
  val a_onmouseover : XML.event -> [> `OnMouseOver ] attrib
  val a_onmousemove : XML.event -> [> `OnMouseMove ] attrib
  val a_onmouseout : XML.event -> [> `OnMouseOut ] attrib
  val a_onkeypress : XML.event -> [> `OnKeyPress ] attrib
  val a_onkeydown : XML.event -> [> `OnKeyDown ] attrib
  val a_onkeyup : XML.event -> [> `OnKeyUp ] attrib
  val a_profile : XML.uri -> [> `Profile ] attrib
  val a_version : XHTML_types.cdata -> [> `Version ] attrib
  val a_xmlns : [< `W3_org_1999_xhtml ] -> [> `XMLns ] attrib
  val a_cite : XML.uri -> [> `Cite ] attrib
  val a_xml_space : [< `Preserve ] -> [> `XML_space ] attrib
  val a_accesskey : XHTML_types.character -> [> `Accesskey ] attrib
  val a_charset : XHTML_types.charset -> [> `Charset ] attrib
  val a_accept_charset : XHTML_types.charset -> [> `Accept_charset ] attrib
  val a_accept : XHTML_types.contenttype -> [> `Accept ] attrib
  val a_href : XML.uri -> [> `Href ] attrib
  val a_hreflang : XHTML_types.languagecode -> [> `Hreflang ] attrib
  val a_rel : XHTML_types.linktypes -> [> `Rel ] attrib
  val a_rev : XHTML_types.linktypes -> [> `Rev ] attrib
  val a_tabindex : XHTML_types.number -> [> `Tabindex ] attrib
  val a_type : XHTML_types.contenttype -> [> `Type ] attrib
  val a_datetime : XHTML_types.cdata -> [> `Datetime ] attrib
  val a_dir : [< `Ltr | `Rtl ] -> [> `Dir ] attrib
  val a_action : XML.uri -> [> `Action ] attrib
  val a_checked : [< `Checked ] -> [> `Checked ] attrib
  val a_cols : XHTML_types.number -> [> `Cols ] attrib
  val a_enctype : XHTML_types.contenttype -> [> `Enctype ] attrib
  val a_for : XHTML_types.idref -> [> `For ] attrib
  val a_maxlength : XHTML_types.number -> [> `Maxlength ] attrib
  val a_method : [< `Get | `Post ] -> [> `Method ] attrib
  val a_multiple : [< `Multiple ] -> [> `Multiple ] attrib
  val a_name : XHTML_types.cdata -> [> `Name ] attrib
  val a_rows : XHTML_types.number -> [> `Rows ] attrib
  val a_selected : [< `Selected ] -> [> `Selected ] attrib
  val a_size : XHTML_types.number -> [> `Size ] attrib
  val a_src : XML.uri -> [> `Src ] attrib
  val a_input_type :
    [< `Button
     | `Checkbox
     | `File
     | `Hidden
     | `Image
     | `Password
     | `Radio
     | `Reset
     | `Submit
     | `Text ] ->
    [> `Input_Type ] attrib
  val a_value : XHTML_types.cdata -> [> `Value ] attrib
  val a_value_type : [< `Data | `Object | `Ref ] -> [> `Value_Type ] attrib
  val a_disabled : [< `Disabled ] -> [> `Disabled ] attrib
  val a_readonly : [< `Readonly ] -> [> `Readonly ] attrib
  val a_button_type :
    [< `Button | `Reset | `Submit ] -> [> `Button_Type ] attrib
  val a_label : XHTML_types.text -> [> `Label ] attrib
  val a_abbr : XHTML_types.text -> [> `Abbr ] attrib
  val a_align :
    [< `Center | `Char | `Justify | `Left | `Right ] -> [> `Align ] attrib
  val a_axis : XHTML_types.cdata -> [> `Axis ] attrib
  val a_colspan : XHTML_types.number -> [> `Colspan ] attrib
  val a_headers : XHTML_types.idrefs -> [> `Headers ] attrib
  val a_rowspan : XHTML_types.number -> [> `Rowspan ] attrib
  val a_scope :
    [< `Col | `Colgroup | `Row | `Rowgroup ] -> [> `Scope ] attrib
  val a_summary : XHTML_types.text -> [> `Summary ] attrib
  val a_valign :
    [< `Baseline | `Bottom | `Middle | `Top ] -> [> `Valign ] attrib
  val a_border : XHTML_types.pixels -> [> `Border ] attrib
  val a_cellpadding : XHTML_types.length -> [> `Cellpadding ] attrib
  val a_cellspacing : XHTML_types.length -> [> `Cellspacing ] attrib
  val a_datapagesize : XHTML_types.cdata -> [> `Datapagesize ] attrib
  val a_frame :
    [< `Above
     | `Below
     | `Border
     | `Box
     | `Hsides
     | `LHS
     | `RHS
     | `Void
     | `Vsides ] ->
    [> `Frame ] attrib
  val a_rules :
    [< `All | `Cols | `Groups | `None | `Rows ] -> [> `Rules ] attrib
  val a_char : XHTML_types.character -> [> `Char ] attrib
  val a_charoff : XHTML_types.length -> [> `Charoff ] attrib
  val a_span : XHTML_types.number -> [> `Span ] attrib
  val a_alt : XHTML_types.text -> [> `Alt ] attrib
  val a_height : XHTML_types.length -> [> `Height ] attrib
  val a_longdesc : XML.uri -> [> `Longdesc ] attrib
  val a_width : XHTML_types.length -> [> `Width ] attrib
  type shape = [ `Circle | `Default | `Poly | `Rect ]
  val a_shape : shape -> [> `Shape ] attrib
  val a_coords : int list -> [> `Coords ] attrib
  val a_nohref : [< `Nohref ] -> [> `Nohref ] attrib
  val a_usemap : XHTML_types.idref -> [> `Usemap ] attrib
  val a_ismap : [< `Ismap ] -> [> `Ismap ] attrib
  val a_declare : [< `Declare ] -> [> `Declare ] attrib
  val a_classid : XML.uri -> [> `Classid ] attrib
  val a_codebase : XML.uri -> [> `Codebase ] attrib
  val a_data : XML.uri -> [> `Data ] attrib
  val a_codetype : XHTML_types.contenttype -> [> `Codetype ] attrib
  val a_archive : XML.uri list -> [> `Archive ] attrib
  val a_standby : XHTML_types.text -> [> `Standby ] attrib
  val a_fs_rows : XHTML_types.multilengths -> [> `FS_Rows ] attrib
  val a_fs_cols : XHTML_types.multilengths -> [> `FS_Cols ] attrib
  val a_frameborder : [< `One | `Zero ] -> [> `Frameborder ] attrib
  val a_marginheight : XHTML_types.pixels -> [> `Marginheight ] attrib
  val a_marginwidth : XHTML_types.pixels -> [> `Marginwidth ] attrib
  val a_noresize : [< `Noresize ] -> [> `Noresize ] attrib
  val a_scrolling : [< `Auto | `No | `Yes ] -> [> `Scrolling ] attrib
  val a_target : XHTML_types.frametarget -> [> `Target ] attrib
  val a_content : XHTML_types.cdata -> [> `Content ] attrib
  val a_http_equiv : XHTML_types.nmtoken -> [> `Http_equiv ] attrib
  val a_scheme : XHTML_types.cdata -> [> `Scheme ] attrib
  val a_defer : [< `Defer ] -> [> `Defer ] attrib
  val a_media : XHTML_types.mediadesc -> [> `Media ] attrib
  val a_style : string -> [> `Style_Attr ] attrib
  type +'a elt
  type ('a, 'b) nullary = ?a:'a attrib list -> unit -> 'b elt
  type ('a, 'b, 'c) unary = ?a:'a attrib list -> 'b elt -> 'c elt
  type ('a, 'b, 'c, 'd) binary =
      ?a:'a attrib list -> 'b elt -> 'c elt -> 'd elt
  type ('a, 'b, 'c, 'd, 'e, 'f) quadry =
      ?a:'a attrib list -> 'b elt -> 'c elt -> 'd elt -> 'e elt -> 'f elt
  type ('a, 'b, 'c) star = ?a:'a attrib list -> 'b elt list -> 'c elt
  type ('a, 'b, 'c) plus =
      ?a:'a attrib list -> 'b elt -> 'b elt list -> 'c elt
  type html = [ `Html ] elt
  val html :
    ?a:[< `Dir | `Id | `Version | `XML_lang | `XMLns ] attrib list ->
    [< `Head ] elt -> [< `Body | `Frameset ] elt -> html
  val head :
    ?a:[< `Dir | `Id | `Profile | `XML_lang ] attrib list ->
    [< `Base | `Title ] elt ->
    [< `Link | `Meta | `Object | `Script | `Style ] elt list ->
    [> `Head ] elt
  val title :
    ([< XHTML_types.title_attrib ], [< XHTML_types.title_content ],
     [> XHTML_types.title ])
    unary
  val body :
    ([< XHTML_types.body_attrib ], [< XHTML_types.body_content ],
     [> XHTML_types.body ])
    star
  val pcdata : string -> [> `PCDATA ] elt
  val entity : string -> [> `PCDATA ] elt
  val space : unit -> [> `PCDATA ] elt
  val cdata : string -> [> `PCDATA ] elt
  val cdata_script : string -> [> `PCDATA ] elt
  val cdata_style : string -> [> `PCDATA ] elt
  val unsafe_data : string -> 'a elt
  val h1 :
    ([< XHTML_types.h1_attrib ], [< XHTML_types.h1_content ],
     [> XHTML_types.h1 ])
    star
  val h2 :
    ([< XHTML_types.h2_attrib ], [< XHTML_types.h2_content ],
     [> XHTML_types.h2 ])
    star
  val h3 :
    ([< XHTML_types.h3_attrib ], [< XHTML_types.h3_content ],
     [> XHTML_types.h3 ])
    star
  val h4 :
    ([< XHTML_types.h4_attrib ], [< XHTML_types.h4_content ],
     [> XHTML_types.h4 ])
    star
  val h5 :
    ([< XHTML_types.h5_attrib ], [< XHTML_types.h5_content ],
     [> XHTML_types.h5 ])
    star
  val h6 :
    ([< XHTML_types.h6_attrib ], [< XHTML_types.h6_content ],
     [> XHTML_types.h6 ])
    star
  val address :
    ([< XHTML_types.address_attrib ], [< XHTML_types.address_content ],
     [> XHTML_types.address ])
    star
  val blockquote :
    ([< `Cite
      | `Class
      | `Dir
      | `Id
      | `OnClick
      | `OnDblClick
      | `OnKeyDown
      | `OnKeyPress
      | `OnKeyUp
      | `OnMouseDown
      | `OnMouseMove
      | `OnMouseOut
      | `OnMouseOver
      | `OnMouseUp
      | `Style_Attr
      | `Title
      | `XML_lang
      | `XML_space ],
     [< `Address
      | `Blockquote
      | `Del
      | `Div
      | `Dl
      | `Fieldset
      | `Form
      | `H1
      | `H2
      | `H3
      | `H4
      | `H5
      | `H6
      | `Hr
      | `Ins
      | `Noscript
      | `Ol
      | `P
      | `PCDATA
      | `Pre
      | `Script
      | `Table
      | `Ul ],
     [> `Blockquote ])
    star
  val div :
    ([< XHTML_types.div_attrib ], [< XHTML_types.div_content ],
     [> XHTML_types.div ])
    star
  val p :
    ([< XHTML_types.p_attrib ], [< XHTML_types.p_content ],
     [> XHTML_types.p ])
    star
  val pre :
    ([< `Class
      | `Dir
      | `Id
      | `OnClick
      | `OnDblClick
      | `OnKeyDown
      | `OnKeyPress
      | `OnKeyUp
      | `OnMouseDown
      | `OnMouseMove
      | `OnMouseOut
      | `OnMouseOver
      | `OnMouseUp
      | `Style_Attr
      | `Title
      | `XML_lang
      | `XML_space ],
     [< `A
      | `Abbr
      | `Acronym
      | `B
      | `Bdo
      | `Big
      | `Br
      | `Button
      | `Cite
      | `Code
      | `Del
      | `Dfn
      | `Em
      | `I
      | `Iframe
      | `Img
      | `Input
      | `Ins
      | `Kbd
      | `Label
      | `Map
      | `Noscript
      | `Object
      | `PCDATA
      | `Q
      | `Ruby_complex
      | `Ruby_simple1
      | `Ruby_simple2
      | `Samp
      | `Script
      | `Select
      | `Small
      | `Span
      | `Strong
      | `Sub
      | `Sup
      | `Textarea
      | `Tt
      | `Var ],
     [> `Pre ])
    star
  val abbr :
    ([< XHTML_types.abbr_attrib ], [< XHTML_types.abbr_content ],
     [> XHTML_types.abbr ])
    star
  val acronym :
    ([< XHTML_types.acronym_attrib ], [< XHTML_types.acronym_content ],
     [> XHTML_types.acronym ])
    star
  val br : ([< XHTML_types.br_attrib ], [> XHTML_types.br ]) nullary
  val cite :
    ([< XHTML_types.cite_attrib ], [< XHTML_types.cite_content ],
     [> XHTML_types.cite ])
    star
  val code :
    ([< XHTML_types.code_attrib ], [< XHTML_types.code_content ],
     [> XHTML_types.code ])
    star
  val dfn :
    ([< XHTML_types.dfn_attrib ], [< XHTML_types.dfn_content ],
     [> XHTML_types.dfn ])
    star
  val em :
    ([< XHTML_types.em_attrib ], [< XHTML_types.em_content ],
     [> XHTML_types.em ])
    star
  val kbd :
    ([< XHTML_types.kbd_attrib ], [< XHTML_types.kbd_content ],
     [> XHTML_types.kbd ])
    star
  val q :
    ([< XHTML_types.q_attrib ], [< XHTML_types.q_content ],
     [> XHTML_types.q ])
    star
  val samp :
    ([< XHTML_types.samp_attrib ], [< XHTML_types.samp_content ],
     [> XHTML_types.samp ])
    star
  val span :
    ([< XHTML_types.span_attrib ], [< XHTML_types.span_content ],
     [> XHTML_types.span ])
    star
  val strong :
    ([< XHTML_types.strong_attrib ], [< XHTML_types.strong_content ],
     [> XHTML_types.strong ])
    star
  val var :
    ([< XHTML_types.var_attrib ], [< XHTML_types.var_content ],
     [> XHTML_types.var ])
    star
  val a :
    ([< XHTML_types.a_attrib ], [< XHTML_types.a_content ],
     [> XHTML_types.a ])
    star
  val dl :
    ([< XHTML_types.dl_attrib ], [< XHTML_types.dl_content ],
     [> XHTML_types.dl ])
    plus
  val ol :
    ([< XHTML_types.ol_attrib ], [< XHTML_types.ol_content ],
     [> XHTML_types.ol ])
    plus
  val ul :
    ([< XHTML_types.ul_attrib ], [< XHTML_types.ul_content ],
     [> XHTML_types.ul ])
    plus
  val dd :
    ([< XHTML_types.dd_attrib ], [< XHTML_types.dd_content ],
     [> XHTML_types.dd ])
    star
  val dt :
    ([< XHTML_types.dt_attrib ], [< XHTML_types.dt_content ],
     [> XHTML_types.dt ])
    star
  val li :
    ([< XHTML_types.li_attrib ], [< XHTML_types.li_content ],
     [> XHTML_types.li ])
    star
  val hr : ([< XHTML_types.hr_attrib ], [> XHTML_types.hr ]) nullary
  val b :
    ([< XHTML_types.b_attrib ], [< XHTML_types.b_content ],
     [> XHTML_types.b ])
    star
  val big :
    ([< XHTML_types.big_attrib ], [< XHTML_types.big_content ],
     [> XHTML_types.big ])
    star
  val i :
    ([< XHTML_types.i_attrib ], [< XHTML_types.i_content ],
     [> XHTML_types.i ])
    star
  val small :
    ([< XHTML_types.small_attrib ], [< XHTML_types.small_content ],
     [> XHTML_types.small ])
    star
  val sub :
    ([< XHTML_types.sub_attrib ], [< XHTML_types.sub_content ],
     [> XHTML_types.sub ])
    star
  val sup :
    ([< XHTML_types.sup_attrib ], [< XHTML_types.sup_content ],
     [> XHTML_types.sup ])
    star
  val tt :
    ([< XHTML_types.tt_attrib ], [< XHTML_types.tt_content ],
     [> XHTML_types.tt ])
    star
  val bdo :
    dir:[< `Ltr | `Rtl ] ->
    ([< XHTML_types.bdo_attrib ], [< XHTML_types.bdo_content ],
     [> XHTML_types.bdo ])
    star
  val area :
    alt:XHTML_types.text ->
    ([< XHTML_types.area_attrib ], [> XHTML_types.area ]) nullary
  val map :
    id:XHTML_types.id ->
    ([< XHTML_types.map_attrib ], [< XHTML_types.map_content ],
     [> XHTML_types.map ])
    plus
  val del :
    ([< XHTML_types.del_attrib ], [< XHTML_types.del_content ],
     [> XHTML_types.del ])
    star
  val ins :
    ([< XHTML_types.ins_attrib ], [< XHTML_types.ins_content ],
     [> XHTML_types.ins ])
    star
  val script :
    contenttype:XHTML_types.contenttype ->
    ([< XHTML_types.script_attrib ], [< XHTML_types.script_content ],
     [> XHTML_types.script ])
    unary
  val noscript :
    ([< XHTML_types.noscript_attrib ], [< XHTML_types.noscript_content ],
     [> XHTML_types.noscript ])
    plus
  module Basic_Forms :
    sig
      val form :
        action:XML.uri ->
        ([< XHTML_types.form_attrib ], [< XHTML_types.form_content ],
         [> XHTML_types.form ])
        plus
      val input :
        ([< XHTML_types.input_attrib ], [> XHTML_types.input ]) nullary
      val label :
        ([< XHTML_types.label_attrib ], [< XHTML_types.label_content ],
         [> XHTML_types.label ])
        star
      val option :
        ([< XHTML_types.option_attrib ], [< XHTML_types.option_content ],
         [> XHTML_types.selectoption ])
        unary
      val select :
        ([< XHTML_types.select_attrib ], [< XHTML_types.select_content ],
         [> XHTML_types.select ])
        plus
      val textarea :
        rows:XHTML_types.number ->
        cols:XHTML_types.number ->
        ([< XHTML_types.textarea_attrib ], [< XHTML_types.textarea_content ],
         [> XHTML_types.textarea ])
        unary
    end
  val form :
    action:XML.uri ->
    ([< XHTML_types.form_attrib ], [< XHTML_types.form_content ],
     [> XHTML_types.form ])
    plus
  val input : ([< XHTML_types.input_attrib ], [> XHTML_types.input ]) nullary
  val label :
    ([< XHTML_types.label_attrib ], [< XHTML_types.label_content ],
     [> XHTML_types.label ])
    star
  val optgroup :
    label:XHTML_types.text ->
    ([< XHTML_types.optgroup_attrib ], [< XHTML_types.optgroup_content ],
     [> XHTML_types.optgroup ])
    plus
  val option :
    ([< XHTML_types.option_attrib ], [< XHTML_types.option_content ],
     [> XHTML_types.selectoption ])
    unary
  val select :
    ([< XHTML_types.select_attrib ], [< XHTML_types.select_content ],
     [> XHTML_types.select ])
    plus
  val textarea :
    rows:XHTML_types.number ->
    cols:XHTML_types.number ->
    ([< XHTML_types.textarea_attrib ], [< XHTML_types.textarea_content ],
     [> XHTML_types.textarea ])
    unary
  val fieldset :
    ([< XHTML_types.fieldset_attrib ], [< XHTML_types.fieldset_content ],
     [> XHTML_types.fieldset ])
    star
  val legend :
    ([< XHTML_types.legend_attrib ], [< XHTML_types.legend_content ],
     [> XHTML_types.legend ])
    star
  val button :
    ([< XHTML_types.button_attrib ], [< XHTML_types.button_content ],
     [> XHTML_types.button ])
    star
  module Basic_Tables :
    sig
      val a_align : [< `Center | `Left | `Right ] -> [> `Align ] attrib
      val a_scope : [< `Col | `Row ] -> [> `Scope ] attrib
      val a_valign : [< `Bottom | `Middle | `Top ] -> [> `Valign ] attrib
      val caption :
        ([< XHTML_types.caption_attrib ], [< XHTML_types.caption_content ],
         [> XHTML_types.caption ])
        star
      val table :
        ?caption:[< `Caption ] elt ->
        ([< XHTML_types.table_attrib ], [< XHTML_types.table_content ],
         [> XHTML_types.table ])
        plus
      val td :
        ([< XHTML_types.td_attrib ], [< XHTML_types.td_content ],
         [> XHTML_types.td ])
        star
      val th :
        ([< XHTML_types.th_attrib ], [< XHTML_types.th_content ],
         [> XHTML_types.th ])
        star
      val tr :
        ([< XHTML_types.tr_attrib ], [< XHTML_types.tr_content ],
         [> XHTML_types.tr ])
        plus
    end
  val caption :
    ([< XHTML_types.caption_attrib ], [< XHTML_types.caption_content ],
     [> XHTML_types.caption ])
    star
  val table :
    ?caption:[< `Caption ] elt ->
    ?columns:[< `Colgroups of [< `Colgroup ] elt list
              | `Cols of [< `Col ] elt list ] ->
    ([< `Border
      | `Cellpadding
      | `Cellspacing
      | `Class
      | `Datapagesize
      | `Dir
      | `Frame
      | `Id
      | `OnClick
      | `OnDblClick
      | `OnKeyDown
      | `OnKeyPress
      | `OnKeyUp
      | `OnMouseDown
      | `OnMouseMove
      | `OnMouseOut
      | `OnMouseOver
      | `OnMouseUp
      | `Rules
      | `Style_Attr
      | `Summary
      | `Title
      | `Width
      | `XML_lang
      | `XML_space ],
     [< `Tr ], [> `Table ])
    plus
  val tablex :
    ?caption:[< `Caption ] elt ->
    ?columns:[< `Colgroups of [< `Colgroup ] elt list
              | `Cols of [< `Col ] elt list ] ->
    ?thead:[< `Thead ] elt ->
    ?tfoot:[< `Tfoot ] elt ->
    ([< `Border
      | `Cellpadding
      | `Cellspacing
      | `Class
      | `Datapagesize
      | `Dir
      | `Frame
      | `Id
      | `OnClick
      | `OnDblClick
      | `OnKeyDown
      | `OnKeyPress
      | `OnKeyUp
      | `OnMouseDown
      | `OnMouseMove
      | `OnMouseOut
      | `OnMouseOver
      | `OnMouseUp
      | `Rules
      | `Style_Attr
      | `Summary
      | `Title
      | `Width
      | `XML_lang
      | `XML_space ],
     [< `Tbody ], [> `Table ])
    plus
  val td :
    ([< XHTML_types.td_attrib ], [< XHTML_types.td_content ],
     [> XHTML_types.td ])
    star
  val th :
    ([< XHTML_types.th_attrib ], [< XHTML_types.th_content ],
     [> XHTML_types.th ])
    star
  val tr :
    ([< XHTML_types.tr_attrib ], [< XHTML_types.tr_content ],
     [> XHTML_types.tr ])
    plus
  val col : ([< XHTML_types.col_attrib ], [> XHTML_types.col ]) nullary
  val colgroup :
    ([< XHTML_types.colgroup_attrib ], [< XHTML_types.colgroup_content ],
     [> XHTML_types.colgroup ])
    star
  val thead :
    ([< XHTML_types.thead_attrib ], [< XHTML_types.thead_content ],
     [> XHTML_types.thead ])
    plus
  val tbody :
    ([< XHTML_types.tbody_attrib ], [< XHTML_types.tbody_content ],
     [> XHTML_types.tbody ])
    plus
  val tfoot :
    ([< XHTML_types.tfoot_attrib ], [< XHTML_types.tfoot_content ],
     [> XHTML_types.tfoot ])
    plus
  val img :
    src:XML.uri ->
    alt:XHTML_types.text ->
    ([< XHTML_types.img_attrib ], [> XHTML_types.img ]) nullary
  val object_ :
    ([< XHTML_types.object__attrib ], [< XHTML_types.object__content ],
     [> XHTML_types.object_ ])
    star
  val param :
    name:XHTML_types.text ->
    ([< XHTML_types.param_attrib ], [> XHTML_types.param ]) nullary
  val frameset :
    ?noframes:[< `Noframes ] elt ->
    ([< XHTML_types.frameset_attrib ], [< XHTML_types.frameset_content ],
     [> XHTML_types.frameset ])
    plus
  val frame :
    src:XML.uri ->
    ([< XHTML_types.frame_attrib ], [> XHTML_types.frame ]) nullary
  val noframes :
    ([< XHTML_types.noframes_attrib ], [< XHTML_types.noframes_content ],
     [> XHTML_types.noframes ])
    unary
  val iframe :
    ([< XHTML_types.iframe_attrib ], [< XHTML_types.iframe_content ],
     [> XHTML_types.iframe ])
    star
  val meta :
    content:XHTML_types.cdata ->
    ([< XHTML_types.meta_attrib ], [> XHTML_types.meta ]) nullary
  val style :
    contenttype:XHTML_types.contenttype ->
    ([< XHTML_types.style_attrib ], [< XHTML_types.style_content ],
     [> XHTML_types.style ])
    star
  val link : ([< XHTML_types.link_attrib ], [> XHTML_types.link ]) nullary
  val base :
    href:XML.uri ->
    ([< XHTML_types.base_attrib ], [> XHTML_types.base ]) nullary
  val ruby_simple1 :
    ?a:[< XHTML_types.common ] attrib list ->
    [< `Rb ] elt -> [< `Rt ] elt -> [> `Ruby_simple1 ] elt
  val ruby_simple2 :
    ?a:[< XHTML_types.common ] attrib list ->
    [< `Rb ] elt ->
    [< `Rp ] elt -> [< `Rt ] elt -> [< `Rp ] elt -> [> `Ruby_simple2 ] elt
  val ruby_complex :
    ?a:[< XHTML_types.common ] attrib list ->
    [< `Rbc ] elt -> [< `Rtc_complex ] elt -> [> `Ruby_complex ] elt
  val rbc :
    ([< XHTML_types.rbc_attrib ], [< XHTML_types.rbc_content ],
     [> XHTML_types.rbc ])
    plus
  val rtc :
    ([< XHTML_types.rtc_attrib ], [< XHTML_types.rtc_content ],
     [> XHTML_types.rtc ])
    plus
  val rtc_complex :
    ([< XHTML_types.rtc_complex_attrib ],
     [< XHTML_types.rtc_complex_content ], [> XHTML_types.rtc_complex ])
    plus
  val rb :
    ([< XHTML_types.rb_attrib ], [< XHTML_types.rb_content ],
     [> XHTML_types.rb ])
    star
  val rt :
    ([< XHTML_types.rt_attrib ], [< XHTML_types.rt_content ],
     [> XHTML_types.rt ])
    star
  val rt_complex :
    ([< XHTML_types.rt_complex_attrib ], [< XHTML_types.rt_complex_content ],
     [> XHTML_types.rt_complex ])
    star
  val rp :
    ([< XHTML_types.rp_attrib ], [< XHTML_types.rp_content ],
     [> XHTML_types.rp ])
    star
  val a_rbspan : XHTML_types.number -> [> `Rbspan ] attrib
  val tot : XML.elt -> 'a elt
  val totl : XML.elt list -> 'a elt list
  val toelt : 'a elt -> XML.elt
  val toeltl : 'a elt list -> XML.elt list
  type doc = [ `Html ] elt
  val doc_toelt : doc -> XML.elt
end