diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/AbstractBuilder.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/AbstractBuilder.java
index c40a5f464d10cb7bd137cd9f3d4abcd027bd1272..a23b7d59db8d136e8ce5ec45659edeb83fedce2f 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/AbstractBuilder.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/AbstractBuilder.java
@@ -3,6 +3,12 @@ package de.unikoblenz.fgbks.base.builder;
 import java.io.Serializable;
 import java.lang.reflect.Field;
 
+/**
+ * A abstract builder for creating java pojo classes.
+ *
+ * @param <E> the type of the object being constructed
+ * @param <B> the instance type of the builder
+ */
 public abstract class AbstractBuilder<E, B extends AbstractBuilder<E, B>> implements Serializable {
 
   private static final String VALUE_FIELD_NAME = "value";
@@ -46,8 +52,18 @@ public abstract class AbstractBuilder<E, B extends AbstractBuilder<E, B>> implem
 
   protected abstract E newInstance();
 
+  /**
+   * Check if the fields in the value object are valid.
+   */
   protected abstract void validate();
 
+  /**
+   * Start the building process and return the finished object. While building the new object the
+   * function {@link DefaultBuilder#validate()} is called and should be passed without an exception.
+   * Every time this function is called a new instance of the type is returned.
+   *
+   * @return the new created object
+   */
   public E build() {
     validate();
     E result = value;
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/DefaultBuilder.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/DefaultBuilder.java
index 59bbb7d62d81dd3191878b5f19493d1ef8b30362..3b05f20266ad725aef72909cbeb9df15dcd328c5 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/DefaultBuilder.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/builder/DefaultBuilder.java
@@ -31,6 +31,9 @@ public class DefaultBuilder<E> extends AbstractBuilder<E, DefaultBuilder<E>> {
     return this;
   }
 
+  /**
+   * {@inheritDoc}
+   */
   @Override
   protected void validate() {
     // nothing to validate
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Description.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Description.java
index 206d0ac0c5a3ef841753e16c6d4ec2654df83f8f..5f9382fd079a0d22a93dcd4c82987962fad24b00 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Description.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Description.java
@@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain;
 
 import de.unikoblenz.fgbks.base.value.AbstractStringValueObject;
 
+/**
+ * A value object representing a description.
+ */
 public class Description extends AbstractStringValueObject {
 
+  /** Create a new copy of the given description object. */
   public Description(Description initialValue) {
     this(initialValue.getValue());
   }
 
+  /** Create a description object with the given {@code initialValue}. */
   public Description(String initialValue) {
     super(initialValue);
   }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Label.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Label.java
index 2f462485f205c956550cd9430b0806b5f6ce596b..d7c899f16ae0d4587a49e40456477857e18711f8 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Label.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Label.java
@@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain;
 
 import de.unikoblenz.fgbks.base.value.AbstractStringValueObject;
 
+/**
+ * A value object representing a label.
+ */
 public class Label extends AbstractStringValueObject {
 
+  /** Create a new copy of the given label object. */
   public Label(Label initialValue) {
     this(initialValue.getValue());
   }
 
+  /** Create a label object with the given {@code initialValue}. */
   public Label(String initialValue) {
     super(initialValue);
   }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Message.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Message.java
index cff5d051c0ca1b7a5b0229a61146f48e4418646c..76d1c718a2aa59772a41a14440fafd1190d4a100 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Message.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Message.java
@@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain;
 
 import de.unikoblenz.fgbks.base.value.AbstractStringValueObject;
 
+/**
+ * A value object representing a message.
+ */
 public class Message extends AbstractStringValueObject {
 
+  /** Create a new copy of the given message object. */
   public Message(Message initialValue) {
     this(initialValue.getValue());
   }
 
+  /** Create a message object with the given {@code initialValue}. */
   public Message(String initialValue) {
     super(initialValue);
   }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Name.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Name.java
index cdba8c783ca788973e58e6b48827d4d75daeb4a9..6cbfb2b541a40f8069710598d0e571b2f1bf5f1a 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Name.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Name.java
@@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain;
 
 import de.unikoblenz.fgbks.base.value.AbstractStringValueObject;
 
+/**
+ * A value object representing a name.
+ */
 public class Name extends AbstractStringValueObject {
 
+  /** Create a new copy of the given name object. */
   public Name(Name initialValue) {
     this(initialValue.getValue());
   }
 
+  /** Create a name object with the given {@code initialValue}. */
   public Name(String initialValue) {
     super(initialValue);
   }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/StringValue.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/StringValue.java
index 83cb579181426a9de2677705b32fee654332968f..03b01255f3fb6d28a37100841eb07e9ddb5bf60e 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/StringValue.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/StringValue.java
@@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain;
 
 import de.unikoblenz.fgbks.base.value.AbstractStringValueObject;
 
+/**
+ * A value object representing a string value.
+ */
 public class StringValue extends AbstractStringValueObject {
 
+  /** Create a new copy of the given string value object. */
   public StringValue(StringValue initialValue) {
     this(initialValue.getValue());
   }
 
+  /** Create a string value object with the given {@code initialValue}. */
   public StringValue(String initialValue) {
     super(initialValue);
   }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Text.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Text.java
index f57b2fab750e9766f11ef2011cb46c4e0778e014..cc58163cab6d6d38c4de7a60d654331b232faa50 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Text.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/domain/Text.java
@@ -2,12 +2,17 @@ package de.unikoblenz.fgbks.base.domain;
 
 import de.unikoblenz.fgbks.base.value.AbstractStringValueObject;
 
+/**
+ * A value object representing a text.
+ */
 public class Text extends AbstractStringValueObject {
 
+  /** Create a new copy of the given text object. */
   public Text(Text initialValue) {
     this(initialValue.getValue());
   }
 
+  /** Create a text object with the given {@code initialValue}. */
   public Text(String initialValue) {
     super(initialValue);
   }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonConfiguration.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonConfiguration.java
index c8410ce362e22539afe771fd7a579d8641e01e14..bba70ba3a3108ac4a2fc36a7f79b13bbf70d1ab5 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonConfiguration.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonConfiguration.java
@@ -6,6 +6,9 @@ import javax.json.bind.JsonbConfig;
 import javax.ws.rs.ext.ContextResolver;
 import javax.ws.rs.ext.Provider;
 
+/**
+ * A provider for the configuration of jsonb handling. See {@link ContextResolver}
+ */
 @Provider
 public class JsonConfiguration implements ContextResolver<Jsonb> {
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonSimpleValueObjectSerializer.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonSimpleValueObjectSerializer.java
index a5a6eb7bee0acacaee5057d8d8e9c3426dac577e..b3dcb66a2143430a58e2ea15f897ec29bccb2eaa 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonSimpleValueObjectSerializer.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/JsonSimpleValueObjectSerializer.java
@@ -5,6 +5,9 @@ import javax.json.bind.serializer.JsonbSerializer;
 import javax.json.bind.serializer.SerializationContext;
 import javax.json.stream.JsonGenerator;
 
+/**
+ * A json serializer for simple value objects ({@link SimpleValueObject})
+ */
 public class JsonSimpleValueObjectSerializer implements JsonbSerializer<SimpleValueObject> {
 
   @Override
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/PrivateVisibilityStrategy.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/PrivateVisibilityStrategy.java
index 4eb02b8ad3bb602070e55362830cde9f62a52c56..8ab6492b450fc097486b059486a46c20a1122ed8 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/PrivateVisibilityStrategy.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/json/PrivateVisibilityStrategy.java
@@ -7,6 +7,10 @@ import javax.json.bind.annotation.JsonbProperty;
 import javax.json.bind.annotation.JsonbTransient;
 import javax.json.bind.config.PropertyVisibilityStrategy;
 
+/**
+ * The private visibility strategy is used in {@link JsonConfiguration} for the visibility for json
+ * serialization.
+ */
 public class PrivateVisibilityStrategy implements PropertyVisibilityStrategy {
 
   @Override
@@ -17,7 +21,7 @@ public class PrivateVisibilityStrategy implements PropertyVisibilityStrategy {
   @Override
   public boolean isVisible(Method method) {
     return Modifier.isPublic(method.getModifiers())
-            && !method.isAnnotationPresent(JsonbTransient.class)
+        && !method.isAnnotationPresent(JsonbTransient.class)
         || method.isAnnotationPresent(JsonbProperty.class);
   }
 }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/UniqueIdGenerator.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/UniqueIdGenerator.java
index 58fb304e8ad12a5a73bb0c1f18c0b5f4acd776ed..2a1291c0cad41261a504ab6c7f065a4be774699d 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/UniqueIdGenerator.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/UniqueIdGenerator.java
@@ -1,11 +1,18 @@
 package de.unikoblenz.fgbks.base.utils;
 
+/**
+ * Generate a thread safe synchronized unique application scoped long id by calling the method
+ * {@link UniqueIdGenerator#getNextId()}
+ */
 public class UniqueIdGenerator {
 
   private static volatile long id = 0;
 
   private UniqueIdGenerator() {}
 
+  /**
+   * Return the next id. This method is synchronized.
+   */
   public static synchronized long getNextId() {
     return id++;
   }
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/AbstractValueObject.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/AbstractValueObject.java
index 2a4f8c6942471078c554f520e155e840188d8337..fe19ca33f6aeea2308b8a7a06625caa897d9c6eb 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/AbstractValueObject.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/AbstractValueObject.java
@@ -6,6 +6,9 @@ import java.io.Serializable;
 import java.util.Arrays;
 import java.util.stream.Collectors;
 
+/**
+ * A abstract value object contains a array of objects.
+ */
 public abstract class AbstractValueObject implements Serializable, ValueObject {
 
   private transient Object[] values;
@@ -45,8 +48,8 @@ public abstract class AbstractValueObject implements Serializable, ValueObject {
   public String toString() {
     return "["
         + Arrays.stream(getValues())
-            .map(o -> nonNull(o) ? o.toString() : "null")
-            .collect(Collectors.joining(", "))
+        .map(o -> nonNull(o) ? o.toString() : "null")
+        .collect(Collectors.joining(", "))
         + "]";
   }
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/SimpleValueObject.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/SimpleValueObject.java
index 69272d0cdd1288d975ffb431d262508288bc9e78..13103a438be6718a8d2a4aee2d0f6d6eb623521b 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/SimpleValueObject.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/SimpleValueObject.java
@@ -1,5 +1,8 @@
 package de.unikoblenz.fgbks.base.value;
 
+/**
+ * A simple value object, which contains a value of a given type V.
+ */
 public interface SimpleValueObject<V> extends ValueObject {
 
   V getValue();
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/ValueObject.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/ValueObject.java
index 5b13cc6c464081a8593177e0a770f285a3fb3815..2cb3798f2c522a1df865d1e5e568f3a90d288ca0 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/ValueObject.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/value/ValueObject.java
@@ -2,7 +2,9 @@ package de.unikoblenz.fgbks.base.value;
 
 import java.io.Serializable;
 
-@SuppressWarnings("checkstyle:all")
+/**
+ * A interface for a value object.
+ */
 public interface ValueObject extends Serializable {
 
   String VALUE = "value";