This is server API (go to client)

Module Eliom_content

module Eliom_content : sig..end

This module provides the creation of valid XML content, i.e. XML, SVG, and (X)HTML5. XML tree manipulation within Eliom is based on the TyXML library but use a custom representation for XML values (see Eliom_content.​Xml). Then, Eliom_content redefines the three high level interfaces (Eliom_content.​Svg, Eliom_content.​Html5) that are provided by TyXML for valid XML tree creation and printing.

Modules Eliom_content.​Html5, Eliom_content.​Svg contain two implementing sub-modules: Eliom_content.​Html5.​F and Eliom_content.​Html5.​D.

Functional semantics

The F modules provide functions to create elements with functional semantics: On the one hand side, those values do not have an identifier, which means utilizations of those values are independent of each other. On the other hand side, they cannot be referred to, neither by client code when created on the server, nor for usage in the functions of Eliom_content.​Html5.​To_dom and Eliom_content.​Html5.​Manip .

DOM semantics

The D modules provide functions to create elements with DOM semantics: Firstly, they behave like DOM nodes, e.g. they can only be added once to the DOM tree even when appended several times. Secondly, those values have an identifier, which means they can be referred to on the client side (by %variable) or used with the functions in Eliom_content.​Html5.​To_dom and Eliom_content.​Html5.​Manip .

In case of doubt, use the modules with DOM-like semantics Eliom_content.​Html5.​D.

So if you want to generate typed HTML, you have to got to Eliom_content.​Html5, if you want to handly write untyped html, got to Eliom_content.​Html_text and if you want to generate svg, go to Eliom_content_core.​Svg.


module type Forms = sig..end

Abstract signature for links and forms creation functions, for concrete instance see Eliom_content.​Html5, or Eliom_content.​Html_text.

module Xml : 
  module type of Eliom_content_core.Xmlwith
type uri = Eliom_content_core.Xml.uri
and type attrib = Eliom_content_core.Xml.attrib
and type elt = Eliom_content_core.Xml.elt
and type event_handler = Eliom_content_core.Xml.event_handler
and type event_handler_table = Eliom_content_core.Xml.event_handler_table
and
type (-'a) caml_event_handler =
'a Eliom_content_core.Xml.caml_event_handler

Low-level XML manipulation, see Eliom_content_core.​Xml

module Svg : 
  module type of Eliom_content_core.Svgwith
type uri = Eliom_content_core.Svg.uri
and type 'a attrib = 'a Eliom_content_core.Svg.attrib
and type (+'a) elt = 'a Eliom_content_core.Svg.elt

Building and pretty-printing valid SVG tree, see Eliom_content_core.​Svg, Information about Svg api can be found at Svg_sigs.​T

module Html5 : sig..end

Building and printing valid (X)HTML5 tree, Information about Html5 api can be found at Html5_sigs.​T .

module Html_text : sig..end

Generate untyped html as text.