Provided by: libeliom-ocaml-doc_3.0.3-4build2_all bug

NAME

       Eliom_content.Html5.D  - Creation of HTML5 content with DOM semantics (referable, see also
       {% <<a_api|module Eliom_content>>  %}).

Module

       Module   Eliom_content.Html5.D

Documentation

       Module D
        : sig end

       Creation of HTML5 content with DOM semantics (referable, see also ).

       === Content creation See {% <<a_api project="tyxml" | module Html5_sigs.T >> %} ===

       include Eliom_content_core.Html5.D

       === Forms creation ===

       === Links and forms ===

       val make_uri : ?absolute:bool ->  ?absolute_path:bool  ->  ?https:bool  ->  service:('get,
       unit,  [<  Eliom_service.get_service_kind  ],  [<  Eliom_service.suff  ],  'gn,  unit,  [<
       Eliom_service.registrable  ],  'return)  Eliom_service.service  ->   ?hostname:string   ->
       ?port:int  ->  ?fragment:string  ->  ?keep_nl_params:[  `All  |  `None  | `Persistent ] ->
       ?nl_params:Eliom_parameter.nl_params_set -> 'get -> Eliom_content_core.Xml.uri

       The function make_uri service get_params returns the URL of the service service applied to
       the  GET  parameters  get_params  . By default the returned URL is relative to the current
       request URL but it is absolute when one of the following conditions is met:

       -the optional parameter ~absolute_path is true .

       -the optional parameter ~absolute is true .

       -the optional parameter ~https is true (resp.  false ) and the current request protocol is
       http (resp.  https ).

       -the  optional  parameter  ~https  is  true  and the function is used outside of a service
       handler

       -the service has been created with ~https:true and the current request protocol is http .

       -the service has been created with ~https:true and the  function  is  used  outside  of  a
       service handler.

       When  only  the first condition is met ( ~absolute_path is true ) the returned URL is just
       the absolute path, but when any other condition is satisfied the returned URL is  prefixed
       with protocol://hostname[:port] , where:

       - protocol is:

       -  https if the service has been created with ~https:true or the optional parameter ~https
       is true ;

       - http if  the optional parameter ~https is false ;

       -the current request protocol if available;

       - http in any other case.

       - hostname is:

       -the optional parameter ~hostname if given;

       -the attribute defaulthostname of <host> tag in configuration file or the machine hostname
       if the option <usedefaulthostname/> is set;

       -the Host http header of the current request if available;

       -the attribute defaulthostname of <host> tag in configuration file or the machine hostname
       in any other case.

       - port is:

       -the optional parameter ~port if given;

       -the attribute defaulthttpsport (resp.  defaulthttpport ) of <host> tag  in  configuration
       file  or  443  (resp.  80)  if  protocol  is  https (resp.  http ) and the current request
       protocol is http (resp.  https );

       -the attribute defaulthttpsport (resp.  defaulthttpsport ) of <host> tag in  configuration
       file  or  443  (resp. 80) if the option <usedefaulthostname/> is set and protocol is https
       (resp.  http );

       -the port associated to the Host http header of the current request if available;

       -the incoming port of the current request if available;

       -the attribute defaulthttpport (resp.  defaulthttpsport ) of <host> tag  in  configuration
       file or 80 (resp.  443 ) in any other case.

       If given the optional parameter ~fragment is prefixed by # and appended to the URL.

       The  optional parameter keep_nl_params allows one to override the keep_nl_params parameter
       used when creating the service , see Eliom_service.service for a detailled description.

       The optional parameter nl_params allows one to add non localized GET parameter to the URL.
       See the eliom manual for more information about .

       val   make_string_uri   :   ?absolute:bool   ->   ?absolute_path:bool  ->  ?https:bool  ->
       service:('get, unit, [< Eliom_service.get_service_kind ], [<  Eliom_service.suff  ],  'gn,
       unit,  [<  Eliom_service.registrable ], 'return) Eliom_service.service -> ?hostname:string
       -> ?port:int -> ?fragment:string -> ?keep_nl_params:[ `All |  `None  |  `Persistent  ]  ->
       ?nl_params:Eliom_parameter.nl_params_set -> 'get -> string

       The  function  make_string_uri  service  get_params  returns the URL of the of the service
       service applied to the GET parameters get_params . See Eliom_content.Html5.D.make_uri  for
       a detailled description of optional parameters.

       The function make_string_uri is an alias of Eliom_uri.make_string_uri .

       Warning:  The  function make_string_uri should not be called outside of a service handler,
       unless one of the following condition is met:

       -the optional parameter ~absolute_path is true .

       -the optional parameter ~absolute is true .

       -the optional parameter ~https is true .

       -the service has been created with ~https:true .

       -the service is an external service.

       val uri_of_string : (unit -> string) -> Eliom_content_core.Xml.uri

       The function uri_of_string f returns a URI whose content is equivalent to f () .

       For XML tree build with TyXML, like Eliom_content.Html5 or  Svg.F  ,  the  function  f  is
       applied  each  time  the  XML  tree  is sent to the client (either as page content or as a
       marshalled OCaml value). Hence, the function is always  evaluated  in  the  context  of  a
       service handler.

       For other module, the function f is immediatly applied.

       val   make_uri_components  :  ?absolute:bool  ->  ?absolute_path:bool  ->  ?https:bool  ->
       service:('get, unit, [< Eliom_service.get_service_kind ], [<  Eliom_service.suff  ],  'gn,
       unit,  [<  Eliom_service.registrable ], 'return) Eliom_service.service -> ?hostname:string
       -> ?port:int -> ?fragment:string -> ?keep_nl_params:[ `All |  `None  |  `Persistent  ]  ->
       ?nl_params:Eliom_parameter.nl_params_set  ->  'get  ->  string  * (string * string) list *
       string option

       The  function  make_uri_components  service  get_params  returns  the  a  triplet   (path,
       get_params,  fragment)  that is a decomposition of the URL for the service service applied
       to the GET parameters get_params . By default the returned path is relative to the current
       request    URL    but    it    could    be   absolute   URL   in   some   situation,   see
       Eliom_content.Html5.D.make_uri  for  more  information  and  a  description  of   optional
       parameters.

       The function make_uri_components is an alias for Eliom_uri.make_uri_components .

       Warning: depending on the optional parameters, the function make_uri_components may not be
       used outside  of  a  service  handler.  See  Eliom_content.Html5.D.make_string_uri  for  a
       detailled description.

       val  make_post_uri_components  :  ?absolute:bool  -> ?absolute_path:bool -> ?https:bool ->
       service:('get, 'post, [< Eliom_service.post_service_kind ], [< Eliom_service.suff ],  'gn,
       'pn, [< Eliom_service.registrable ], 'return) Eliom_service.service -> ?hostname:string ->
       ?port:int -> ?fragment:string ->  ?keep_nl_params:[  `All  |  `None  |  `Persistent  ]  ->
       ?nl_params:Eliom_parameter.nl_params_set  ->  ?keep_get_na_params:bool -> 'get -> 'post ->
       string * (string * string) list * string option * (string * string) list

       Same a Eliom_content.Html5.D.make_uri_components  ,  but  also  returns  a  list  of  post
       parameters.

       val  a  :  ?absolute:bool -> ?absolute_path:bool -> ?https:bool -> ?a:Html5_types.a_attrib
       Eliom_content_core.Html5.attrib      list      ->      service:('get,       unit,       [<
       Eliom_service.get_service_kind    ],    [<    Eliom_service.suff    ],    'd,   unit,   [<
       Eliom_service.registrable ], 'f) Eliom_service.service -> ?hostname:string -> ?port:int ->
       ?fragment:string    ->    ?keep_nl_params:[    `All   |   `None   |   `Persistent   ]   ->
       ?nl_params:Eliom_parameter.nl_params_set -> ?xhr:bool ->  'a  Eliom_content_core.Html5.elt
       list -> 'get -> [> 'a Html5_types.a ] Eliom_content_core.Html5.elt

       The  function  a  service  a_content  get_params  creates  a <a> node that link to service
       applied to GET parameters get_params and whose content is a_content . By default, the href
       attribute is a relative URL recomputed at each request with Eliom_content.Html5.D.make_uri
       .

       By default, the link is realized such that the client-side Eliom application keeps running
       irrespectable of the usage of the link (cf. ).

       By  contrast,  if  the  optional  parameter ~xhr:false is given, the link is realized as a
       standard HTML link and clicking it discontinues the Eliom application.  The ~xhr parameter
       has no effect outside an Eliom application.

       NB  that  the  default  value  of  ~xhr  is  configurable  through <<a_api project="eliom"
       subproject="server" | val Eliom_config.set_default_links_xhr >>

       The optional parameter ~a allows one to add extra HTML attributes to the generated node.

       See Eliom_content.Html5.D.make_uri for description of other optional parameters.

       val  css_link  :  ?a:Html5_types.link_attrib   Eliom_content_core.Html5.attrib   list   ->
       uri:Eliom_content_core.Xml.uri      ->      unit      ->     [>     Html5_types.link     ]
       Eliom_content_core.Html5.elt

       The function css_link ~uri () creates a <link> node that reference a Cascading  StyleSheet
       (CSS).

       If  the  CSS  is  generated  by  an  Eliom  service, use Eliom_content.Html5.D.make_uri to
       calculate  the  service  URI.  If  the  CSS  is  a  static  file,   you   may   also   use
       Eliom_service.static_dir  or  Eliom_service.external_service  to  abstract the file with a
       service.

       The optional parameter ~a allows one to add extra HTML attributes to the generated node.

       val  js_script  :  ?a:Html5_types.script_attrib  Eliom_content_core.Html5.attrib  list  ->
       uri:Eliom_content_core.Xml.uri      ->     unit     ->     [>     Html5_types.script     ]
       Eliom_content_core.Html5.elt

       The function js_script ~uri () creates a <script> node that reference a javascript file.

       If the script content is generated by an Eliom service, use Eliom_content.Html5.D.make_uri
       to   calculate   the   service   URI.   If   it  is  a  static  file,  you  may  also  use
       Eliom_service.static_dir or Eliom_service.external_service to abstract  the  file  with  a
       service.

       The optional parameter ~a allows one to add extra HTML attributes to the generated node.

       val    get_form    :    ?absolute:bool    ->   ?absolute_path:bool   ->   ?https:bool   ->
       ?a:Html5_types.form_attrib Eliom_content_core.Html5.attrib list -> service:('get, unit, [<
       Eliom_service.get_service_kind    ],    [<    Eliom_service.suff    ],    'gn,   'pn,   [<
       Eliom_service.registrable  ],  'return)  Eliom_service.service  ->   ?hostname:string   ->
       ?port:int  ->  ?fragment:string  ->  ?keep_nl_params:[  `All  |  `None  | `Persistent ] ->
       ?nl_params:Eliom_parameter.nl_params_set -> ?xhr:bool -> ('gn ->  Html5_types.form_content
       Eliom_content_core.Html5.elt list) -> [> Html5_types.form ] Eliom_content_core.Html5.elt

       The  function  post_form  service formgen creates a GET <form> to service . The content of
       the <form> is generated by the function formgen , that takes  the  names  of  the  service
       parameters as parameters. By default, the action attribute is a relative URL recomputed at
       each request with Eliom_content.Html5.D.make_uri .

       By default, the form is realized such that the client-side Eliom application keeps running
       irrespectable of the usage of the form (cf. ).

       By  contrast,  if  the  optional  parameter ~xhr:false is given, the form is realized as a
       standard HTML form and  submitting  it  discontinues  the  Eliom  application.   The  ~xhr
       parameter has no effect outside an Eliom application.

       NB  that  the  default  value  of  ~xhr  is  configurable  through <<a_api project="eliom"
       subproject="server" | val Eliom_config.set_default_links_xhr >>

       The optional parameter ~a allows one to add extra HTML attributes to the generated node.

       See Eliom_content.Html5.D.make_uri for description of other optional parameters.

       val   lwt_get_form   :   ?absolute:bool   ->   ?absolute_path:bool   ->   ?https:bool   ->
       ?a:Html5_types.form_attrib Eliom_content_core.Html5.attrib list -> service:('get, unit, [<
       Eliom_service.get_service_kind   ],   [<    Eliom_service.suff    ],    'gn,    'pn,    [<
       Eliom_service.registrable   ],   'return)  Eliom_service.service  ->  ?hostname:string  ->
       ?port:int -> ?fragment:string ->  ?keep_nl_params:[  `All  |  `None  |  `Persistent  ]  ->
       ?nl_params:Eliom_parameter.nl_params_set  -> ?xhr:bool -> ('gn -> Html5_types.form_content
       Eliom_content_core.Html5.elt     list     Lwt.t)     ->     [>     Html5_types.form      ]
       Eliom_content_core.Html5.elt Lwt.t

       Same  as  Eliom_content.Html5.D.get_form  but  taking  a  cooperative  function for <form>
       content generation.

       val   post_form   :   ?absolute:bool   ->   ?absolute_path:bool    ->    ?https:bool    ->
       ?a:Html5_types.form_attrib  Eliom_content_core.Html5.attrib  list -> service:('get, 'post,
       [<  Eliom_service.post_service_kind   ],   [<   Eliom_service.suff   ],   'gn,   'pn,   [<
       Eliom_service.registrable   ],   'return)  Eliom_service.service  ->  ?hostname:string  ->
       ?port:int -> ?fragment:string ->  ?keep_nl_params:[  `All  |  `None  |  `Persistent  ]  ->
       ?keep_get_na_params:bool  -> ?nl_params:Eliom_parameter.nl_params_set -> ?xhr:bool -> ('pn
       ->   Html5_types.form_content   Eliom_content_core.Html5.elt   list)   ->   'get   ->   [>
       Html5_types.form ] Eliom_content_core.Html5.elt

       The  function  post_form  service  formgen  get_params  creates  a  POST <form> to service
       preapplied to the GET parameters get_params . The content of the <form>  is  generated  by
       the  function  formgen  , that takes the names of the service parameters as parameters. By
       default, the  action  attribute  is  a  relative  URL  recomputed  at  each  request  with
       Eliom_content.Html5.D.make_uri .

       The optional parameter ~a allows one to add HTML attributes to the generated node.

       See  Eliom_service.post_coservice'  for  a description of the ~keep_get_na_params optional
       parameter    ;     see     Eliom_content.Html5.D.get_form     for     ~xhr     and     see
       Eliom_content.Html5.D.make_uri for other optional parameters.

       val   lwt_post_form   :   ?absolute:bool   ->   ?absolute_path:bool   ->   ?https:bool  ->
       ?a:Html5_types.form_attrib Eliom_content_core.Html5.attrib list ->  service:('get,  'post,
       [<   Eliom_service.post_service_kind   ],   [<   Eliom_service.suff   ],   'gn,   'pn,  [<
       Eliom_service.registrable  ],  'return)  Eliom_service.service  ->   ?hostname:string   ->
       ?port:int  ->  ?fragment:string  ->  ?keep_nl_params:[  `All  |  `None  | `Persistent ] ->
       ?keep_get_na_params:bool -> ?nl_params:Eliom_parameter.nl_params_set -> ?xhr:bool ->  ('pn
       ->  Html5_types.form_content  Eliom_content_core.Html5.elt  list  Lwt.t)  ->  'get  ->  [>
       Html5_types.form ] Eliom_content_core.Html5.elt Lwt.t

       Same as Eliom_content.Html5.D.post_form but  taking  a  cooperative  function  for  <form>
       content generation.

       === Form widgets ===

       val   int_input  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       input_type:[< `Button | `Checkbox | `Color | `Date | `Datetime | `Datetime_local |  `Email
       |  `File  |  `Hidden  | `Image | `Month | `Number | `Password | `Radio | `Range | `Reset |
       `Search  |  `Submit  |  `Tel  |  `Text  |  `Time  |  `Url  |  `Week  ]  ->  ?name:[<   int
       Eliom_parameter.setoneradio  ]  Eliom_parameter.param_name  ->  ?value:int  ->  unit -> [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates an <input> tag for an integer

       val int32_input  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       input_type:[<  `Button | `Checkbox | `Color | `Date | `Datetime | `Datetime_local | `Email
       | `File | `Hidden | `Image | `Month | `Number | `Password | `Radio |  `Range  |  `Reset  |
       `Search  |  `Submit  |  `Tel  |  `Text  |  `Time  |  `Url  |  `Week  ]  ->  ?name:[< int32
       Eliom_parameter.setoneradio ] Eliom_parameter.param_name -> ?value:int32  ->  unit  ->  [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates an <input> tag for an integer

       val  int64_input  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list ->
       input_type:[< `Button | `Checkbox | `Color | `Date | `Datetime | `Datetime_local |  `Email
       |  `File  |  `Hidden  | `Image | `Month | `Number | `Password | `Radio | `Range | `Reset |
       `Search |  `Submit  |  `Tel  |  `Text  |  `Time  |  `Url  |  `Week  ]  ->  ?name:[<  int64
       Eliom_parameter.setoneradio  ]  Eliom_parameter.param_name  ->  ?value:int64 -> unit -> [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates an <input> tag for an integer

       val float_input  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       input_type:[<  `Button | `Checkbox | `Color | `Date | `Datetime | `Datetime_local | `Email
       | `File | `Hidden | `Image | `Month | `Number | `Password | `Radio |  `Range  |  `Reset  |
       `Search  |  `Submit  |  `Tel  |  `Text  |  `Time  |  `Url  |  `Week  ]  ->  ?name:[< float
       Eliom_parameter.setoneradio ] Eliom_parameter.param_name -> ?value:float  ->  unit  ->  [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates an <input> tag for a float

       val  string_input  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib list ->
       input_type:[< `Button | `Checkbox | `Color | `Date | `Datetime | `Datetime_local |  `Email
       |  `File  |  `Hidden  | `Image | `Month | `Number | `Password | `Radio | `Range | `Reset |
       `Search | `Submit  |  `Tel  |  `Text  |  `Time  |  `Url  |  `Week  ]  ->  ?name:[<  string
       Eliom_parameter.setoneradio  ]  Eliom_parameter.param_name  -> ?value:string -> unit -> [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates an <input> tag for a string

       val    user_type_input    :    ('a    ->    string)     ->     ?a:Html5_types.input_attrib
       Eliom_content_core.Html5.attrib list -> input_type:[< `Button | `Checkbox | `Color | `Date
       | `Datetime | `Datetime_local | `Email | `File | `Hidden | `Image |  `Month  |  `Number  |
       `Password  |  `Radio | `Range | `Reset | `Search | `Submit | `Tel | `Text | `Time | `Url |
       `Week  ]  ->  ?name:[<  'a  Eliom_parameter.setoneradio  ]  Eliom_parameter.param_name  ->
       ?value:'a -> unit -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates an <input> tag for a user type

       val   raw_input  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       input_type:[< `Button | `Checkbox | `Color | `Date | `Datetime | `Datetime_local |  `Email
       |  `File  |  `Hidden  | `Image | `Month | `Number | `Password | `Radio | `Range | `Reset |
       `Search | `Submit | `Tel | `Text | `Time | `Url | `Week ] -> ?name:string -> ?value:string
       -> unit -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  an  untyped  <input>  tag. You may use the name you want (for example to use with
       Eliom_parameter.any ).

       val  file_input  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       name:[<  Eliom_lib.file_info  Eliom_parameter.setoneradio  ] Eliom_parameter.param_name ->
       unit -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates an <input> tag for sending a file

       val image_input  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       name:[<  Eliom_parameter.coordinates Eliom_parameter.oneradio ] Eliom_parameter.param_name
       ->    ?src:Eliom_content_core.Xml.uri    ->    unit    ->    [>    Html5_types.input     ]
       Eliom_content_core.Html5.elt

       Creates an <input type="image" name="..."> tag that sends the coordinates the user clicked
       on

       val int_image_input : ?a:Html5_types.input_attrib Eliom_content_core.Html5.attrib list  ->
       name:[<     (int     *     Eliom_parameter.coordinates)     Eliom_parameter.oneradio     ]
       Eliom_parameter.param_name -> value:int -> ?src:Eliom_content_core.Xml.uri -> unit  ->  [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  an <input type="image" name="..." value="..."> tag that sends the coordinates the
       user clicked on and a value of type int

       val int32_image_input : ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list
       ->    name:[<    (int32    *   Eliom_parameter.coordinates)   Eliom_parameter.oneradio   ]
       Eliom_parameter.param_name -> value:int32 -> ?src:Eliom_content_core.Xml.uri -> unit -> [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  an <input type="image" name="..." value="..."> tag that sends the coordinates the
       user clicked on and a value of type int32

       val int64_image_input : ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list
       ->    name:[<    (int64    *   Eliom_parameter.coordinates)   Eliom_parameter.oneradio   ]
       Eliom_parameter.param_name -> value:int64 -> ?src:Eliom_content_core.Xml.uri -> unit -> [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  an <input type="image" name="..." value="..."> tag that sends the coordinates the
       user clicked on and a value of type int64

       val float_image_input : ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list
       ->    name:[<    (float    *   Eliom_parameter.coordinates)   Eliom_parameter.oneradio   ]
       Eliom_parameter.param_name -> value:float -> ?src:Eliom_content_core.Xml.uri -> unit -> [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  an <input type="image" name="..." value="..."> tag that sends the coordinates the
       user clicked on and a value of type float

       val string_image_input : ?a:Html5_types.input_attrib Eliom_content_core.Html5.attrib  list
       ->    name:[<    (string   *   Eliom_parameter.coordinates)   Eliom_parameter.oneradio   ]
       Eliom_parameter.param_name -> value:string -> ?src:Eliom_content_core.Xml.uri ->  unit  ->
       [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  an <input type="image" name="..." value="..."> tag that sends the coordinates the
       user clicked on and a value of type string

       val   user_type_image_input   :   ('a   ->    string)    ->    ?a:Html5_types.input_attrib
       Eliom_content_core.Html5.attrib   list   ->  name:[<  ('a  *  Eliom_parameter.coordinates)
       Eliom_parameter.oneradio     ]     Eliom_parameter.param_name     ->      value:'a      ->
       ?src:Eliom_content_core.Xml.uri      ->     unit     ->     [>     Html5_types.input     ]
       Eliom_content_core.Html5.elt

       Creates an <input type="image" name="..." value="..."> tag that sends the coordinates  the
       user clicked on and a value of user defined type

       val  raw_image_input : ?a:Html5_types.input_attrib Eliom_content_core.Html5.attrib list ->
       name:string  ->  value:string   ->   ?src:Eliom_content_core.Xml.uri   ->   unit   ->   [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  an <input type="image" name="..." value="..."> tag that sends the coordinates the
       user clicked on and an untyped value

       val bool_checkbox : ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       ?checked:bool  ->  name:[  `One  of  bool  ]  Eliom_parameter.param_name  ->  unit  ->  [>
       Html5_types.input ] Eliom_content_core.Html5.elt

       Creates a checkbox <input> tag that will have a boolean value.  The service must declare a
       bool parameter.

       val  int_checkbox  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib list ->
       ?checked:bool -> name:[ `Set of int ] Eliom_parameter.param_name -> value:int ->  unit  ->
       [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  a  checkbox  <input>  tag  that  will have an int value.  Thus you can do several
       checkboxes with the same  name  (and  different  values).   The  service  must  declare  a
       parameter of type set .

       val  int32_checkbox  : ?a:Html5_types.input_attrib Eliom_content_core.Html5.attrib list ->
       ?checked:bool -> name:[ `Set of int32 ] Eliom_parameter.param_name -> value:int32 ->  unit
       -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  a  checkbox  <input>  tag that will have an int32 value.  Thus you can do several
       checkboxes with the same  name  (and  different  values).   The  service  must  declare  a
       parameter of type set .

       val  int64_checkbox  : ?a:Html5_types.input_attrib Eliom_content_core.Html5.attrib list ->
       ?checked:bool -> name:[ `Set of int64 ] Eliom_parameter.param_name -> value:int64 ->  unit
       -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  a  checkbox  <input>  tag that will have an int64 value.  Thus you can do several
       checkboxes with the same  name  (and  different  values).   The  service  must  declare  a
       parameter of type set .

       val  float_checkbox  : ?a:Html5_types.input_attrib Eliom_content_core.Html5.attrib list ->
       ?checked:bool -> name:[ `Set of float ] Eliom_parameter.param_name -> value:float ->  unit
       -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  a  checkbox  <input>  tag  that will have a float value.  Thus you can do several
       checkboxes with the same  name  (and  different  values).   The  service  must  declare  a
       parameter of type set .

       val  string_checkbox : ?a:Html5_types.input_attrib Eliom_content_core.Html5.attrib list ->
       ?checked:bool -> name:[ `Set of string ]  Eliom_parameter.param_name  ->  value:string  ->
       unit -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates  a  checkbox  <input>  tag that will have a string value.  Thus you can do several
       checkboxes with the same  name  (and  different  values).   The  service  must  declare  a
       parameter of type set .

       val    user_type_checkbox    :    ('a    ->    string)    ->   ?a:Html5_types.input_attrib
       Eliom_content_core.Html5.attrib  list  ->  ?checked:bool  ->   name:[   `Set   of   'a   ]
       Eliom_parameter.param_name    ->    value:'a   ->   unit   ->   [>   Html5_types.input   ]
       Eliom_content_core.Html5.elt

       Creates a checkbox <input> tag that will have a  "user  type"  value.   Thus  you  can  do
       several  checkboxes with the same name (and different values).  The service must declare a
       parameter of type set .

       val raw_checkbox :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       ?checked:bool   ->   name:string  ->  value:string  ->  unit  ->  [>  Html5_types.input  ]
       Eliom_content_core.Html5.elt

       Creates a checkbox <input> tag with untyped content.  Thus you can do  several  checkboxes
       with  the  same name (and different values).  The service must declare a parameter of type
       any .

       val string_radio :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       ?checked:bool  ->  name:[ `Radio of string ] Eliom_parameter.param_name -> value:string ->
       unit -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates a radio <input> tag with string content

       val  int_radio  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list   ->
       ?checked:bool -> name:[ `Radio of int ] Eliom_parameter.param_name -> value:int -> unit ->
       [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates a radio <input> tag with int content

       val int32_radio  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       ?checked:bool  ->  name:[  `Radio  of int32 ] Eliom_parameter.param_name -> value:int32 ->
       unit -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates a radio <input> tag with int32 content

       val int64_radio  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       ?checked:bool  ->  name:[  `Radio  of int64 ] Eliom_parameter.param_name -> value:int64 ->
       unit -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates a radio <input> tag with int64 content

       val float_radio  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       ?checked:bool  ->  name:[  `Radio  of float ] Eliom_parameter.param_name -> value:float ->
       unit -> [> Html5_types.input ] Eliom_content_core.Html5.elt

       Creates a radio <input> tag with float content

       val    user_type_radio    :    ('a    ->    string)     ->     ?a:Html5_types.input_attrib
       Eliom_content_core.Html5.attrib   list   ->   ?checked:bool  ->  name:[  `Radio  of  'a  ]
       Eliom_parameter.param_name   ->   value:'a   ->   unit   ->   [>    Html5_types.input    ]
       Eliom_content_core.Html5.elt

       Creates a radio <input> tag with user_type content

       val   raw_radio  :  ?a:Html5_types.input_attrib  Eliom_content_core.Html5.attrib  list  ->
       ?checked:bool  ->  name:string  ->  value:string  ->  unit  ->  [>   Html5_types.input   ]
       Eliom_content_core.Html5.elt

       Creates a radio <input> tag with untyped string content (low level)

       val  string_button  : ?a:Html5_types.button_attrib Eliom_content_core.Html5.attrib list ->
       name:[< string Eliom_parameter.setone  ]  Eliom_parameter.param_name  ->  value:string  ->
       Html5_types.button_content  Eliom_content_core.Html5.elt  list  -> [> Html5_types.button ]
       Eliom_content_core.Html5.elt

       Creates a <button> tag with string content

       val int_button  :  ?a:Html5_types.button_attrib  Eliom_content_core.Html5.attrib  list  ->
       name:[<   int   Eliom_parameter.setone   ]   Eliom_parameter.param_name  ->  value:int  ->
       Html5_types.button_content Eliom_content_core.Html5.elt list ->  [>  Html5_types.button  ]
       Eliom_content_core.Html5.elt

       Creates a <button> tag with int content

       val  int32_button  :  ?a:Html5_types.button_attrib Eliom_content_core.Html5.attrib list ->
       name:[<  int32  Eliom_parameter.setone  ]  Eliom_parameter.param_name  ->  value:int32  ->
       Html5_types.button_content  Eliom_content_core.Html5.elt  list  -> [> Html5_types.button ]
       Eliom_content_core.Html5.elt

       Creates a <button> tag with int32 content

       val int64_button : ?a:Html5_types.button_attrib  Eliom_content_core.Html5.attrib  list  ->
       name:[<  int64  Eliom_parameter.setone  ]  Eliom_parameter.param_name  ->  value:int64  ->
       Html5_types.button_content Eliom_content_core.Html5.elt list ->  [>  Html5_types.button  ]
       Eliom_content_core.Html5.elt

       Creates a <button> tag with int64 content

       val  float_button  :  ?a:Html5_types.button_attrib Eliom_content_core.Html5.attrib list ->
       name:[<  float  Eliom_parameter.setone  ]  Eliom_parameter.param_name  ->  value:float  ->
       Html5_types.button_content  Eliom_content_core.Html5.elt  list  -> [> Html5_types.button ]
       Eliom_content_core.Html5.elt

       Creates a <button> tag with float content

       val    user_type_button    :    ('a    ->    string)    ->    ?a:Html5_types.button_attrib
       Eliom_content_core.Html5.attrib    list    ->    name:[<   'a   Eliom_parameter.setone   ]
       Eliom_parameter.param_name      ->      value:'a       ->       Html5_types.button_content
       Eliom_content_core.Html5.elt list -> [> Html5_types.button ] Eliom_content_core.Html5.elt

       Creates a <button> tag with user_type content

       val  raw_button  :  ?a:Html5_types.button_attrib  Eliom_content_core.Html5.attrib  list ->
       button_type:[<  `Button  |  `Reset  |  `Submit  ]  ->  name:string  ->   value:string   ->
       Html5_types.button_content  Eliom_content_core.Html5.elt  list  -> [> Html5_types.button ]
       Eliom_content_core.Html5.elt

       Creates a <button> tag with untyped string content

       val  button  :  ?a:Html5_types.button_attrib   Eliom_content_core.Html5.attrib   list   ->
       button_type:[<    `Button   |   `Reset   |   `Submit   ]   ->   Html5_types.button_content
       Eliom_content_core.Html5.elt list -> [> Html5_types.button ] Eliom_content_core.Html5.elt

       Creates a <button> tag with no value. No value is sent.

       val textarea  :  ?a:Html5_types.textarea_attrib  Eliom_content_core.Html5.attrib  list  ->
       name:[<  string  Eliom_parameter.setoneradio ] Eliom_parameter.param_name -> ?value:string
       -> unit -> [> Html5_types.textarea ] Eliom_content_core.Html5.elt

       Creates a <textarea> tag

       val raw_textarea : ?a:Html5_types.textarea_attrib Eliom_content_core.Html5.attrib list  ->
       name:string     ->    ?value:string    ->    unit    ->    [>    Html5_types.textarea    ]
       Eliom_content_core.Html5.elt

       Creates a <textarea> tag for untyped form

       type 'a soption = Html5_types.option_attrib Eliom_content_core.Html5.attrib list  *  'a  *
       Html5_types.pcdata Eliom_content_core.Html5.elt option * bool

       type 'a select_opt =
        |  Optgroup of [ `Accesskey | `Class | `Contenteditable | `Contextmenu | `Dir | `Disabled
       | `Draggable | `Hidden | `Id | `OnAbort |  `OnBlur  |  `OnCanPlay  |  `OnCanPlayThrough  |
       `OnChange  | `OnClick | `OnContextMenu | `OnDblClick | `OnDrag | `OnDragEnd | `OnDragEnter
       | `OnDragLeave | `OnDragOver | `OnDragStart | `OnDrop | `OnDurationChange |  `OnEmptied  |
       `OnEnded  |  `OnError  | `OnFocus | `OnFormChange | `OnFormInput | `OnInput | `OnInvalid |
       `OnKeyDown  |  `OnKeyPress  |  `OnKeyUp  |  `OnLoad  |  `OnLoadStart  |  `OnLoadedData   |
       `OnLoadedMetaData  | `OnMouseDown | `OnMouseMove | `OnMouseOut | `OnMouseOver | `OnMouseUp
       | `OnMouseWheel | `OnPause  |  `OnPlay  |  `OnPlaying  |  `OnProgress  |  `OnRateChange  |
       `OnReadyStateChange  |  `OnScroll  |  `OnSeeked  |  `OnSeeking  |  `OnSelect  |  `OnShow |
       `OnStalled | `OnSubmit | `OnSuspend |  `OnTimeUpdate  |  `OnVolumeChange  |  `OnWaiting  |
       `Spellcheck  |  `Style_Attr  |  `Tabindex  |  `Title  |  `User_data | `XML_lang | `XMLns ]
       Eliom_content_core.Html5.attrib list * string * 'a soption * 'a soption list
        | Option of 'a soption

       The type for <select> options and groups of options.

       -The field of type 'a in soption is the value that will be sent by the form.

       -If the pcdata_elt option is not present it is also the value displayed.

       -The string in select_opt is the label

       val int_select  :  ?a:Html5_types.select_attrib  Eliom_content_core.Html5.attrib  list  ->
       name:[<  `One of int ] Eliom_parameter.param_name -> int select_opt -> int select_opt list
       -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for int values.

       val int32_select : ?a:Html5_types.select_attrib  Eliom_content_core.Html5.attrib  list  ->
       name:[< `One of int32 ] Eliom_parameter.param_name -> int32 select_opt -> int32 select_opt
       list -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for int32 values.

       val int64_select : ?a:Html5_types.select_attrib  Eliom_content_core.Html5.attrib  list  ->
       name:[< `One of int64 ] Eliom_parameter.param_name -> int64 select_opt -> int64 select_opt
       list -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for int64 values.

       val float_select : ?a:Html5_types.select_attrib  Eliom_content_core.Html5.attrib  list  ->
       name:[< `One of float ] Eliom_parameter.param_name -> float select_opt -> float select_opt
       list -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for float values.

       val string_select : ?a:Html5_types.select_attrib Eliom_content_core.Html5.attrib  list  ->
       name:[<  `One  of  string  ]  Eliom_parameter.param_name  ->  string  select_opt -> string
       select_opt list -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for string values.

       val    user_type_select    :    ('a    ->    string)    ->    ?a:Html5_types.select_attrib
       Eliom_content_core.Html5.attrib list -> name:[< `One of 'a ] Eliom_parameter.param_name ->
       'a    select_opt    ->    'a    select_opt    list    ->    [>    Html5_types.select     ]
       Eliom_content_core.Html5.elt

       Creates a <select> tag for user type values.

       val  raw_select  :  ?a:Html5_types.select_attrib  Eliom_content_core.Html5.attrib  list ->
       name:string -> string select_opt -> string select_opt  list  ->  [>  Html5_types.select  ]
       Eliom_content_core.Html5.elt

       Creates a <select> tag for any (untyped) value.

       val  int_multiple_select  :  ?a:Html5_types.select_attrib  Eliom_content_core.Html5.attrib
       list -> name:[< `Set  of  int  ]  Eliom_parameter.param_name  ->  int  select_opt  ->  int
       select_opt list -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for int values.

       val  int32_multiple_select  : ?a:Html5_types.select_attrib Eliom_content_core.Html5.attrib
       list -> name:[< `Set of int32 ] Eliom_parameter.param_name -> int32  select_opt  ->  int32
       select_opt list -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for int32 values.

       val  int64_multiple_select  : ?a:Html5_types.select_attrib Eliom_content_core.Html5.attrib
       list -> name:[< `Set of int64 ] Eliom_parameter.param_name -> int64  select_opt  ->  int64
       select_opt list -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for int64 values.

       val  float_multiple_select  : ?a:Html5_types.select_attrib Eliom_content_core.Html5.attrib
       list -> name:[< `Set of float ] Eliom_parameter.param_name -> float  select_opt  ->  float
       select_opt list -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for float values.

       val  string_multiple_select : ?a:Html5_types.select_attrib Eliom_content_core.Html5.attrib
       list -> name:[< `Set of string ] Eliom_parameter.param_name -> string select_opt -> string
       select_opt list -> [> Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for string values.

       val   user_type_multiple_select   :   ('a   ->   string)  ->  ?a:Html5_types.select_attrib
       Eliom_content_core.Html5.attrib list -> name:[< `Set of 'a ] Eliom_parameter.param_name ->
       'a     select_opt    ->    'a    select_opt    list    ->    [>    Html5_types.select    ]
       Eliom_content_core.Html5.elt

       Creates a <select> tag for user type values.

       val  raw_multiple_select  :  ?a:Html5_types.select_attrib  Eliom_content_core.Html5.attrib
       list   ->   name:string   ->   string   select_opt   ->   string  select_opt  list  ->  [>
       Html5_types.select ] Eliom_content_core.Html5.elt

       Creates a <select> tag for any (untyped) value.

       val a_for : 'a Eliom_parameter.param_name -> [> `For ] Eliom_content_core.Html5.attrib

       val raw_form :  ([<  Html5_types.form_attrib  ],  [<  Html5_types.form_content_fun  ],  [>
       Html5_types.form ]) plus

       Creates an untyped form.

       val    form    :    ?absolute:bool    ->    ?absolute_path:bool    ->    ?https:bool    ->
       ?a:Html5_types.form_attrib Eliom_content.Html5.attrib  list  ->  service:('get,  unit,  [<
       Eliom_service.get_service_kind    ],    [<    Eliom_service.suff    ],    'gn,   'pn,   [<
       Eliom_service.registrable  ],  'return)  Eliom_service.service  ->   ?hostname:string   ->
       ?port:int  ->  ?fragment:string  ->  ?keep_nl_params:[  `All  |  `None  | `Persistent ] ->
       ?nl_params:Eliom_parameter.nl_params_set -> ?xhr:bool -> ('gn ->  Html5_types.form_content
       Eliom_content.Html5.elt list) -> [> Html5_types.form ] Eliom_content.Html5.elt

       This is an alias to to avoid the untyped Eliom_content_core.Html5.D.form .

       val  input  : ?a:Html5_types.input_attrib Eliom_content.Html5.attrib list -> input_type:[<
       `Button | `Checkbox | `Color | `Date | `Datetime | `Datetime_local  |  `Email  |  `File  |
       `Hidden  |  `Image  |  `Month | `Number | `Password | `Radio | `Range | `Reset | `Search |
       `Submit  |  `Tel  |  `Text   |   `Time   |   `Url   |   `Week   ]   ->   ?name:[<   string
       Eliom_parameter.setoneradio  ]  Eliom_parameter.param_name  -> ?value:string -> unit -> [>
       Html5_types.input ] Eliom_content.Html5.elt

       This is an alias to to avoid the untyped Eliom_content_core.Html5.D.input .

       val select : ?a:Html5_types.select_attrib Eliom_content.Html5.attrib list -> name:[<  `One
       of  string  ] Eliom_parameter.param_name -> string select_opt -> string select_opt list ->
       [> Html5_types.select ] Eliom_content.Html5.elt

       This is an alias to to avoid the untyped Eliom_content_core.Html5.D.select .