# Module Xhtmltypes

    module Xhtmltypes: sig .. end

XHTML types with variants. (See also `XHTML.M`)

    type xhtml = [ `Html ]

    type form = [ `Form ]

    type a = [ `A ]

    type img = [ `Img ]

    type link = [ `Link ]

    type script = [ `Script ]

    type input = [ `Input ]

    type textarea = [ `Textarea ]

    type select = [ `Select ]

    type selectoption = [ `Option ]

    type optgroup = [ `Optgroup ]

    type button = [ `Button ]

    type pcdata = [ `PCDATA ]

    type notag

    type html_content = [ `Body | `Frameset | `Head ]

    type body_content = XHTML.M.block

    type div_content = [ `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 ]

    type object_content = [ `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
           | `Param
           | `Pre
           | `Q
           | `Samp
           | `Script
           | `Select
           | `Small
           | `Span
           | `Strong
           | `Sub
           | `Sup
           | `Table
           | `Textarea
           | `Tt
           | `Ul
           | `Var ]

    type fieldset_content = [ `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
           | `Legend
           | `Map
           | `Noscript
           | `Object
           | `Ol
           | `P
           | `PCDATA
           | `Pre
           | `Q
           | `Samp
           | `Script
           | `Select
           | `Small
           | `Span
           | `Strong
           | `Sub
           | `Sup
           | `Table
           | `Textarea
           | `Tt
           | `Ul
           | `Var ]

    type button_content = [ `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
           | `PCDATA
           | `Pre
           | `Q
           | `Samp
           | `Script
           | `Small
           | `Span
           | `Strong
           | `Sub
           | `Sup
           | `Table
           | `Tt
           | `Ul
           | `Var ]

    type head_content = [ `Base | `Link | `Meta | `Object | `Script | `Style | `Title ]

    type form_content = [ `Address
           | `Blockquote
           | `Del
           | `Div
           | `Dl
           | `Fieldset
           | `H1
           | `H2
           | `H3
           | `H4
           | `H5
           | `H6
           | `Hr
           | `Ins
           | `Noscript
           | `Ol
           | `P
           | `Pre
           | `Script
           | `Table
           | `Ul ]

    type blockquote_content = [ `Address
           | `Blockquote
           | `Del
           | `Div
           | `Dl
           | `Fieldset
           | `Form
           | `H1
           | `H2
           | `H3
           | `H4
           | `H5
           | `H6
           | `Hr
           | `Ins
           | `Noscript
           | `Ol
           | `P
           | `PCDATA
           | `Pre
           | `Script
           | `Table
           | `Ul ]

    type map_content = [ `Address
           | `Area
           | `Blockquote
           | `Del
           | `Div
           | `Dl
           | `Fieldset
           | `Form
           | `H1
           | `H2
           | `H3
           | `H4
           | `H5
           | `H6
           | `Hr
           | `Ins
           | `Noscript
           | `Ol
           | `P
           | `Pre
           | `Script
           | `Table
           | `Ul ]

    type inlinemix = [ `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 ]

    type label_content = [ `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 ]

    type a_content = [ `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 ]

    type pre_content = [ `A
           | `Abbr
           | `Acronym
           | `B
           | `Bdo
           | `Br
           | `Cite
           | `Code
           | `Dfn
           | `Em
           | `I
           | `Kbd
           | `Map
           | `PCDATA
           | `Q
           | `Samp
           | `Script
           | `Span
           | `Strong
           | `Tt
           | `Var ]

    type dl_content = [ `Dd | `Dt ]

    type optgroup_content = [ `Option ]

    type colgroup_content = [ `Col ]

    type ul_content = [ `Li ]

    type select_content = [ `Optgroup | `Option ]

    type tbody_content = [ `Tr ]

    type table_content = [ `Caption | `Col | `Colgroup | `Tbody | `Tfoot | `Thead | `Tr ]

    type tr_content = [ `Td | `Th ]

    type abbr_content = inlinemix

    type acronym_content = inlinemix

    type address_content = inlinemix

    type b_content = inlinemix

    type bdo_content = inlinemix

    type big_content = inlinemix

    type caption_content = inlinemix

    type cite_content = inlinemix

    type code_content = inlinemix

    type dfn_content = inlinemix

    type dt_content = inlinemix

    type em_content = inlinemix

    type h1_content = inlinemix

    type h2_content = inlinemix

    type h3_content = inlinemix

    type h4_content = inlinemix

    type h5_content = inlinemix

    type h6_content = inlinemix

    type i_content = inlinemix

    type kbd_content = inlinemix

    type legend_content = inlinemix

    type p_content = inlinemix

    type q_content = inlinemix

    type samp_content = inlinemix

    type small_content = inlinemix

    type span_content = inlinemix

    type strong_content = inlinemix

    type sub_content = inlinemix

    type sup_content = inlinemix

    type tt_content = inlinemix

    type var_content = inlinemix

    type dd_content = div_content

    type del_content = div_content

    type ins_content = div_content

    type li_content = div_content

    type th_content = div_content

    type td_content = div_content

    type noscript_content = body_content

    type area_content = notag

    type base_content = notag

    type br_content = notag

    type col_content = notag

    type hr_content = notag

    type img_content = notag

    type input_content = notag

    type meta_content = notag

    type param_content = notag

    type link_content = pcdata

    type option_content = pcdata

    type script_content = pcdata

    type style_content = pcdata

    type textarea_content = pcdata

    type title_content = pcdata

    type ol_content = ul_content

    type thead_content = tbody_content

    type tfoot_content = tbody_content

    type a_attrib = [ `Accesskey
           | `Charset
           | `Class
           | `Coords
           | `Href
           | `Hreflang
           | `Id
           | `Name_01_00
           | `Rel
           | `Rev
           | `Shape
           | `Tabindex
           | `Target
           | `Title
           | `Type
           | `XML_lang ]

    type link_attrib = [ `Charset
           | `Class
           | `Href
           | `Hreflang
           | `Id
           | `Media
           | `Rel
           | `Rev
           | `Target
           | `Title
           | `Type
           | `XML_lang ]

    type script_attrib = [ `Charset | `Defer | `Src | `XML_space | `XMLns ]

    type form_attrib = [ `Accept
           | `Accept_charset
           | `Class
           | `Enctype
           | `Id
           | `Method
           | `Name_01_00
           | `Target
           | `Title
           | `XML_lang ]

    type img_attrib = [ `Class
           | `Height
           | `Id
           | `Longdesc
           | `Name_01_00
           | `Title
           | `Usemap
           | `Width
           | `XML_lang ]

    type div_attrib = XHTML.M.common

    type input_attrib = [ `Accept
           | `Accesskey
           | `Alt
           | `Checked
           | `Class
           | `Disabled
           | `Id
           | `Input_Type
           | `Maxlength
           | `Name
           | `Readonly
           | `Size
           | `Src
           | `Tabindex
           | `Title
           | `Usemap
           | `Value
           | `XML_lang ]

    type textarea_attrib = [ `Accesskey
           | `Class
           | `Disabled
           | `Id
           | `Name
           | `Readonly
           | `Tabindex
           | `Title
           | `XML_lang ]

    type select_attrib = [ `Class
           | `Disabled
           | `Id
           | `Multiple
           | `Name
           | `Size
           | `Tabindex
           | `Title
           | `XML_lang ]

    type optgroup_attrib = [ `Class | `Disabled | `Id | `Label | `Title | `XML_lang ]

    type option_attrib = [ `Class | `Disabled | `Id | `Label | `Selected | `Title | `Value | `XML_lang ]

    type button_attrib = [ `Button_Type | `Class | `Id | `Name | `Title | `Value | `XML_lang ]

    type fieldset_attrib = XHTML.M.common

    type label_attrib = [ `Accesskey | `Class | `For | `Id | `Title | `XML_lang ]

    type legend_attrib = [ `Accesskey | `Class | `Id | `Title | `XML_lang ]