Module Eliom_content


module Eliom_content: sig .. end
This module provides the creation of valid XML content, i.e. XML, XHTML, 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 and Eliom_content.Xhtml) that are provided by TyXML for valid XML tree creation and printing.

Modules Eliom_content.Html5, Eliom_content.Svg contain two implementing sub-modules: F and 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 identity, 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 identity, which means they can be referred to on the client side (by %variable) or used with the functions Eliom_content.Html5.To_dom and Eliom_content.Html5.Manip.

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


module type Forms = sig .. end
Abstract signature for links and forms creation functions.
module Xml: module type of Eliom_content_core.Xml  with
    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.
module Svg: module type of Eliom_content_core.Svg  with
    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.
module Html5: sig .. end
Building and printing valid (X)HTML5 tree.
module Xhtml: sig .. end
Building valid XHTML.
module Html_text: sig .. end