diff --git a/MeshLib/IO/XDMF/MeshPropertyDataType.cpp b/MeshLib/IO/XDMF/MeshPropertyDataType.cpp
index 9b84fb063036e3ca4f85f61c027be1acabeba3a1..4b8e3fc725792f9bad7e43f64c8c25fc3d816599 100644
--- a/MeshLib/IO/XDMF/MeshPropertyDataType.cpp
+++ b/MeshLib/IO/XDMF/MeshPropertyDataType.cpp
@@ -11,86 +11,86 @@
 #include "MeshPropertyDataType.h"
 
 // See https://www.xdmf.org/index.php/XDMF_Model_and_Format#Topology (Arbitrary)
-std::string ParentDataType2String(ParentDataType p)
+std::pair<std::string, std::size_t> ParentDataType2String(ParentDataType p)
 {
     // not used in OGS ParentDataType::POLYGON, ParentDataType::POLYHEDRON,
     // ParentDataType::HEXAHEDRON_24
     if (p == ParentDataType::MIXED)
     {
-        return "Mixed";
+        return {"Mixed", 1};
     }
 
     if (p == ParentDataType::POLYVERTEX)
     {
-        return "Polyvertex";
+        return {"Polyvertex", 1};
     }
     if (p == ParentDataType::POLYLINE)
     {
-        return "Polyline";
+        return {"Polyline", 2};
     }
     if (p == ParentDataType::TRIANGLE)
     {
-        return "Triangle";
+        return {"Triangle", 3};
     }
     if (p == ParentDataType::QUADRILATERAL)
     {
-        return "Quadrilateral";
+        return {"Quadrilateral", 4};
     }
     if (p == ParentDataType::TETRAHEDRON)
     {
-        return "Tetrahedron";
+        return {"Tetrahedron", 4};
     }
     if (p == ParentDataType::PYRAMID)
     {
-        return "Pyramid";
+        return {"Pyramid", 5};
     }
     if (p == ParentDataType::WEDGE)
     {
-        return "Wedge";
+        return {"Wedge", 6};
     }
     if (p == ParentDataType::HEXAHEDRON)
     {
-        return "Hexahedron";
+        return {"Hexahedron", 8};
     }
     if (p == ParentDataType::EDGE_3)
     {
-        return "Edge_3";
+        return {"Edge_3", 3};
     }
     if (p == ParentDataType::QUADRILATERAL_9)
     {
-        return "Quadrilateral_9";
+        return {"Quadrilateral_9", 9};
     }
     if (p == ParentDataType::TRIANGLE_6)
     {
-        return "Triangle_6";
+        return {"Triangle_6", 6};
     }
     if (p == ParentDataType::QUADRILATERAL_8)
     {
-        return "Quadrilateral_8";
+        return {"Quadrilateral_8", 8};
     }
     if (p == ParentDataType::TETRAHEDRON_10)
     {
-        return "Tetrahedron_10";
+        return {"Tetrahedron_10", 10};
     }
     if (p == ParentDataType::PYRAMID_13)
     {
-        return "Pyramid_13";
+        return {"Pyramid_13", 13};
     }
     if (p == ParentDataType::WEDGE_15)
     {
-        return "Wedge_15";
+        return {"Wedge_15", 15};
     }
     if (p == ParentDataType::WEDGE_18)
     {
-        return "Wedge_18";
+        return {"Wedge_18", 18};
     }
     if (p == ParentDataType::HEXAHEDRON_20)
     {
-        return "Hexahedron_20";
+        return {"Hexahedron_20", 20};
     }
     if (p == ParentDataType::HEXAHEDRON_27)
     {
-        return "Hexahedron_27";
+        return {"Hexahedron_27", 27};
     }
-    return "Mixed";
+    return {"Mixed", 1};
 }
diff --git a/MeshLib/IO/XDMF/MeshPropertyDataType.h b/MeshLib/IO/XDMF/MeshPropertyDataType.h
index dc7899dafacd591d0c5773735acd37e1268de304..334019a6d057cb6d0becf60f5dcebc0e3a12b6c2 100644
--- a/MeshLib/IO/XDMF/MeshPropertyDataType.h
+++ b/MeshLib/IO/XDMF/MeshPropertyDataType.h
@@ -38,7 +38,7 @@ enum class ParentDataType
 {
     MIXED = 0,
     POLYVERTEX = 1,
-    POLYLINE = 2,
+    POLYLINE = 2,  // OGS polylines are supposed to contain exactly 2 nodes
     // POLYGON = 3, // not used in OGS
     TRIANGLE = 4,
     QUADRILATERAL = 5,
@@ -60,4 +60,4 @@ enum class ParentDataType
     HEXAHEDRON_27 = 50
 };
 
-std::string ParentDataType2String(ParentDataType p);
+std::pair<std::string, std::size_t> ParentDataType2String(ParentDataType p);
diff --git a/MeshLib/IO/XDMF/XdmfData.cpp b/MeshLib/IO/XDMF/XdmfData.cpp
index d1aa37793ee7a19219a3edf1987ccd9336d27e54..646b0236f81f1dc86efa79264f3bbc436aabde87 100644
--- a/MeshLib/IO/XDMF/XdmfData.cpp
+++ b/MeshLib/IO/XDMF/XdmfData.cpp
@@ -51,13 +51,13 @@ XdmfData::XdmfData(std::size_t const size_partitioned_dim,
               }
           }()),
       data_type(mesh_property_data_type),
+      size_partitioned_dim(size_partitioned_dim),
       name(name),
       attribute_center(attribute_center),
       index(index),
       parent_data_type(parent_data_type)
 {
     auto partition_info = getPartitionInfo(size_partitioned_dim, n_files);
-    // TODO (tm) XdmfLib does not support 64 bit data types so far
     assert(partition_info.local_length <
            std::numeric_limits<unsigned int>::max());
     auto const ui_global_components =
diff --git a/MeshLib/IO/XDMF/XdmfData.h b/MeshLib/IO/XDMF/XdmfData.h
index 273d0d4a44bb6505fafc9d9663b0c6fa7c096c9c..8f50122c659955e3a2b86ee721998ffda7de0606 100644
--- a/MeshLib/IO/XDMF/XdmfData.h
+++ b/MeshLib/IO/XDMF/XdmfData.h
@@ -63,6 +63,7 @@ struct XdmfData final
     std::vector<XdmfDimType> strides;
     std::vector<XdmfDimType> global_block_dims;
     MeshPropertyDataType data_type;
+    std::size_t size_partitioned_dim;
     std::string name;
     std::optional<MeshLib::MeshItemType> attribute_center;
     unsigned int index;
diff --git a/MeshLib/IO/XDMF/XdmfHdfWriter.cpp b/MeshLib/IO/XDMF/XdmfHdfWriter.cpp
index 2a88a96364f2e88751ca9a3b7d6dffa9cd2e6d07..5d2ab70e3a24353fa1c9de66a4e8b762d30f1760 100644
--- a/MeshLib/IO/XDMF/XdmfHdfWriter.cpp
+++ b/MeshLib/IO/XDMF/XdmfHdfWriter.cpp
@@ -26,7 +26,7 @@ namespace MeshLib::IO
 struct TransformedMeshData final
 {
     std::vector<double> flattened_geometry_values;
-    std::vector<int> flattened_topology_values;
+    std::vector<std::size_t> flattened_topology_values;
     ParentDataType parent_data_type;
 };
 struct XdmfHdfMesh final
diff --git a/MeshLib/IO/XDMF/transformData.cpp b/MeshLib/IO/XDMF/transformData.cpp
index 43415a1cca6ceba8f7f5e4b1f0d9b4f09f041cff..ae90e9f0b389f7318a89ba5fe3cfe3cf277753f0 100644
--- a/MeshLib/IO/XDMF/transformData.cpp
+++ b/MeshLib/IO/XDMF/transformData.cpp
@@ -7,8 +7,6 @@
  *              http://www.opengeosys.org/project/license
  */
 
-// \TODO (tm) Extend xdmf lib with 64bit data types
-
 #include "transformData.h"
 
 #include <algorithm>
@@ -97,7 +95,7 @@ std::optional<XdmfHdfData> transformAttribute(
     std::size_t num_of_tuples = 0;
     void const* data_ptr = 0;
 
-    // lambda f : Collects properties from the propertyVectorBase. It captures
+    // lambda f : Collects properties from the PropertyVectorBase. It captures
     // (and overwrites) data that can only be collected via the typed property.
     // It has boolean return type to allow kind of pipe using || operator.
     auto f = [&data_type, &num_of_tuples, &data_ptr,
@@ -133,39 +131,30 @@ std::optional<XdmfHdfData> transformAttribute(
                           "Float has 23 bits fractional part");
             data_type = MeshPropertyDataType::float32;
         }
-        else if constexpr (std::is_same_v<int, decltype(basic_type)>)
+        else if constexpr (std::is_same_v<int32_t, decltype(basic_type)>)
         {
-            static_assert((std::numeric_limits<int>::digits == 31),
-                          "Signed int has 32-1 bits");
             data_type = MeshPropertyDataType::int32;
         }
-        // ToDo (tm) These tests are platform specific and currently fail on
-        // Windows else if constexpr (std::is_same_v<long,
-        // decltype(basic_type)>)
-        //{
-        //    static_assert((std::numeric_limits<long>::digits == 63),
-        //                  "Signed int has 64-1 bits");
-        //    data_type = MeshPropertyDataType::int64;
-        //}
-        // else if constexpr (std::is_same_v<unsigned long,
-        // decltype(basic_type)>)
-        //{
-        //    static_assert((std::numeric_limits<unsigned long>::digits == 64),
-        //                  "Unsigned long has 64 bits");
-        //    data_type = MeshPropertyDataType::uint64;
-        //}
-        else if constexpr (std::is_same_v<unsigned int, decltype(basic_type)>)
+        else if constexpr (std::is_same_v<uint32_t, decltype(basic_type)>)
         {
-            static_assert((std::numeric_limits<unsigned int>::digits == 32),
-                          "Unsigned int has 32 bits");
             data_type = MeshPropertyDataType::uint32;
         }
-        else if constexpr (std::is_same_v<std::size_t, decltype(basic_type)>)
+        else if constexpr (std::is_same_v<int64_t, decltype(basic_type)>)
+        {
+            data_type = MeshPropertyDataType::int64;
+        }
+        else if constexpr (std::is_same_v<uint64_t, decltype(basic_type)>)
         {
-            static_assert((std::numeric_limits<std::size_t>::digits == 64),
-                          "size_t has 64 bits");
             data_type = MeshPropertyDataType::uint64;
         }
+        else if constexpr (std::is_same_v<int8_t, decltype(basic_type)>)
+        {
+            data_type = MeshPropertyDataType::int8;
+        }
+        else if constexpr (std::is_same_v<uint8_t, decltype(basic_type)>)
+        {
+            data_type = MeshPropertyDataType::uint8;
+        }
         else if constexpr (std::is_same_v<char, decltype(basic_type)>)
         {
             data_type = MeshPropertyDataType::char_native;
@@ -176,6 +165,40 @@ std::optional<XdmfHdfData> transformAttribute(
                           "Unsigned char has 8 bits");
             data_type = MeshPropertyDataType::uchar;
         }
+        else if constexpr (std::is_same_v<unsigned long, decltype(basic_type)>)
+        {
+            if (sizeof(unsigned long) == 8 &&
+                std::numeric_limits<unsigned long>::digits == 64)
+            {
+                data_type = MeshPropertyDataType::uint64;
+            }
+            else if (sizeof(unsigned long) == 4 &&
+                     std::numeric_limits<unsigned long>::digits == 32)
+            {
+                data_type = MeshPropertyDataType::uint32;
+            }
+            else
+            {
+                return false;
+            }
+        }
+        else if constexpr (std::is_same_v<std::size_t, decltype(basic_type)>)
+        {
+            if (sizeof(std::size_t) == 8 &&
+                std::numeric_limits<std::size_t>::digits == 64)
+            {
+                data_type = MeshPropertyDataType::uint64;
+            }
+            else if (sizeof(std::size_t) == 4 &&
+                     std::numeric_limits<std::size_t>::digits == 32)
+            {
+                data_type = MeshPropertyDataType::uint32;
+            }
+            else
+            {
+                return false;
+            }
+        }
         else
         {
             return false;
@@ -316,18 +339,18 @@ ParentDataType getTopologyType(MeshLib::Mesh const& mesh)
     return cellTypeOGS2XDMF(ogs_cell_type).id;
 }
 
-std::pair<std::vector<int>, ParentDataType> transformToXDMFTopology(
+std::pair<std::vector<std::size_t>, ParentDataType> transformToXDMFTopology(
     MeshLib::Mesh const& mesh, std::size_t const offset)
 {
     std::vector<MeshLib::Element*> const& elements = mesh.getElements();
-    std::vector<int> values;
+    std::vector<std::size_t> values;
 
     auto const push_cellnode_ids_to_vector =
         [&values, &offset](auto const& cell)
     {
         values |= ranges::actions::push_back(
             cell->nodes() | MeshLib::views::ids |
-            ranges::views::transform([&offset](auto const node_id) -> int
+            ranges::views::transform([&offset](auto const node_id)
                                      { return node_id + offset; }));
     };
 
@@ -344,14 +367,12 @@ std::pair<std::vector<int>, ParentDataType> transformToXDMFTopology(
             push_cellnode_ids_to_vector(cell);
         }
     }
-    else if (topology_type == ParentDataType::POLYVERTEX ||
-             topology_type == ParentDataType::POLYLINE)
+    else if (topology_type == ParentDataType::POLYLINE)
     {
         // '+ 1' for number of nodes of the cell
-        values.reserve(elements.size() * (elements[0]->getNumberOfNodes() + 1));
+        values.reserve(elements.size() * elements[0]->getNumberOfNodes());
         for (auto const& cell : elements)
         {
-            values.push_back(cell->getNumberOfNodes());
             push_cellnode_ids_to_vector(cell);
         }
     }
@@ -367,18 +388,23 @@ std::pair<std::vector<int>, ParentDataType> transformToXDMFTopology(
     return {values, topology_type};
 }
 
-XdmfHdfData transformTopology(std::vector<int> const& values,
+XdmfHdfData transformTopology(std::vector<std::size_t> const& values,
                               ParentDataType const parent_data_type,
                               unsigned int const n_files,
                               unsigned int const chunk_size_bytes)
 {
     std::string const name = "topology";
-    HdfData const hdf = {
-        values.data(), values.size(),   1, name, MeshPropertyDataType::int32,
-        n_files,       chunk_size_bytes};
-    XdmfData const xdmf{values.size(),
-                        1,
-                        MeshPropertyDataType::int32,
+    auto const tuple_size = ParentDataType2String(parent_data_type).second;
+    HdfData const hdf = {values.data(),
+                         values.size() / tuple_size,
+                         tuple_size,
+                         name,
+                         MeshPropertyDataType::uint64,
+                         n_files,
+                         chunk_size_bytes};
+    XdmfData const xdmf{values.size() / tuple_size,
+                        tuple_size,
+                        MeshPropertyDataType::uint64,
                         name,
                         std::nullopt,
                         3,
diff --git a/MeshLib/IO/XDMF/transformData.h b/MeshLib/IO/XDMF/transformData.h
index 839f84e66fec4b21a56966c413b53ea026a8d7b4..c69827bb7dc28e157b81b0d5404e56ed2e85fcfd 100644
--- a/MeshLib/IO/XDMF/transformData.h
+++ b/MeshLib/IO/XDMF/transformData.h
@@ -58,7 +58,7 @@ XdmfHdfData transformGeometry(MeshLib::Mesh const& mesh, double const* data_ptr,
  * Data will be split into chunks. The parameter specifies the size (in bytes)
  * of the largest chunk. \return Topology meta data
  */
-XdmfHdfData transformTopology(std::vector<int> const& values,
+XdmfHdfData transformTopology(std::vector<std::size_t> const& values,
                               ParentDataType const parent_data_type,
                               unsigned int n_files,
                               unsigned int chunk_size_bytes);
@@ -79,6 +79,6 @@ std::vector<double> transformToXDMFGeometry(MeshLib::Mesh const& mesh);
  * be zero in serial and must be defined for each process in parallel execution.
  * \return vector containing a copy of the data and the computed ParentDataType
  */
-std::pair<std::vector<int>, ParentDataType> transformToXDMFTopology(
+std::pair<std::vector<std::size_t>, ParentDataType> transformToXDMFTopology(
     MeshLib::Mesh const& mesh, std::size_t const offset);
 }  // namespace MeshLib::IO
diff --git a/MeshLib/IO/XDMF/writeXdmf.cpp b/MeshLib/IO/XDMF/writeXdmf.cpp
index d0c03dd40e3dc77e956070171b8e988812ce365e..70db150a464b06106f7050e36684e9482012736a 100644
--- a/MeshLib/IO/XDMF/writeXdmf.cpp
+++ b/MeshLib/IO/XDMF/writeXdmf.cpp
@@ -203,15 +203,15 @@ std::function<std::string(std::vector<double>)> write_xdmf(
                          auto const& dataitem_transform)
     {
         return fmt::format(
-            fmt::runtime("\n\t<Topology Dimensions=\"{dimensions}\" "
-                         "Type=\"{topology_type}\" "
-                         "NodesPerElement=\"{nodes_per_element}\">{dataitem}"
+            fmt::runtime("\n\t<Topology Type=\"{topology_type}\" "
+                         "NodesPerElement=\"{nodes_per_element}\" "
+                         "NumberOfElements=\"{number_of_elements}\">{dataitem}"
                          "\n\t</Topology>"),
             "topology_type"_a =
-                ParentDataType2String(*topology.parent_data_type),
+                ParentDataType2String(*topology.parent_data_type).first,
             "dataitem"_a = dataitem_transform(topology),
-            "dimensions"_a = fmt::join(topology.global_block_dims, " "),
-            "nodes_per_element"_a = nodes_per_element);
+            "nodes_per_element"_a = nodes_per_element,
+            "number_of_elements"_a = topology.size_partitioned_dim);
     };
 
     // Define content of <Topology> in XDMF, same as attribute_transform
@@ -243,13 +243,11 @@ std::function<std::string(std::vector<double>)> write_xdmf(
             case ParentDataType::PYRAMID_13:
                 return fmt::format(
                     fmt::runtime(
-                        "\n\t<Topology Dimensions=\"{dimensions}\" "
+                        "\n\t<Topology "
                         "Type=\"{topology_type}\">{dataitem}\n\t</Topology>"),
                     "topology_type"_a =
-                        ParentDataType2String(*topology.parent_data_type),
-                    "dataitem"_a = dataitem_transform(topology),
-                    "dimensions"_a =
-                        fmt::join(topology.global_block_dims, " "));
+                        ParentDataType2String(*topology.parent_data_type).first,
+                    "dataitem"_a = dataitem_transform(topology));
         }
         OGS_FATAL("Could not transform unknown XDMF topology type");
         return std::string{};
diff --git a/ProcessLib/SteadyStateDiffusion/Tests.cmake b/ProcessLib/SteadyStateDiffusion/Tests.cmake
index 97ae3814deab22ea54cdde4b145b8e16625af6e4..bd7bce04c7a16daccf27bec022e1cce88e2bc92f 100644
--- a/ProcessLib/SteadyStateDiffusion/Tests.cmake
+++ b/ProcessLib/SteadyStateDiffusion/Tests.cmake
@@ -549,33 +549,33 @@ AddTest(
     cube_1e3_np3.xdmf cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf v v 1e-3 1e-3
 )
 
-# AddTest(
-#     NAME ParallelFEM_GroundWaterFlow3D_NeumannBC_XDMF_np3_2files
-#     PATH EllipticPETSc/XDMF_NP3_2
-#     EXECUTABLE ogs
-#     EXECUTABLE_ARGS ../cube_1e3_XDMF_np3_2files.prj
-#     WRAPPER mpirun
-#     WRAPPER_ARGS -np 3
-#     TESTER xdmfdiff
-#     REQUIREMENTS OGS_USE_MPI
-#     DIFF_DATA
-#     cube_1e3_np3_2files_0.xdmf cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf pressure pressure 1e-3 1e-3
-#     cube_1e3_np3_2files_0.xdmf cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf v v 1e-3 1e-3
-# )
-
-# AddTest(
-#     NAME ParallelFEM_GroundWaterFlow3D_NeumannBC_XDMF_np3_3files
-#     PATH EllipticPETSc/XDMF_NP3_3
-#     EXECUTABLE ogs
-#     EXECUTABLE_ARGS ../cube_1e3_XDMF_np3_3files.prj
-#     WRAPPER mpirun
-#     WRAPPER_ARGS -np 3
-#     TESTER xdmfdiff
-#     REQUIREMENTS OGS_USE_MPI
-#     DIFF_DATA
-#     cube_1e3_np3_3files_0.xdmf cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf pressure pressure 1e-3 1e-3
-#     cube_1e3_np3_3files_0.xdmf cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf v v 1e-3 1e-3
-# )
+AddTest(
+    NAME ParallelFEM_GroundWaterFlow3D_NeumannBC_XDMF_np3_2files
+    PATH EllipticPETSc/XDMF_NP3_2
+    EXECUTABLE ogs
+    EXECUTABLE_ARGS ../cube_1e3_XDMF_np3_2files.prj
+    WRAPPER mpirun
+    WRAPPER_ARGS -np 3
+    TESTER xdmfdiff
+    REQUIREMENTS OGS_USE_MPI
+    DIFF_DATA
+    cube_1e3_np3_2files_0.xdmf cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf pressure pressure 1e-3 1e-3
+    cube_1e3_np3_2files_0.xdmf cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf v v 1e-3 1e-3
+)
+
+AddTest(
+    NAME ParallelFEM_GroundWaterFlow3D_NeumannBC_XDMF_np3_3files
+    PATH EllipticPETSc/XDMF_NP3_3
+    EXECUTABLE ogs
+    EXECUTABLE_ARGS ../cube_1e3_XDMF_np3_3files.prj
+    WRAPPER mpirun
+    WRAPPER_ARGS -np 3
+    TESTER xdmfdiff
+    REQUIREMENTS OGS_USE_MPI
+    DIFF_DATA
+    cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf pressure pressure 1e-3 1e-3
+    cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf v v 1e-3 1e-3
+)
 
 AddTest(
     NAME ParallelFEM_GroundWaterFlow3D_NeumannBC_XDMF_np2
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5 b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5
index 61cbf046823e61399741b0f3d86b25eee61091a1..c7a00aa33429e6d264b224700f3a161db24dc137 100644
Binary files a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5 and b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5 differ
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left.xdmf
index 1e8b9ba2d8a4fa730637b7d28ff394097429617c..4c31fd101030a345726ca5152e8f83b41181be7b 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="529 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left/geometry|0 0 0:1 1 1:1 529 3:2 529 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1936" Type="Quadrilateral">
-		<DataItem DataType="Int" Dimensions="1936" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left/topology|0 0:1 1:1 1936:2 1936</DataItem>
+	<Topology Type="Quadrilateral">
+		<DataItem DataType="UInt" Dimensions="484 4" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left/topology|0 0 0:1 1 1:1 484 4:2 484 4</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_back_lower.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_back_lower.xdmf
index 3102e5357f51f65f12d58ca757df5359c5d1e3ff..a4bafd9aa8288633a4cf3653aee33fd36167fcf9 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_back_lower.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_back_lower.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left_back_lower/geometry|0 0 0:1 1 1:1 1 3:2 1 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1" Type="Polyvertex">
-		<DataItem DataType="Int" Dimensions="1" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left_back_lower/topology|0 0:1 1:1 1:2 1</DataItem>
+	<Topology Type="Polyvertex" NodesPerElement="1" NumberOfElements="1">
+		<DataItem DataType="UInt" Dimensions="1" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left_back_lower/topology|0 0:1 1:1 1:2 1</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_back_upper.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_back_upper.xdmf
index 79df5a8746343d8751a923e1a2c111e3821254c0..83bc054b85600111dceeb60e2e020465acbd7bdd 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_back_upper.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_back_upper.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left_back_upper/geometry|0 0 0:1 1 1:1 1 3:2 1 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1" Type="Polyvertex">
-		<DataItem DataType="Int" Dimensions="1" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left_back_upper/topology|0 0:1 1:1 1:2 1</DataItem>
+	<Topology Type="Polyvertex" NodesPerElement="1" NumberOfElements="1">
+		<DataItem DataType="UInt" Dimensions="1" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left_back_upper/topology|0 0:1 1:1 1:2 1</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_front_upper.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_front_upper.xdmf
index a5adc25b68b1ba311681c605e1d4c3d7b8cdad12..784547d3638d109e8fe5857c7ccb56c40c169fce 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_front_upper.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_left_front_upper.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left_front_upper/geometry|0 0 0:1 1 1:1 1 3:2 1 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1" Type="Polyvertex">
-		<DataItem DataType="Int" Dimensions="1" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left_front_upper/topology|0 0:1 1:1 1:2 1</DataItem>
+	<Topology Type="Polyvertex" NodesPerElement="1" NumberOfElements="1">
+		<DataItem DataType="UInt" Dimensions="1" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_left_front_upper/topology|0 0:1 1:1 1:2 1</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_origin.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_origin.xdmf
index 2ec161e6dcf313c43fbee8728fa5b2fff6332481..3347f271683b823dd564c886f2015e8c92632d18 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_origin.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_origin.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_origin/geometry|0 0 0:1 1 1:1 1 3:2 1 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1" Type="Polyvertex">
-		<DataItem DataType="Int" Dimensions="1" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_origin/topology|0 0:1 1:1 1:2 1</DataItem>
+	<Topology Type="Polyvertex" NodesPerElement="1" NumberOfElements="1">
+		<DataItem DataType="UInt" Dimensions="1" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_origin/topology|0 0:1 1:1 1:2 1</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right.xdmf
index 3c2ef23f649bed460e92c622bcf88f626fe0e4d9..a951e8baeab1ddc09595a17c7589208da794f5e6 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="529 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right/geometry|0 0 0:1 1 1:1 529 3:2 529 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1936" Type="Quadrilateral">
-		<DataItem DataType="Int" Dimensions="1936" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right/topology|0 0:1 1:1 1936:2 1936</DataItem>
+	<Topology Type="Quadrilateral">
+		<DataItem DataType="UInt" Dimensions="484 4" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right/topology|0 0 0:1 1 1:1 484 4:2 484 4</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_back_lower.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_back_lower.xdmf
index f7d60dffe89449de7fc4400ad794046bb295f62e..9d31f7252b1b227c5c34fd98025343026d255d05 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_back_lower.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_back_lower.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_back_lower/geometry|0 0 0:1 1 1:1 1 3:2 1 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1" Type="Polyvertex">
-		<DataItem DataType="Int" Dimensions="1" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_back_lower/topology|0 0:1 1:1 1:2 1</DataItem>
+	<Topology Type="Polyvertex" NodesPerElement="1" NumberOfElements="1">
+		<DataItem DataType="UInt" Dimensions="1" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_back_lower/topology|0 0:1 1:1 1:2 1</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_back_upper.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_back_upper.xdmf
index b3a15631f7cff54b8af38d76fa010cc72d20ca6c..05cf4e4d09c7c37ad75c268af0af9f76db4ececc 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_back_upper.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_back_upper.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_back_upper/geometry|0 0 0:1 1 1:1 1 3:2 1 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1" Type="Polyvertex">
-		<DataItem DataType="Int" Dimensions="1" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_back_upper/topology|0 0:1 1:1 1:2 1</DataItem>
+	<Topology Type="Polyvertex" NodesPerElement="1" NumberOfElements="1">
+		<DataItem DataType="UInt" Dimensions="1" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_back_upper/topology|0 0:1 1:1 1:2 1</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_front_lower.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_front_lower.xdmf
index 00ba5fc5815cc8f0bc3686450e2326c45327aad4..7e4006698ad00b04715d856f4ddc2acb8c0063b1 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_front_lower.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_front_lower.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_front_lower/geometry|0 0 0:1 1 1:1 1 3:2 1 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1" Type="Polyvertex">
-		<DataItem DataType="Int" Dimensions="1" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_front_lower/topology|0 0:1 1:1 1:2 1</DataItem>
+	<Topology Type="Polyvertex" NodesPerElement="1" NumberOfElements="1">
+		<DataItem DataType="UInt" Dimensions="1" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_front_lower/topology|0 0:1 1:1 1:2 1</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_front_upper.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_front_upper.xdmf
index a29a1f248d8ab2fa5db5fdbcbfa50d84f7fccc74..7d03fd122565fdd1b4b6b1bcacd90f58ae1292c8 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_front_upper.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_front_upper.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_front_upper/geometry|0 0 0:1 1 1:1 1 3:2 1 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1" Type="Polyvertex">
-		<DataItem DataType="Int" Dimensions="1" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_front_upper/topology|0 0:1 1:1 1:2 1</DataItem>
+	<Topology Type="Polyvertex" NodesPerElement="1" NumberOfElements="1">
+		<DataItem DataType="UInt" Dimensions="1" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_front_upper/topology|0 0:1 1:1 1:2 1</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_upper_back.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_upper_back.xdmf
index d3b5d3c3b1cf9b4a8da0da4e4936f7db1bf262bc..607bee7550fc2f575d93975214a76d422b9fb90f 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_upper_back.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_geometry_right_upper_back.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_upper_back/geometry|0 0 0:1 1 1:1 1 3:2 1 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="1" Type="Polyvertex">
-		<DataItem DataType="Int" Dimensions="1" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_upper_back/topology|0 0:1 1:1 1:2 1</DataItem>
+	<Topology Type="Polyvertex" NodesPerElement="1" NumberOfElements="1">
+		<DataItem DataType="UInt" Dimensions="1" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_geometry_right_upper_back/topology|0 0:1 1:1 1:2 1</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_hex_1e4_material_groups.xdmf b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_hex_1e4_material_groups.xdmf
index 3da3bc16d6073be81f249acd6d52551525f2073e..61424095d866de7fcb45bd4d2eb4b9ff68effca8 100644
--- a/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_hex_1e4_material_groups.xdmf
+++ b/Tests/Data/Elliptic/cube_1x1x1_SteadyStateDiffusion/xdmf/cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups_cube_1x1x1_hex_1e4_material_groups.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-38-g567bb547.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="12167 3" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_hex_1e4_material_groups/geometry|0 0 0:1 1 1:1 12167 3:2 12167 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="85184" Type="Hexahedron">
-		<DataItem DataType="Int" Dimensions="85184" Format="HDF" Precision="4">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_hex_1e4_material_groups/topology|0 0:1 1:1 85184:2 85184</DataItem>
+	<Topology Type="Hexahedron">
+		<DataItem DataType="UInt" Dimensions="10648 8" Format="HDF" Precision="8">cube_1e4_anisotropic_cube_1x1x1_hex_1e4_material_groups.h5:/meshes/cube_1x1x1_hex_1e4_material_groups/topology|0 0 0:1 1 1:1 10648 8:2 10648 8</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output.h5 b/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output.h5
index 109f4ec3203e50383c6b3707c2948226339544f6..6fdc3e58d0b7da520d71714a6e89d564dc43dcde 100644
Binary files a/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output.h5 and b/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output.h5 differ
diff --git a/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output_square_1x1_geometry_left.xdmf b/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output_square_1x1_geometry_left.xdmf
index b0ee6419c48cd5484e8918b031f6a5db7047dd4d..74ad22817f608e99928519c3a3910c34dfbb7352 100644
--- a/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output_square_1x1_geometry_left.xdmf
+++ b/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output_square_1x1_geometry_left.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="11 3" Format="HDF" Precision="8">square_1x1_quad_1e2_GMRES_GML_output.h5:/meshes/square_1x1_geometry_left/geometry|0 0 0:1 1 1:1 11 3:2 11 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="30" Type="Polyline" NodesPerElement="2">
-		<DataItem DataType="Int" Dimensions="30" Format="HDF" Precision="4">square_1x1_quad_1e2_GMRES_GML_output.h5:/meshes/square_1x1_geometry_left/topology|0 0:1 1:1 30:2 30</DataItem>
+	<Topology Type="Polyline" NodesPerElement="2" NumberOfElements="10">
+		<DataItem DataType="UInt" Dimensions="10 2" Format="HDF" Precision="8">square_1x1_quad_1e2_GMRES_GML_output.h5:/meshes/square_1x1_geometry_left/topology|0 0 0:1 1 1:1 10 2:2 10 2</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output_square_1x1_quad_1e2.xdmf b/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output_square_1x1_quad_1e2.xdmf
index 4a0805ffcc92e3bf113920e2fa25c3817220023b..413c4c681965c6d358912f1da07cf221e8c54d6e 100644
--- a/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output_square_1x1_quad_1e2.xdmf
+++ b/Tests/Data/Elliptic/square_1x1_SteadyStateDiffusion/square_1x1_quad_1e2_GMRES_GML_output_square_1x1_quad_1e2.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="121 3" Format="HDF" Precision="8">square_1x1_quad_1e2_GMRES_GML_output.h5:/meshes/square_1x1_quad_1e2/geometry|0 0 0:1 1 1:1 121 3:2 121 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="400" Type="Quadrilateral">
-		<DataItem DataType="Int" Dimensions="400" Format="HDF" Precision="4">square_1x1_quad_1e2_GMRES_GML_output.h5:/meshes/square_1x1_quad_1e2/topology|0 0:1 1:1 400:2 400</DataItem>
+	<Topology Type="Quadrilateral">
+		<DataItem DataType="UInt" Dimensions="100 4" Format="HDF" Precision="8">square_1x1_quad_1e2_GMRES_GML_output.h5:/meshes/square_1x1_quad_1e2/topology|0 0 0:1 1 1:1 100 4:2 100 4</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3.h5 b/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3.h5
new file mode 100644
index 0000000000000000000000000000000000000000..73aee7676d950d8dea17c678c4e216e4c234145f
Binary files /dev/null and b/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3.h5 differ
diff --git a/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3_1.h5 b/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3_1.h5
new file mode 100644
index 0000000000000000000000000000000000000000..83abb48be02be726deb044ed3c2bc9614ef866c1
Binary files /dev/null and b/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3_1.h5 differ
diff --git a/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3_2files_0.xdmf b/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3_2files_0.xdmf
index 1dde252be3a970d123702b33dcac8110dbf28fd9..a11175c75b4a5e56140be47c64e99a6a162ed0aa 100644
--- a/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3_2files_0.xdmf
+++ b/Tests/Data/EllipticPETSc/XDMF_NP3_2/cube_1e3_np3_2files_0.xdmf
@@ -1,44 +1,40 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.4.0-1101-g95b76f5387.dirty"/>
+<Information Name="OGS_VERSION" Value="6.5.3-264-gc2da67b2"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
-<Grid Name="Grid">
-	<Time Value="0"/>
+<Grid Name="Grid" GridType="Uniform">
+    <Time Value="0"/>
+
 	<Geometry Origin="" Type="XYZ">
-		<DataItem DataType="Float" Dimensions="1265 3" Format="HDF" Precision="8">cube_1e3_np3_2files_0.h5:meshes/cube_1x1x1_hex_1e3/geometry|0 0 0:1 1 1:1 1265 3:2 1265 3</DataItem>
+		<DataItem DataType="Float" Dimensions="1265 3" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/geometry|0 0 0:1 1 1:1 1265 3:2 1265 3</DataItem>
 	</Geometry>
-	<Topology Dimensions="7344" Type="Mixed">
-		<DataItem DataType="Int" Dimensions="7344" Format="HDF" Precision="4">cube_1e3_np3_2files_0.h5:meshes/cube_1x1x1_hex_1e3/topology|0 0:1 1:1 7344:2 7344</DataItem>
+
+	<Topology Type="Hexahedron">
+		<DataItem DataType="UInt" Dimensions="816 8" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/topology|0 0 0:1 1 1:1 816 8:2 816 8</DataItem>
 	</Topology>
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="D1_left_front_N1_right" Type="None">
-		<DataItem DataType="Float" Dimensions="1265" Format="HDF" Precision="8">cube_1e3_np3_2files_0.h5:meshes/cube_1x1x1_hex_1e3/D1_left_front_N1_right|0 0:1 1:1 1265:2 1265</DataItem>
-	</Attribute>
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="Linear_1_to_minus1" Type="None">
-		<DataItem DataType="Float" Dimensions="1265" Format="HDF" Precision="8">cube_1e3_np3_2files_0.h5:meshes/cube_1x1x1_hex_1e3/Linear_1_to_minus1|0 0:1 1:1 1265:2 1265</DataItem>
-	</Attribute>
-	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="816" Format="HDF" Precision="4">cube_1e3_np3_2files_0.h5:meshes/cube_1x1x1_hex_1e3/MaterialIDs|0 0:1 1:1 816:2 816</DataItem>
-	</Attribute>
+
+
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="pressure" Type="None">
-		<DataItem DataType="Float" Dimensions="1265" Format="HDF" Precision="8">cube_1e3_np3_2files_0.h5:meshes/cube_1x1x1_hex_1e3/pressure|0 0:1 1:1 1265:2 1265</DataItem>
+		<DataItem DataType="Float" Dimensions="1265" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/pressure|0 0:1 1:1 1265:2 1265</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="v" Type="None">
-		<DataItem DataType="Float" Dimensions="1265 3" Format="HDF" Precision="8">cube_1e3_np3_2files_0.h5:meshes/cube_1x1x1_hex_1e3/v|0 0 0:1 1 1:1 1265 3:2 1265 3</DataItem>
+		<DataItem DataType="Float" Dimensions="1265 3" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/v|0 0 0:1 1 1:1 1265 3:2 1265 3</DataItem>
 	</Attribute>
 </Grid>
-<Grid Name="Grid">
-	<Time Value="0.1"/>
+<Grid Name="Grid" GridType="Uniform">
+    <Time Value="0.10000000000000001"/>
+
 	<xi:include xpointer="element(/1/1/2/1/2)"/>
+
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
-	<xi:include xpointer="element(/1/1/2/1/4)"/>
-	<xi:include xpointer="element(/1/1/2/1/5)"/>
-	<xi:include xpointer="element(/1/1/2/1/6)"/>
+
+
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="pressure" Type="None">
-		<DataItem DataType="Float" Dimensions="1265" Format="HDF" Precision="8">cube_1e3_np3_2files_0.h5:meshes/cube_1x1x1_hex_1e3/pressure|1 0:1 1:1 1265:2 1265</DataItem>
+		<DataItem DataType="Float" Dimensions="1265" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/pressure|1 0:1 1:1 1265:2 1265</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="v" Type="None">
-		<DataItem DataType="Float" Dimensions="1265 3" Format="HDF" Precision="8">cube_1e3_np3_2files_0.h5:meshes/cube_1x1x1_hex_1e3/v|1 0 0:1 1 1:1 1265 3:2 1265 3</DataItem>
+		<DataItem DataType="Float" Dimensions="1265 3" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/v|1 0 0:1 1 1:1 1265 3:2 1265 3</DataItem>
 	</Attribute>
 </Grid>
 </Grid>
diff --git a/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3.h5 b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3.h5
new file mode 100644
index 0000000000000000000000000000000000000000..d47d581df116bf7241a6a677f0c8e5f63a211e0d
Binary files /dev/null and b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3.h5 differ
diff --git a/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_1.h5 b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_1.h5
new file mode 100644
index 0000000000000000000000000000000000000000..ec5406f6b19554a00e1513eaafa73245418b6697
Binary files /dev/null and b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_1.h5 differ
diff --git a/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_2.h5 b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_2.h5
new file mode 100644
index 0000000000000000000000000000000000000000..8bf3ff80b3c9e39bd92fe30c37992009cec9a217
Binary files /dev/null and b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_2.h5 differ
diff --git a/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_3files_0.h5 b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_3files_0.h5
deleted file mode 100644
index be8f04e16d212bc4cf2232ba6607793cadde824c..0000000000000000000000000000000000000000
Binary files a/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_3files_0.h5 and /dev/null differ
diff --git a/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_3files_0.xdmf b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_3files_0.xdmf
deleted file mode 100644
index fb3ea49426f0bbd3dcb5614a1417c97c47a9565f..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_3files_0.xdmf
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
-<Domain>
-<Information Name="OGS_VERSION" Value="6.4.0-1101-g95b76f5387.dirty"/>
-<Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
-<Grid Name="Grid">
-	<Time Value="0"/>
-	<Geometry Origin="" Type="XYZ">
-		<DataItem DataType="Float" Dimensions="643 3" Format="HDF" Precision="8">cube_1e3_np3_3files_0.h5:meshes/cube_1x1x1_hex_1e3/geometry|0 0 0:1 1 1:1 643 3:2 643 3</DataItem>
-	</Geometry>
-	<Topology Dimensions="3753" Type="Mixed">
-		<DataItem DataType="Int" Dimensions="3753" Format="HDF" Precision="4">cube_1e3_np3_3files_0.h5:meshes/cube_1x1x1_hex_1e3/topology|0 0:1 1:1 3753:2 3753</DataItem>
-	</Topology>
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="D1_left_front_N1_right" Type="None">
-		<DataItem DataType="Float" Dimensions="643" Format="HDF" Precision="8">cube_1e3_np3_3files_0.h5:meshes/cube_1x1x1_hex_1e3/D1_left_front_N1_right|0 0:1 1:1 643:2 643</DataItem>
-	</Attribute>
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="Linear_1_to_minus1" Type="None">
-		<DataItem DataType="Float" Dimensions="643" Format="HDF" Precision="8">cube_1e3_np3_3files_0.h5:meshes/cube_1x1x1_hex_1e3/Linear_1_to_minus1|0 0:1 1:1 643:2 643</DataItem>
-	</Attribute>
-	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="417" Format="HDF" Precision="4">cube_1e3_np3_3files_0.h5:meshes/cube_1x1x1_hex_1e3/MaterialIDs|0 0:1 1:1 417:2 417</DataItem>
-	</Attribute>
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="pressure" Type="None">
-		<DataItem DataType="Float" Dimensions="643" Format="HDF" Precision="8">cube_1e3_np3_3files_0.h5:meshes/cube_1x1x1_hex_1e3/pressure|0 0:1 1:1 643:2 643</DataItem>
-	</Attribute>
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="v" Type="None">
-		<DataItem DataType="Float" Dimensions="643 3" Format="HDF" Precision="8">cube_1e3_np3_3files_0.h5:meshes/cube_1x1x1_hex_1e3/v|0 0 0:1 1 1:1 643 3:2 643 3</DataItem>
-	</Attribute>
-</Grid>
-<Grid Name="Grid">
-	<Time Value="0.1"/>
-	<xi:include xpointer="element(/1/1/2/1/2)"/>
-	<xi:include xpointer="element(/1/1/2/1/3)"/>
-	<xi:include xpointer="element(/1/1/2/1/4)"/>
-	<xi:include xpointer="element(/1/1/2/1/5)"/>
-	<xi:include xpointer="element(/1/1/2/1/6)"/>
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="pressure" Type="None">
-		<DataItem DataType="Float" Dimensions="643" Format="HDF" Precision="8">cube_1e3_np3_3files_0.h5:meshes/cube_1x1x1_hex_1e3/pressure|1 0:1 1:1 643:2 643</DataItem>
-	</Attribute>
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="v" Type="None">
-		<DataItem DataType="Float" Dimensions="643 3" Format="HDF" Precision="8">cube_1e3_np3_3files_0.h5:meshes/cube_1x1x1_hex_1e3/v|1 0 0:1 1 1:1 643 3:2 643 3</DataItem>
-	</Attribute>
-</Grid>
-</Grid>
-</Domain>
-</Xdmf>
\ No newline at end of file
diff --git a/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf
new file mode 100644
index 0000000000000000000000000000000000000000..9e065f8992914d68d045905c1001acb7e60937b2
--- /dev/null
+++ b/Tests/Data/EllipticPETSc/XDMF_NP3_3/cube_1e3_np3_cube_1x1x1_hex_1e3.xdmf
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
+<Domain>
+<Information Name="OGS_VERSION" Value="6.5.3-249-g94b41f50.dirty"/>
+<Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
+<Grid Name="Grid" GridType="Uniform">
+    <Time Value="0"/>
+
+	<Geometry Origin="" Type="XYZ">
+		<DataItem DataType="Float" Dimensions="643 3" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/geometry|0 0 0:1 1 1:1 643 3:2 643 3</DataItem>
+	</Geometry>
+
+	<Topology Type="Hexahedron">
+		<DataItem DataType="UInt" Dimensions="417 8" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/topology|0 0 0:1 1 1:1 417 8:2 417 8</DataItem>
+	</Topology>
+
+
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="pressure" Type="None">
+		<DataItem DataType="Float" Dimensions="643" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/pressure|0 0:1 1:1 643:2 643</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="v" Type="None">
+		<DataItem DataType="Float" Dimensions="643 3" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/v|0 0 0:1 1 1:1 643 3:2 643 3</DataItem>
+	</Attribute>
+</Grid>
+<Grid Name="Grid" GridType="Uniform">
+    <Time Value="0.10000000000000001"/>
+
+	<xi:include xpointer="element(/1/1/2/1/2)"/>
+
+	<xi:include xpointer="element(/1/1/2/1/3)"/>
+
+
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="pressure" Type="None">
+		<DataItem DataType="Float" Dimensions="643" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/pressure|1 0:1 1:1 643:2 643</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="v" Type="None">
+		<DataItem DataType="Float" Dimensions="643 3" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/v|1 0 0:1 1 1:1 643 3:2 643 3</DataItem>
+	</Attribute>
+</Grid>
+</Grid>
+</Domain>
+</Xdmf>
\ No newline at end of file
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_np2.h5 b/Tests/Data/EllipticPETSc/cube_1e3_np2.h5
index 66323f31c22b34c00790729d5196f1e4a386ce2b..d4128a12ba499826b42cba5631e6adedbef33b6f 100644
Binary files a/Tests/Data/EllipticPETSc/cube_1e3_np2.h5 and b/Tests/Data/EllipticPETSc/cube_1e3_np2.h5 differ
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_np2.xdmf b/Tests/Data/EllipticPETSc/cube_1e3_np2.xdmf
index 46b29b49574c03136c6960c27d77298f90ba1ed7..ad4eec106d78753f11b81ab89294c6ed3bfb132f 100644
--- a/Tests/Data/EllipticPETSc/cube_1e3_np2.xdmf
+++ b/Tests/Data/EllipticPETSc/cube_1e3_np2.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-51-g80b3ad9a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-264-gc2da67b2"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1637 3" Format="HDF" Precision="8">cube_1e3_np2.h5:/meshes/cube_1x1x1_hex_1e3/geometry|0 0 0:1 1 1:1 1637 3:2 1637 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="9032" Type="Hexahedron">
-		<DataItem DataType="Int" Dimensions="9032" Format="HDF" Precision="4">cube_1e3_np2.h5:/meshes/cube_1x1x1_hex_1e3/topology|0 0:1 1:1 9032:2 9032</DataItem>
+	<Topology Type="Hexahedron">
+		<DataItem DataType="UInt" Dimensions="1129 8" Format="HDF" Precision="8">cube_1e3_np2.h5:/meshes/cube_1x1x1_hex_1e3/topology|0 0 0:1 1 1:1 1129 8:2 1129 8</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_np3.h5 b/Tests/Data/EllipticPETSc/cube_1e3_np3.h5
index 381623a3a19948dac3250a97d19968ea5d2160fd..405fe2f4f1c8e5c80d28d4ef0b5c0cd8447d9bc8 100644
Binary files a/Tests/Data/EllipticPETSc/cube_1e3_np3.h5 and b/Tests/Data/EllipticPETSc/cube_1e3_np3.h5 differ
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_np3.xdmf b/Tests/Data/EllipticPETSc/cube_1e3_np3.xdmf
index da49afc9dccec7e3683f91ee444c6e84aede235c..f9db1ca0fe941b0ce5f9bf486e870a78de3e5b27 100644
--- a/Tests/Data/EllipticPETSc/cube_1e3_np3.xdmf
+++ b/Tests/Data/EllipticPETSc/cube_1e3_np3.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-51-g80b3ad9a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-198-g9285a1e0"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1895 3" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/geometry|0 0 0:1 1 1:1 1895 3:2 1895 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="9864" Type="Hexahedron">
-		<DataItem DataType="Int" Dimensions="9864" Format="HDF" Precision="4">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/topology|0 0:1 1:1 9864:2 9864</DataItem>
+	<Topology Type="Hexahedron">
+		<DataItem DataType="UInt" Dimensions="9864" Format="HDF" Precision="8">cube_1e3_np3.h5:/meshes/cube_1x1x1_hex_1e3/topology|0 0:1 1:1 9864:2 9864</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Parabolic/HT/SimpleSynthetics/XDMF/CoupledPressureParabolicTemperatureParabolicStaggered.h5 b/Tests/Data/Parabolic/HT/SimpleSynthetics/XDMF/CoupledPressureParabolicTemperatureParabolicStaggered.h5
index 00d89f0cac72e8d6285f24162eda8b208c856128..d951da8184314f4d38639080038e4d9cb2bf17b3 100644
Binary files a/Tests/Data/Parabolic/HT/SimpleSynthetics/XDMF/CoupledPressureParabolicTemperatureParabolicStaggered.h5 and b/Tests/Data/Parabolic/HT/SimpleSynthetics/XDMF/CoupledPressureParabolicTemperatureParabolicStaggered.h5 differ
diff --git a/Tests/Data/Parabolic/HT/SimpleSynthetics/XDMF/CoupledPressureParabolicTemperatureParabolicStaggered_square_1x1_quad_1e3.xdmf b/Tests/Data/Parabolic/HT/SimpleSynthetics/XDMF/CoupledPressureParabolicTemperatureParabolicStaggered_square_1x1_quad_1e3.xdmf
index bfb6b4de9ee48a22446606e08ab589735f1df574..3747d06783ebed815d56154235aa87ab1de2d909 100644
--- a/Tests/Data/Parabolic/HT/SimpleSynthetics/XDMF/CoupledPressureParabolicTemperatureParabolicStaggered_square_1x1_quad_1e3.xdmf
+++ b/Tests/Data/Parabolic/HT/SimpleSynthetics/XDMF/CoupledPressureParabolicTemperatureParabolicStaggered_square_1x1_quad_1e3.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="1089 3" Format="HDF" Precision="8">CoupledPressureParabolicTemperatureParabolicStaggered.h5:/meshes/square_1x1_quad_1e3/geometry|0 0 0:1 1 1:1 1089 3:11 1089 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="4096" Type="Quadrilateral">
-		<DataItem DataType="Int" Dimensions="4096" Format="HDF" Precision="4">CoupledPressureParabolicTemperatureParabolicStaggered.h5:/meshes/square_1x1_quad_1e3/topology|0 0:1 1:1 4096:11 4096</DataItem>
+	<Topology Type="Quadrilateral">
+		<DataItem DataType="UInt" Dimensions="1024 4" Format="HDF" Precision="8">CoupledPressureParabolicTemperatureParabolicStaggered.h5:/meshes/square_1x1_quad_1e3/topology|0 0 0:1 1 1:1 1024 4:11 1024 4</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5 b/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5
index 251569f5a70cd7433990dbeafb2433a3c59a910e..73dbc53169e31598b01f4339a0248fa3c479d046 100644
Binary files a/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5 and b/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5 differ
diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27.xdmf b/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27.xdmf
index 8dd3f6998f93cc1d06ad97a1078c5cb66ff4902f..e7980c2ba5ad5a822b8cf0ba53a3ce080101b1d3 100644
--- a/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27.xdmf
+++ b/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="64 3" Format="HDF" Precision="8">top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5:/meshes/cuboid_1x1x1_hex_27/geometry|0 0 0:1 1 1:1 64 3:3 64 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="216" Type="Hexahedron">
-		<DataItem DataType="Int" Dimensions="216" Format="HDF" Precision="4">top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5:/meshes/cuboid_1x1x1_hex_27/topology|0 0:1 1:1 216:3 216</DataItem>
+	<Topology Type="Hexahedron">
+		<DataItem DataType="UInt" Dimensions="27 8" Format="HDF" Precision="8">top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5:/meshes/cuboid_1x1x1_hex_27/topology|0 0 0:1 1 1:1 27 8:3 27 8</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27_bottom_boundary.xdmf b/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27_bottom_boundary.xdmf
index 3935cd62b7908b2e041b1493a823aab71e7e9e46..0a8a9ed520d2beb49837ea1c559cc57147a73e8d 100644
--- a/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27_bottom_boundary.xdmf
+++ b/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27_bottom_boundary.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="16 3" Format="HDF" Precision="8">top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5:/meshes/cuboid_1x1x1_hex_27_bottom_boundary/geometry|0 0 0:1 1 1:1 16 3:3 16 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="36" Type="Quadrilateral">
-		<DataItem DataType="Int" Dimensions="36" Format="HDF" Precision="4">top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5:/meshes/cuboid_1x1x1_hex_27_bottom_boundary/topology|0 0:1 1:1 36:3 36</DataItem>
+	<Topology Type="Quadrilateral">
+		<DataItem DataType="UInt" Dimensions="9 4" Format="HDF" Precision="8">top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5:/meshes/cuboid_1x1x1_hex_27_bottom_boundary/topology|0 0 0:1 1 1:1 9 4:3 9 4</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27_top_boundary.xdmf b/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27_top_boundary.xdmf
index c9c7f45f5a2a7fb62d482d767255a29ac22c24bb..6e1f25cded7f5e7a6728f70c33b32e0b3e0a519e 100644
--- a/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27_top_boundary.xdmf
+++ b/Tests/Data/Parabolic/LiquidFlow/Flux/3D/Hex/top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27_cuboid_1x1x1_hex_27_top_boundary.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="16 3" Format="HDF" Precision="8">top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5:/meshes/cuboid_1x1x1_hex_27_top_boundary/geometry|0 0 0:1 1 1:1 16 3:3 16 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="36" Type="Quadrilateral">
-		<DataItem DataType="Int" Dimensions="36" Format="HDF" Precision="4">top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5:/meshes/cuboid_1x1x1_hex_27_top_boundary/topology|0 0:1 1:1 36:3 36</DataItem>
+	<Topology Type="Quadrilateral">
+		<DataItem DataType="UInt" Dimensions="9 4" Format="HDF" Precision="8">top_boundary_to_bottom_boundary_cuboid_1x1x1_hex_27.h5:/meshes/cuboid_1x1x1_hex_27_top_boundary/topology|0 0 0:1 1 1:1 9 4:3 9 4</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.h5 b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.h5
index 68052650c221a24846726047f563cdc3720df8c0..51e629a8a1caf0de235a0d3b2e5d9e5ac20cb6ef 100644
Binary files a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.h5 and b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.h5 differ
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.vtu b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.vtu
index af7bdb6b4b1f69d6f3aa8d7328b55cc447297416..84b53216b868cf2a04f627603a5954b12e03f99c 100644
Binary files a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.vtu and b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.vtu differ
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.xdmf b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.xdmf
index 7955f191cf9a3bfcd36f2b8d5f09687654c6aaa0..99c2851383a7a12acfad37e6e8ff80ec22b7c408 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.xdmf
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-322-ge8268615"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,13 +10,13 @@
 		<DataItem DataType="Float" Dimensions="25 3" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/geometry|0 0 0:1 1 1:1 25 3:8 25 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="96" Type="Triangle">
-		<DataItem DataType="Int" Dimensions="96" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/topology|0 0:1 1:1 96:8 96</DataItem>
+	<Topology Type="Triangle">
+		<DataItem DataType="UInt" Dimensions="32 3" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/topology|0 0 0:1 1 1:1 32 3:8 32 3</DataItem>
 	</Topology>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|0 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|0 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|0 0:1 1:1 25:8 25</DataItem>
@@ -36,8 +36,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|1 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|1 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|1 0:1 1:1 25:8 25</DataItem>
@@ -57,8 +57,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|2 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|2 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|2 0:1 1:1 25:8 25</DataItem>
@@ -78,8 +78,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|3 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|3 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|3 0:1 1:1 25:8 25</DataItem>
@@ -99,8 +99,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|4 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|4 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|4 0:1 1:1 25:8 25</DataItem>
@@ -120,8 +120,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|5 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|5 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|5 0:1 1:1 25:8 25</DataItem>
@@ -141,8 +141,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|6 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|6 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|6 0:1 1:1 25:8 25</DataItem>
@@ -162,8 +162,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|7 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|7 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|7 0:1 1:1 25:8 25</DataItem>
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_left_boundary.vtu b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_left_boundary.vtu
index 52b20854c8fa372bdc09ddcf39b91e323c1982ae..0a0fe2a4ed392cd096a435fd77790c143de6f5cc 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_left_boundary.vtu
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_left_boundary.vtu
@@ -1,51 +1,24 @@
+<?xml version="1.0"?>
 <VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64">
   <UnstructuredGrid>
-    <Piece NumberOfPoints="5" NumberOfCells="4">
-      <PointData Scalars="bulk_node_ids">
-        <DataArray type="UInt64" IdType="1" Name="bulk_node_ids" format="ascii" RangeMin="0" RangeMax="20">
-          5 0 10 15 20
-        </DataArray>
+    <Piece NumberOfPoints="5"                    NumberOfCells="4"                   >
+      <PointData>
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="0"                    RangeMax="20"                   offset="0"                   />
       </PointData>
-      <CellData Scalars="bulk_element_ids">
-        <DataArray type="UInt64" IdType="1" Name="bulk_element_ids" format="ascii" RangeMin="0" RangeMax="24">
-          0 8 16 24
-        </DataArray>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="0"                    RangeMax="24"                   offset="64"                  />
       </CellData>
       <Points>
-        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="ascii" RangeMin="0" RangeMax="5">
-          0 1.25 3 0 0 3
-          0 2.5 3 0 3.75 3
-          0 5 3
-          <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2">
-            <Value index="0">
-              0
-            </Value>
-            <Value index="1">
-              5
-            </Value>
-          </InformationKey>
-          <InformationKey name="L2_NORM_FINITE_RANGE" location="vtkDataArray" length="2">
-            <Value index="0">
-              0
-            </Value>
-            <Value index="1">
-              5
-            </Value>
-          </InformationKey>
-        </DataArray>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="0"                    RangeMax="5"                    offset="120"                 />
       </Points>
       <Cells>
-        <DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="4">
-          0 1 2 0 3 2
-          4 3
-        </DataArray>
-        <DataArray type="Int64" Name="offsets" format="ascii" RangeMin="2" RangeMax="8">
-          2 4 6 8
-        </DataArray>
-        <DataArray type="UInt8" Name="types" format="ascii" RangeMin="3" RangeMax="3">
-          3 3 3 3
-        </DataArray>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="292"                 />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="388"                 />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="444"                 />
       </Cells>
     </Piece>
   </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _KAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAACgAAAAAAAAAPAAAAAAAAABQAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAEAAAAAAAAAAYAAAAAAAAAA==eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPQ/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABRAAAAAAAAAAAA=QAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAQAAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABgAAAAAAAAAIAAAAAAAAAA==BAAAAAAAAAADAwMD
+  </AppendedData>
 </VTKFile>
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_left_boundary.xdmf b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_left_boundary.xdmf
index 825e2ca55559c5f5080be97f07ab24cf791be35b..67867e0d0d5bff979d1cc10cdd7ebb8f5ec1d6d4 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_left_boundary.xdmf
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_left_boundary.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-322-ge8268615"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="5 3" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_left_boundary/geometry|0 0 0:1 1 1:1 5 3:8 5 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="12" Type="Polyline" NodesPerElement="2">
-		<DataItem DataType="Int" Dimensions="12" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_left_boundary/topology|0 0:1 1:1 12:8 12</DataItem>
+	<Topology Type="Polyline" NodesPerElement="2" NumberOfElements="4">
+		<DataItem DataType="UInt" Dimensions="4 2" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_left_boundary/topology|0 0 0:1 1 1:1 4 2:8 4 2</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_right_boundary.vtu b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_right_boundary.vtu
index 8df915d4a239106d1144e779cc796a10dd270e87..b8e6962db160b1e4fb16178c1d9a62e8c902883d 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_right_boundary.vtu
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_right_boundary.vtu
@@ -1,51 +1,24 @@
+<?xml version="1.0"?>
 <VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64">
   <UnstructuredGrid>
-    <Piece NumberOfPoints="5" NumberOfCells="4">
-      <PointData Scalars="bulk_node_ids">
-        <DataArray type="UInt64" IdType="1" Name="bulk_node_ids" format="ascii" RangeMin="4" RangeMax="24">
-          4 9 14 19 24
-        </DataArray>
+    <Piece NumberOfPoints="5"                    NumberOfCells="4"                   >
+      <PointData>
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="4"                    RangeMax="24"                   offset="0"                   />
       </PointData>
-      <CellData Scalars="bulk_element_ids">
-        <DataArray type="UInt64" IdType="1" Name="bulk_element_ids" format="ascii" RangeMin="7" RangeMax="31">
-          7 15 23 31
-        </DataArray>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="7"                    RangeMax="31"                   offset="64"                  />
       </CellData>
       <Points>
-        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="ascii" RangeMin="5" RangeMax="7.0710678118654755">
-          5 0 3 5 1.25 3
-          5 2.5 3 5 3.75 3
-          5 5 3
-          <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2">
-            <Value index="0">
-              5
-            </Value>
-            <Value index="1">
-              7.0710678119
-            </Value>
-          </InformationKey>
-          <InformationKey name="L2_NORM_FINITE_RANGE" location="vtkDataArray" length="2">
-            <Value index="0">
-              5
-            </Value>
-            <Value index="1">
-              7.0710678119
-            </Value>
-          </InformationKey>
-        </DataArray>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="5"                    RangeMax="7.0710678119"         offset="120"                 />
       </Points>
       <Cells>
-        <DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="4">
-          0 1 1 2 2 3
-          3 4
-        </DataArray>
-        <DataArray type="Int64" Name="offsets" format="ascii" RangeMin="2" RangeMax="8">
-          2 4 6 8
-        </DataArray>
-        <DataArray type="UInt8" Name="types" format="ascii" RangeMin="3" RangeMax="3">
-          3 3 3 3
-        </DataArray>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="292"                 />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="388"                 />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="444"                 />
       </Cells>
     </Piece>
   </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _KAAAAAAAAAAEAAAAAAAAAAkAAAAAAAAADgAAAAAAAAATAAAAAAAAABgAAAAAAAAAIAAAAAAAAAAHAAAAAAAAAA8AAAAAAAAAFwAAAAAAAAAfAAAAAAAAAA==eAAAAAAAAAAAAAAAAAAUQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUQAAAAAAAAPQ/AAAAAAAAAAAAAAAAAAAUQAAAAAAAAARAAAAAAAAAAAAAAAAAAAAUQAAAAAAAAA5AAAAAAAAAAAAAAAAAAAAUQAAAAAAAABRAAAAAAAAAAAA=QAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAQAAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABgAAAAAAAAAIAAAAAAAAAA==BAAAAAAAAAADAwMD
+  </AppendedData>
 </VTKFile>
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_right_boundary.xdmf b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_right_boundary.xdmf
index 62ad4d9f718cb3b7ba701950260ed84a6deff8cb..389a46b62ec70ac3424ffaafe16c7b9c8138fbcb 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_right_boundary.xdmf
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF/square_5x5_tris_32_right_boundary.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-322-ge8268615"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="5 3" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_right_boundary/geometry|0 0 0:1 1 1:1 5 3:8 5 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="12" Type="Polyline" NodesPerElement="2">
-		<DataItem DataType="Int" Dimensions="12" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_right_boundary/topology|0 0:1 1:1 12:8 12</DataItem>
+	<Topology Type="Polyline" NodesPerElement="2" NumberOfElements="4">
+		<DataItem DataType="UInt" Dimensions="4 2" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_right_boundary/topology|0 0 0:1 1 1:1 4 2:8 4 2</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.h5 b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.h5
index 4e233fa8a4f8be0150113067624328ce8de3e03d..30eb749375c4cc92beae6ba74a4661686fad611d 100644
Binary files a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.h5 and b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.h5 differ
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.vtu b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.vtu
index af7bdb6b4b1f69d6f3aa8d7328b55cc447297416..84b53216b868cf2a04f627603a5954b12e03f99c 100644
Binary files a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.vtu and b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.vtu differ
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.xdmf b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.xdmf
index 7955f191cf9a3bfcd36f2b8d5f09687654c6aaa0..f6b343b5148b697c106c7f3808012153fdc3904b 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.xdmf
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-318-g8d49e2ac.dirty"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,13 +10,13 @@
 		<DataItem DataType="Float" Dimensions="25 3" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/geometry|0 0 0:1 1 1:1 25 3:8 25 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="96" Type="Triangle">
-		<DataItem DataType="Int" Dimensions="96" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/topology|0 0:1 1:1 96:8 96</DataItem>
+	<Topology Type="Triangle">
+		<DataItem DataType="UInt" Dimensions="32 3" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/topology|0 0 0:1 1 1:1 32 3:8 32 3</DataItem>
 	</Topology>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|0 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|0 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|0 0:1 1:1 25:8 25</DataItem>
@@ -36,8 +36,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|1 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|1 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|1 0:1 1:1 25:8 25</DataItem>
@@ -57,8 +57,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|2 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|2 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|2 0:1 1:1 25:8 25</DataItem>
@@ -78,8 +78,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|3 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|3 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|3 0:1 1:1 25:8 25</DataItem>
@@ -99,8 +99,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|4 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|4 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|4 0:1 1:1 25:8 25</DataItem>
@@ -120,8 +120,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|5 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|5 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|5 0:1 1:1 25:8 25</DataItem>
@@ -141,8 +141,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|6 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|6 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|6 0:1 1:1 25:8 25</DataItem>
@@ -162,8 +162,8 @@
 	<xi:include xpointer="element(/1/1/2/1/3)"/>
 
 
-	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-		<DataItem DataType="Int" Dimensions="25" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|7 0:1 1:1 25:8 25</DataItem>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="32" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/MaterialIDs|7 0:1 1:1 32:8 32</DataItem>
 	</Attribute>
 	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="VolumetricFlowRate" Type="None">
 		<DataItem DataType="Float" Dimensions="25" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32/VolumetricFlowRate|7 0:1 1:1 25:8 25</DataItem>
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_left_boundary.vtu b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_left_boundary.vtu
index 52b20854c8fa372bdc09ddcf39b91e323c1982ae..0a0fe2a4ed392cd096a435fd77790c143de6f5cc 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_left_boundary.vtu
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_left_boundary.vtu
@@ -1,51 +1,24 @@
+<?xml version="1.0"?>
 <VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64">
   <UnstructuredGrid>
-    <Piece NumberOfPoints="5" NumberOfCells="4">
-      <PointData Scalars="bulk_node_ids">
-        <DataArray type="UInt64" IdType="1" Name="bulk_node_ids" format="ascii" RangeMin="0" RangeMax="20">
-          5 0 10 15 20
-        </DataArray>
+    <Piece NumberOfPoints="5"                    NumberOfCells="4"                   >
+      <PointData>
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="0"                    RangeMax="20"                   offset="0"                   />
       </PointData>
-      <CellData Scalars="bulk_element_ids">
-        <DataArray type="UInt64" IdType="1" Name="bulk_element_ids" format="ascii" RangeMin="0" RangeMax="24">
-          0 8 16 24
-        </DataArray>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="0"                    RangeMax="24"                   offset="64"                  />
       </CellData>
       <Points>
-        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="ascii" RangeMin="0" RangeMax="5">
-          0 1.25 3 0 0 3
-          0 2.5 3 0 3.75 3
-          0 5 3
-          <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2">
-            <Value index="0">
-              0
-            </Value>
-            <Value index="1">
-              5
-            </Value>
-          </InformationKey>
-          <InformationKey name="L2_NORM_FINITE_RANGE" location="vtkDataArray" length="2">
-            <Value index="0">
-              0
-            </Value>
-            <Value index="1">
-              5
-            </Value>
-          </InformationKey>
-        </DataArray>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="0"                    RangeMax="5"                    offset="120"                 />
       </Points>
       <Cells>
-        <DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="4">
-          0 1 2 0 3 2
-          4 3
-        </DataArray>
-        <DataArray type="Int64" Name="offsets" format="ascii" RangeMin="2" RangeMax="8">
-          2 4 6 8
-        </DataArray>
-        <DataArray type="UInt8" Name="types" format="ascii" RangeMin="3" RangeMax="3">
-          3 3 3 3
-        </DataArray>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="292"                 />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="388"                 />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="444"                 />
       </Cells>
     </Piece>
   </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _KAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAACgAAAAAAAAAPAAAAAAAAABQAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAEAAAAAAAAAAYAAAAAAAAAA==eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPQ/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABRAAAAAAAAAAAA=QAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAQAAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABgAAAAAAAAAIAAAAAAAAAA==BAAAAAAAAAADAwMD
+  </AppendedData>
 </VTKFile>
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_left_boundary.xdmf b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_left_boundary.xdmf
index 825e2ca55559c5f5080be97f07ab24cf791be35b..67867e0d0d5bff979d1cc10cdd7ebb8f5ec1d6d4 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_left_boundary.xdmf
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_left_boundary.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-322-ge8268615"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="5 3" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_left_boundary/geometry|0 0 0:1 1 1:1 5 3:8 5 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="12" Type="Polyline" NodesPerElement="2">
-		<DataItem DataType="Int" Dimensions="12" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_left_boundary/topology|0 0:1 1:1 12:8 12</DataItem>
+	<Topology Type="Polyline" NodesPerElement="2" NumberOfElements="4">
+		<DataItem DataType="UInt" Dimensions="4 2" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_left_boundary/topology|0 0 0:1 1 1:1 4 2:8 4 2</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_right_boundary.vtu b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_right_boundary.vtu
index 8df915d4a239106d1144e779cc796a10dd270e87..b8e6962db160b1e4fb16178c1d9a62e8c902883d 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_right_boundary.vtu
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_right_boundary.vtu
@@ -1,51 +1,24 @@
+<?xml version="1.0"?>
 <VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64">
   <UnstructuredGrid>
-    <Piece NumberOfPoints="5" NumberOfCells="4">
-      <PointData Scalars="bulk_node_ids">
-        <DataArray type="UInt64" IdType="1" Name="bulk_node_ids" format="ascii" RangeMin="4" RangeMax="24">
-          4 9 14 19 24
-        </DataArray>
+    <Piece NumberOfPoints="5"                    NumberOfCells="4"                   >
+      <PointData>
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="4"                    RangeMax="24"                   offset="0"                   />
       </PointData>
-      <CellData Scalars="bulk_element_ids">
-        <DataArray type="UInt64" IdType="1" Name="bulk_element_ids" format="ascii" RangeMin="7" RangeMax="31">
-          7 15 23 31
-        </DataArray>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="7"                    RangeMax="31"                   offset="64"                  />
       </CellData>
       <Points>
-        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="ascii" RangeMin="5" RangeMax="7.0710678118654755">
-          5 0 3 5 1.25 3
-          5 2.5 3 5 3.75 3
-          5 5 3
-          <InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2">
-            <Value index="0">
-              5
-            </Value>
-            <Value index="1">
-              7.0710678119
-            </Value>
-          </InformationKey>
-          <InformationKey name="L2_NORM_FINITE_RANGE" location="vtkDataArray" length="2">
-            <Value index="0">
-              5
-            </Value>
-            <Value index="1">
-              7.0710678119
-            </Value>
-          </InformationKey>
-        </DataArray>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="5"                    RangeMax="7.0710678119"         offset="120"                 />
       </Points>
       <Cells>
-        <DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="4">
-          0 1 1 2 2 3
-          3 4
-        </DataArray>
-        <DataArray type="Int64" Name="offsets" format="ascii" RangeMin="2" RangeMax="8">
-          2 4 6 8
-        </DataArray>
-        <DataArray type="UInt8" Name="types" format="ascii" RangeMin="3" RangeMax="3">
-          3 3 3 3
-        </DataArray>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="292"                 />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="388"                 />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="444"                 />
       </Cells>
     </Piece>
   </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _KAAAAAAAAAAEAAAAAAAAAAkAAAAAAAAADgAAAAAAAAATAAAAAAAAABgAAAAAAAAAIAAAAAAAAAAHAAAAAAAAAA8AAAAAAAAAFwAAAAAAAAAfAAAAAAAAAA==eAAAAAAAAAAAAAAAAAAUQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUQAAAAAAAAPQ/AAAAAAAAAAAAAAAAAAAUQAAAAAAAAARAAAAAAAAAAAAAAAAAAAAUQAAAAAAAAA5AAAAAAAAAAAAAAAAAAAAUQAAAAAAAABRAAAAAAAAAAAA=QAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAQAAAAAAAAAIAAAAAAAAAACAAAAAAAAAAQAAAAAAAAABgAAAAAAAAAIAAAAAAAAAA==BAAAAAAAAAADAwMD
+  </AppendedData>
 </VTKFile>
diff --git a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_right_boundary.xdmf b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_right_boundary.xdmf
index 62ad4d9f718cb3b7ba701950260ed84a6deff8cb..389a46b62ec70ac3424ffaafe16c7b9c8138fbcb 100644
--- a/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_right_boundary.xdmf
+++ b/Tests/Data/Parabolic/LiquidFlow/SimpleSynthetics/XDMF_compression_off/square_5x5_tris_32_right_boundary.xdmf
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
 <Domain>
-<Information Name="OGS_VERSION" Value="6.5.3-47-g1893f23a"/>
+<Information Name="OGS_VERSION" Value="6.5.3-322-ge8268615"/>
 <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
 <Grid Name="Grid" GridType="Uniform">
     <Time Value="0"/>
@@ -10,8 +10,8 @@
 		<DataItem DataType="Float" Dimensions="5 3" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_right_boundary/geometry|0 0 0:1 1 1:1 5 3:8 5 3</DataItem>
 	</Geometry>
 
-	<Topology Dimensions="12" Type="Polyline" NodesPerElement="2">
-		<DataItem DataType="Int" Dimensions="12" Format="HDF" Precision="4">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_right_boundary/topology|0 0:1 1:1 12:8 12</DataItem>
+	<Topology Type="Polyline" NodesPerElement="2" NumberOfElements="4">
+		<DataItem DataType="UInt" Dimensions="4 2" Format="HDF" Precision="8">square_5x5_tris_32.h5:/meshes/square_5x5_tris_32_right_boundary/topology|0 0 0:1 1 1:1 4 2:8 4 2</DataItem>
 	</Topology>
 
 
diff --git a/Tests/Data/Parabolic/T/1D_dirichlet/line_60_heat.h5 b/Tests/Data/Parabolic/T/1D_dirichlet/line_60_heat.h5
index 9381846a45b8815610a21157c7a4b21a714368bb..5fcc470e8b7b287896c4ebb66088942725f7d307 100644
Binary files a/Tests/Data/Parabolic/T/1D_dirichlet/line_60_heat.h5 and b/Tests/Data/Parabolic/T/1D_dirichlet/line_60_heat.h5 differ
diff --git a/Tests/Data/Parabolic/T/1D_dirichlet/line_60_heat_line_60_heat_ts_0_t_0.000000.xdmf b/Tests/Data/Parabolic/T/1D_dirichlet/line_60_heat_line_60_heat_ts_0_t_0.000000.xdmf
index 1ea3ac5bc0e45f17f05edeb1262177a4963a3e4f..c3facb084b3e75866d63a089e65ab40f7e72fad0 100644
--- a/Tests/Data/Parabolic/T/1D_dirichlet/line_60_heat_line_60_heat_ts_0_t_0.000000.xdmf
+++ b/Tests/Data/Parabolic/T/1D_dirichlet/line_60_heat_line_60_heat_ts_0_t_0.000000.xdmf
@@ -1,80 +1,96 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Xdmf xmlns:xi="http://www.w3.org/2001/XInclude" Version="3.0">
-    <Domain>
-        <Information Name="OGS_VERSION" Value="6.4.2-501-g83c662ec96.dirty"/>
-        <Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
-            <Grid Name="Grid" GridType="Uniform">
-                <Time Value="0"/>
-                <Geometry Origin="" Type="XYZ">
-                    <DataItem DataType="Float" Dimensions="61 3" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/geometry|0 0 0:1 1 1:1 61 3:4 61 3</DataItem>
-                </Geometry>
-                <Topology Dimensions="240" Type="Mixed">
-                    <DataItem DataType="Int" Dimensions="240" Format="HDF" Precision="4">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/topology|0 0:1 1:1 240:4 240</DataItem>
-                </Topology>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="HeatFlowRate" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/HeatFlowRate|0 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-                <Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-                    <DataItem DataType="Int" Dimensions="60" Format="HDF" Precision="4">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/MaterialIDs|0 0:1 1:1 60:4 60</DataItem>
-                </Attribute>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="heat_flux" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/heat_flux|0 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="temperature" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/temperature|0 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-            </Grid>
-            <Grid Name="Grid" GridType="Uniform">
-                <Time Value="5078125"/>
-                <xi:include xpointer="element(/1/1/2/1/2)"/>
-                <xi:include xpointer="element(/1/1/2/1/3)"/>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="HeatFlowRate" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/HeatFlowRate|1 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-                <Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-                    <DataItem DataType="Int" Dimensions="60" Format="HDF" Precision="4">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/MaterialIDs|1 0:1 1:1 60:4 60</DataItem>
-                </Attribute>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="heat_flux" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/heat_flux|1 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="temperature" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/temperature|1 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-            </Grid>
-            <Grid Name="Grid" GridType="Uniform">
-                <Time Value="31640625"/>
-                <xi:include xpointer="element(/1/1/2/1/2)"/>
-                <xi:include xpointer="element(/1/1/2/1/3)"/>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="HeatFlowRate" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/HeatFlowRate|2 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-                <Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-                    <DataItem DataType="Int" Dimensions="60" Format="HDF" Precision="4">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/MaterialIDs|2 0:1 1:1 60:4 60</DataItem>
-                </Attribute>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="heat_flux" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/heat_flux|2 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="temperature" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/temperature|2 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-            </Grid>
-            <Grid Name="Grid" GridType="Uniform">
-                <Time Value="39062500"/>
-                <xi:include xpointer="element(/1/1/2/1/2)"/>
-                <xi:include xpointer="element(/1/1/2/1/3)"/>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="HeatFlowRate" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/HeatFlowRate|3 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-                <Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
-                    <DataItem DataType="Int" Dimensions="60" Format="HDF" Precision="4">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/MaterialIDs|3 0:1 1:1 60:4 60</DataItem>
-                </Attribute>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="heat_flux" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/heat_flux|3 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-                <Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="temperature" Type="None">
-                    <DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/temperature|3 0:1 1:1 61:4 61</DataItem>
-                </Attribute>
-            </Grid>
-        </Grid>
-    </Domain>
-</Xdmf>
+<Domain>
+<Information Name="OGS_VERSION" Value="6.5.3-237-g721feae5"/>
+<Grid CollectionType="Temporal" GridType="Collection" Name="Collection">
+<Grid Name="Grid" GridType="Uniform">
+    <Time Value="0"/>
+
+	<Geometry Origin="" Type="XYZ">
+		<DataItem DataType="Float" Dimensions="61 3" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/geometry|0 0 0:1 1 1:1 61 3:4 61 3</DataItem>
+	</Geometry>
+
+	<Topology Type="Polyline" NodesPerElement="2" NumberOfElements="60">
+		<DataItem DataType="UInt" Dimensions="60 2" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/topology|0 0 0:1 1 1:1 60 2:4 60 2</DataItem>
+	</Topology>
+
+
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="HeatFlowRate" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/HeatFlowRate|0 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="60" Format="HDF" Precision="4">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/MaterialIDs|0 0:1 1:1 60:4 60</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="heat_flux" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/heat_flux|0 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="temperature" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/temperature|0 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+</Grid>
+<Grid Name="Grid" GridType="Uniform">
+    <Time Value="5078125"/>
+
+	<xi:include xpointer="element(/1/1/2/1/2)"/>
+
+	<xi:include xpointer="element(/1/1/2/1/3)"/>
+
+
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="HeatFlowRate" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/HeatFlowRate|1 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="60" Format="HDF" Precision="4">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/MaterialIDs|1 0:1 1:1 60:4 60</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="heat_flux" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/heat_flux|1 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="temperature" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/temperature|1 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+</Grid>
+<Grid Name="Grid" GridType="Uniform">
+    <Time Value="31640625"/>
+
+	<xi:include xpointer="element(/1/1/2/1/2)"/>
+
+	<xi:include xpointer="element(/1/1/2/1/3)"/>
+
+
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="HeatFlowRate" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/HeatFlowRate|2 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="60" Format="HDF" Precision="4">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/MaterialIDs|2 0:1 1:1 60:4 60</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="heat_flux" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/heat_flux|2 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="temperature" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/temperature|2 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+</Grid>
+<Grid Name="Grid" GridType="Uniform">
+    <Time Value="39062500"/>
+
+	<xi:include xpointer="element(/1/1/2/1/2)"/>
+
+	<xi:include xpointer="element(/1/1/2/1/3)"/>
+
+
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="HeatFlowRate" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/HeatFlowRate|3 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+	<Attribute Center="Cell" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="MaterialIDs" Type="None">
+		<DataItem DataType="Int" Dimensions="60" Format="HDF" Precision="4">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/MaterialIDs|3 0:1 1:1 60:4 60</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="heat_flux" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/heat_flux|3 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+	<Attribute Center="Node" ElementCell="" ElementDegree="0" ElementFamily="" ItemType="" Name="temperature" Type="None">
+		<DataItem DataType="Float" Dimensions="61" Format="HDF" Precision="8">line_60_heat.h5:/meshes/line_60_heat_ts_0_t_0.000000/temperature|3 0:1 1:1 61:4 61</DataItem>
+	</Attribute>
+</Grid>
+</Grid>
+</Domain>
+</Xdmf>
\ No newline at end of file
diff --git a/Tests/xdmfdiff/xdmfdiff.cpp b/Tests/xdmfdiff/xdmfdiff.cpp
index c96e8c77638d998eefb1bdd6cebde6bae99dd0e0..0823f8a383e4f33fab0f78753023044f04e5decc 100644
--- a/Tests/xdmfdiff/xdmfdiff.cpp
+++ b/Tests/xdmfdiff/xdmfdiff.cpp
@@ -157,7 +157,20 @@ std::unique_ptr<Grid> readMesh(std::string const& filename,
         shared_dynamic_cast<XdmfDomain>(xreader->read(filename));
     auto const gridcollection = domain->getGridCollection("Collection");
     auto const ungrid = gridcollection->getUnstructuredGrid(timestep);
+    if (!ungrid)
+    {
+        std::cerr << "Could not get unstructured grid for timestep " << timestep
+                  << " from file " << filename << std::endl;
+        return nullptr;
+    }
     auto const geometry = ungrid->getGeometry();
+    if (!geometry)
+    {
+        std::cerr
+            << "Could not get geometry from unstructured grid for timestep "
+            << timestep << " from file " << filename << std::endl;
+        return nullptr;
+    }
     geometry->read();
     int const size_points = geometry->getSize();
     std::vector<double> points(size_points);
@@ -170,6 +183,11 @@ std::unique_ptr<Grid> readMesh(std::string const& filename,
     topology->getValues(0, topology_values.data(), size_topology);
 
     auto const attribute = ungrid->getAttribute(attribute_name);
+    if (!attribute)
+    {
+        std::cerr << "Could not access attribute data for '" << attribute_name
+                  << "'" << std::endl;
+    }
     attribute->read();
     int const attribute_size = attribute->getSize();
     std::vector<double> attribute_values(attribute_size);
@@ -257,6 +275,16 @@ int main(int argc, char* argv[])
         readMeshes(args.xdmf_input_a, args.xdmf_input_b, args.timestep_a,
                    args.timestep_b, args.data_array_a, args.data_array_b);
 
+    if (!mesh_a)
+    {
+        std::cerr << "Could not read data " << args.xdmf_input_a << std::endl;
+        return EXIT_FAILURE;
+    }
+    if (!mesh_b)
+    {
+        std::cerr << "Could not read data " << args.xdmf_input_b << std::endl;
+        return EXIT_FAILURE;
+    }
     if (args.xdmf_input_a == args.xdmf_input_b)
     {
         std::cout << "Will not compare meshes from same input file.\n";