+
+Documented functions: {{ described }}/{{ total }}.
diff --git a/docs/1.2/H2GISversion.md b/docs/1.2/H2GISversion.md
new file mode 100644
index 0000000000..b7074ff31a
--- /dev/null
+++ b/docs/1.2/H2GISversion.md
@@ -0,0 +1,7 @@
+---
+layout: docs
+title: H2GISversion
+permalink: /docs/1.2/H2GISversion/
+---
+
+Sorry, this function does not exist in this version of H2GIS.
diff --git a/docs/1.2/ST_MakeValid.md b/docs/1.2/ST_MakeValid.md
new file mode 100644
index 0000000000..bc87429fd6
--- /dev/null
+++ b/docs/1.2/ST_MakeValid.md
@@ -0,0 +1,7 @@
+---
+layout: docs
+title: ST_MakeValid
+permalink: /docs/1.2/ST_MakeValid/
+---
+
+Sorry, this function does not exist in this version of H2GIS.
diff --git a/docs/1.2/applications/h2network.md b/docs/1.2/applications/h2network.md
index a7288a78c2..37ba1d0554 100644
--- a/docs/1.2/applications/h2network.md
+++ b/docs/1.2/applications/h2network.md
@@ -2,8 +2,7 @@
layout: docs
title: H2Network
category: applications/h2network
-prev_section: applications
-next_section: raster
+prev_section: system
permalink: /docs/1.2/h2network/
---
diff --git a/docs/1.2/applications/list.md b/docs/1.2/applications/list.md
index 04ff580907..8ca114ee80 100644
--- a/docs/1.2/applications/list.md
+++ b/docs/1.2/applications/list.md
@@ -2,7 +2,7 @@
layout: docs
title: Applications
category: applications
-prev_section: geom3D/triangulation
+prev_section: system
next_section: h2network
permalink: /docs/1.2/applications/
---
diff --git a/docs/1.2/geom3D/triangulation.md b/docs/1.2/geom3D/triangulation.md
index bef82dd957..8910c43c6e 100644
--- a/docs/1.2/geom3D/triangulation.md
+++ b/docs/1.2/geom3D/triangulation.md
@@ -3,7 +3,7 @@ layout: docs
title: Triangulation
category: geom3D/triangulation
prev_section: geom3D/topography
-next_section: applications
+next_section: raster
permalink: /docs/1.2/geom3D/triangulation/
---
diff --git a/docs/1.2/raster/list.md b/docs/1.2/raster/list.md
index 685da5e738..4d7ea19e49 100644
--- a/docs/1.2/raster/list.md
+++ b/docs/1.2/raster/list.md
@@ -2,7 +2,8 @@
layout: docs
title: Raster functions
category: raster
-prev_section: h2network
+prev_section: geom3D
+next_section: system
permalink: /docs/1.2/raster/
---
diff --git a/docs/1.2/system/list.md b/docs/1.2/system/list.md
new file mode 100644
index 0000000000..c97f18a664
--- /dev/null
+++ b/docs/1.2/system/list.md
@@ -0,0 +1,12 @@
+---
+layout: docs
+title: System
+category: system
+prev_section: raster
+next_section: applications
+permalink: /docs/1.2/system/
+---
+
+Sorry, there is no system functions available in the v1.2 of H2GIS.
+
+Please refers to the documentation under [development](../../dev/system).
diff --git a/docs/1.3/H2GISversion.md b/docs/1.3/H2GISversion.md
new file mode 100644
index 0000000000..25d6ceac28
--- /dev/null
+++ b/docs/1.3/H2GISversion.md
@@ -0,0 +1,7 @@
+---
+layout: docs
+title: H2GISversion
+permalink: /docs/1.3/H2GISversion/
+---
+
+Sorry, this function does not exist in this version of H2GIS.
diff --git a/docs/1.3/ST_MakeValid.md b/docs/1.3/ST_MakeValid.md
new file mode 100644
index 0000000000..a95dc150ea
--- /dev/null
+++ b/docs/1.3/ST_MakeValid.md
@@ -0,0 +1,7 @@
+---
+layout: docs
+title: ST_MakeValid
+permalink: /docs/1.3/ST_MakeValid/
+---
+
+Sorry, this function does not exist in this version of H2GIS.
diff --git a/docs/1.3/applications/h2network.md b/docs/1.3/applications/h2network.md
index 589fca24dd..9acafdf374 100644
--- a/docs/1.3/applications/h2network.md
+++ b/docs/1.3/applications/h2network.md
@@ -2,8 +2,7 @@
layout: docs
title: H2Network
category: applications/h2network
-prev_section: applications
-next_section: raster
+prev_section: system
permalink: /docs/1.3/h2network/
---
diff --git a/docs/1.3/applications/list.md b/docs/1.3/applications/list.md
index e163df4cce..a0849923db 100644
--- a/docs/1.3/applications/list.md
+++ b/docs/1.3/applications/list.md
@@ -2,7 +2,7 @@
layout: docs
title: Applications
category: applications
-prev_section: geom3D/triangulation
+prev_section: system
next_section: h2network
permalink: /docs/1.3/applications/
---
diff --git a/docs/1.3/geom3D/triangulation.md b/docs/1.3/geom3D/triangulation.md
index 181bcbaf2a..2117748b67 100644
--- a/docs/1.3/geom3D/triangulation.md
+++ b/docs/1.3/geom3D/triangulation.md
@@ -3,7 +3,7 @@ layout: docs
title: Triangulation
category: geom3D/triangulation
prev_section: geom3D/topography
-next_section: applications
+next_section: raster
permalink: /docs/1.3/geom3D/triangulation/
---
diff --git a/docs/1.3/raster/list.md b/docs/1.3/raster/list.md
index 93b18babe8..b9c176897e 100644
--- a/docs/1.3/raster/list.md
+++ b/docs/1.3/raster/list.md
@@ -2,7 +2,8 @@
layout: docs
title: Raster functions
category: raster
-prev_section: h2network
+prev_section: geom3D
+next_section: system
permalink: /docs/1.3/raster/
---
diff --git a/docs/1.3/system/list.md b/docs/1.3/system/list.md
new file mode 100644
index 0000000000..b41c572e03
--- /dev/null
+++ b/docs/1.3/system/list.md
@@ -0,0 +1,12 @@
+---
+layout: docs
+title: System
+category: system
+prev_section: raster
+next_section: applications
+permalink: /docs/1.3/system/
+---
+
+Sorry, there is no system functions available in the v1.3 of H2GIS.
+
+Please refers to the documentation under [development](../../dev/system).
diff --git a/docs/dev/H2GISversion.md b/docs/dev/H2GISversion.md
new file mode 100644
index 0000000000..090548ff21
--- /dev/null
+++ b/docs/dev/H2GISversion.md
@@ -0,0 +1,34 @@
+---
+layout: docs
+title: H2GISversion
+category: system/version
+is_function: true
+description: Return H2GIS version
+prev_section: system
+next_section: applications
+permalink: /docs/dev/H2GISversion/
+---
+
+### Signature
+
+{% highlight mysql %}
+STRING H2GISversion();
+{% endhighlight %}
+
+### Description
+
+Return the current version of H2GIS stored in the manifest, otherwise return `unknown`.
+
+
+### Example
+
+{% highlight mysql %}
+SELECT H2GISversion();
+
+-- Answer:
+ 1.3.1-SNAPSHOT
+{% endhighlight %}
+
+##### See also
+
+* Source code
diff --git a/docs/dev/ST_LineMerge.md b/docs/dev/ST_LineMerge.md
index 958443b379..2a16d869d8 100644
--- a/docs/dev/ST_LineMerge.md
+++ b/docs/dev/ST_LineMerge.md
@@ -5,7 +5,7 @@ category: geom2D/process-geometries
is_function: true
description: Merges a collection of linear components to form maximal-length LINESTRING
prev_section: ST_LineIntersector
-next_section: ST_Polygonize
+next_section: ST_MakeValid
permalink: /docs/dev/ST_LineMerge/
---
diff --git a/docs/dev/ST_MakeValid.md b/docs/dev/ST_MakeValid.md
new file mode 100644
index 0000000000..2236265420
--- /dev/null
+++ b/docs/dev/ST_MakeValid.md
@@ -0,0 +1,226 @@
+---
+layout: docs
+title: ST_MakeValid
+category: geom2D/process-geometries
+is_function: true
+description: Make a Geometry valid
+prev_section: ST_LineMerge
+next_section: ST_Polygonize
+permalink: /docs/dev/ST_MakeValid/
+---
+
+### Signatures
+
+{% highlight mysql %}
+GEOMETRY ST_MakeValid(GEOMETRY geom);
+GEOMETRY ST_MakeValid(GEOMETRY geom,
+ BOOLEAN preserveGeomDim);
+GEOMETRY ST_MakeValid(GEOMETRY geom,
+ BOOLEAN preserveGeomDim,
+ BOOLEAN preserveDuplicateCoord);
+GEOMETRY ST_MakeValid(GEOMETRY geom,
+ BOOLEAN preserveGeomDim,
+ BOOLEAN preserveDuplicateCoord,
+ BOOLEAN preserveCoordDim);
+{% endhighlight %}
+
+
+
This function has initially been written by Michaƫl Michaud, alias Mukoki.
+
+
+
+### Description
+
+Repair an invalid `geometry`.
+
+Here, `geometry` can be (multi)`point`, (multi)`linestring`, (multi)`polygon` or `geometryCollection`.
+
+##### Parameter: preserveGeomDim
+
+| Value | Description | Default value |
+|:-:|:-:|:-:|
+| `true` | Remove degenerated geometries from the result, i.e geometries which dimension is lower than the input `geometry` | x |
+| `false` | It is up to the client to filter degenerate geometries | |
+
+Note that:
+
+* A multi-geometry will always produce a multi-geometry *(eventually empty or made of a single component)*.
+* A simple `geometry` may produce a multi-geometry *(i.e polygon with self-intersection will generally produce a multi-polygon)*. In this case, it is up to the client to explode multi-geometries if needed.
+
+
+
- Linear geometries (dim = 1): duplicate coordinates are preserved as much as possible.
+ - Aeral geometries (dim = 2): duplicate coordinates are generally removed due to the use of overlay operations.
+
+
+
+##### Parameter: preserveDuplicateCoord
+
+| Value | Description | Default value |
+|:-:|:-:|:-:|
+| `true` | Preserve duplicate coordinates as much as possible. Generally, duplicate coordinates can be preserved for linear geometries but not for areal geometries (overlay operations used to repair polygons remove duplicate points) | x |
+| `false` | All duplicated coordinates are removed | |
+
+
+##### Parameter: preserveCoordDim
+
+| Value | Description | Default value |
+|:-:|:-:|:-:|
+| `true` | Preserves third and fourth ordinates | x |
+| `false` | Preserves third ordinates but not fourth one | |
+
+
+
Note that the fourth dimension is not yet supported in H2GIS. So for the moment, preserveCoordDim has no impact since third ordinates (z) will always be preserved.
+
+
+
+
ST_MakeValid may add new points to node the original set of lines (especially to make polygons valid). New points just have x and y. No interpolation is performed if original geometry is in 3D or 4D.