From fbd62d8bc691b90f874c2056ebf6573d8add1470 Mon Sep 17 00:00:00 2001
From: Alexander Schlemmer <alexander@mail-schlemmer.de>
Date: Tue, 20 Sep 2022 09:30:05 +0200
Subject: [PATCH] DOC: added a section about the converters to the
 documentation

---
 src/doc/index.rst | 97 +++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 90 insertions(+), 7 deletions(-)

diff --git a/src/doc/index.rst b/src/doc/index.rst
index f11d73b5..d834178f 100644
--- a/src/doc/index.rst
+++ b/src/doc/index.rst
@@ -72,17 +72,12 @@ converter-name:
             - Experiment
             - Blablabla
             date: $DATUM
-            <...>
+            (...)
         Experiment2:
             parents:
             - Experiment
-    valuegenerators:
-        datepattern:
-        <...>
-    childrengenerators:
-        create_children_from_directory:
-            sort-by-date: true
     subtree:
+        (...)
 
 
 records:
@@ -134,6 +129,94 @@ valuegenerators shall be defined, the keyword may be omitted.
 Relevant sources in:
 src/converters.py
 
+Standard Converters
++++++++++++++++++++
+
+Directory Converter
+====================
+
+Simple File Converter
+====================
+
+Markdown File Converter
+====================
+
+Dict Converter
+====================
+
+Typical Subtree converters
+---------------
+
+DictBooleanElementConverter
+DictFloatElementConverter
+DictTextElementConverter
+DictIntegerElementConverter
+DictListElementConverter
+DictDictElementConverter
+
+YAMLFileConverter
+=================
+
+A specialized Dict Converter for yaml files: Yaml files are opened and the contents are
+converted into dictionaries that can be further converted using the typical subtree converters
+of dict converter.
+
+**WARNING**: Currently unfinished implementation.
+
+JSONFileConverter
+=================
+
+
+
+TextElementConverter
+
+TableConverter
+=================
+
+A generic converter (abstract) for files containing tables.
+Currently, there are two specialized implementations for xlsx-files and csv-files.
+
+All table converters generate a subtree that can be converted with DictDictElementConverters:
+For each row in the table a DictDictElement (structure element) is generated. The key of the
+element is the row number. The value of the element is a dict containing the mapping of
+column names to values of the respective cell.
+
+Example:
+
+.. code-block:: yaml
+   subtree:
+     TABLE:
+       type: CSVTableConverter
+       match: ^test_table.csv$
+       records:
+         (...)  # Records edited for the whole table file
+       subtree:
+         ROW:
+           type: DictDictElement
+           match_name: .*
+           match_value: .*
+           records:
+             (...)  # Records edited for each row
+           subtree:
+             COLUMN:
+               type: DictFloatElement
+               match_name: measurement  # Name of the column in the table file
+               match_value: (?P<column_value).*)
+               records:
+                 (...)  # Records edited for each cell
+
+
+XLSXTableConverter
+=================
+
+CSVTableConverter
+=================
+
+Custom Converters
++++++++++++++++++
+
+
+
 Identifiables
 +++++++++++++
 
-- 
GitLab