diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/AbstractBoundary.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/AbstractBoundary.java
similarity index 89%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/AbstractBoundary.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/AbstractBoundary.java
index 241f5b7293a5092130cacfa9453d7007ceed3af2..fd5e6c9ff9e71a569f38fb1c34d949bb047fba4a 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/AbstractBoundary.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/AbstractBoundary.java
@@ -1,8 +1,8 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary;
+package de.unikoblenz.fgbks.base.utils.boundary;
 
+import de.unikoblenz.fgbks.base.utils.boundary.checker.BoundaryCheck;
+import de.unikoblenz.fgbks.base.utils.boundary.checker.BoundaryCheckType;
 import de.unikoblenz.fgbks.core.dmn.domain.vdmn.VTypeRef;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.checker.BoundaryCheck;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.checker.BoundaryCheckType;
 import java.util.HashMap;
 import org.apache.commons.lang3.Validate;
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/AbstractGrowingBoundary.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/AbstractGrowingBoundary.java
similarity index 90%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/AbstractGrowingBoundary.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/AbstractGrowingBoundary.java
index c5d416463cbeaafa732394b8d482d3349d300ab4..768e7ab5240aca8122b2b733cdd41c836479e114 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/AbstractGrowingBoundary.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/AbstractGrowingBoundary.java
@@ -1,10 +1,10 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary;
+package de.unikoblenz.fgbks.base.utils.boundary;
 
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.INCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.INCLUSIVE;
 
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.checker.BoundaryCheck;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.checker.BoundaryCheckType;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.checker.CheckEqual;
+import de.unikoblenz.fgbks.base.utils.boundary.checker.BoundaryCheck;
+import de.unikoblenz.fgbks.base.utils.boundary.checker.BoundaryCheckType;
+import de.unikoblenz.fgbks.base.utils.boundary.checker.CheckEqual;
 import java.util.HashMap;
 import java.util.Objects;
 import org.apache.commons.lang3.Validate;
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundType.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundType.java
similarity index 81%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundType.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundType.java
index 4f22aca210c668e8997f08a1f9712e5633935a91..7f55b425770291aa3c885e78eed6d3197dda7e7f 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundType.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundType.java
@@ -1,4 +1,4 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary;
+package de.unikoblenz.fgbks.base.utils.boundary;
 
 public enum BoundType {
   INCLUSIVE,
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/Boundary.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/Boundary.java
similarity index 64%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/Boundary.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/Boundary.java
index 43d073dab85a7b953c3b8cde9f957df5967c2c7c..83460cfbc217f751916dba4206f47d592eec7c64 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/Boundary.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/Boundary.java
@@ -1,7 +1,7 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary;
+package de.unikoblenz.fgbks.base.utils.boundary;
 
+import de.unikoblenz.fgbks.base.utils.boundary.checker.BoundaryCheckType;
 import de.unikoblenz.fgbks.core.dmn.domain.vdmn.VTypeRef;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.checker.BoundaryCheckType;
 
 public interface Boundary extends Comparable<Boundary> {
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundaryOperationNotSupportedException.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundaryOperationNotSupportedException.java
similarity index 87%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundaryOperationNotSupportedException.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundaryOperationNotSupportedException.java
index c5aca2dd880f9d5a71c0b195f4aabe8c82bfbf3d..11eb6fa9ad307d3635e044344bfd7b39768aeeb4 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundaryOperationNotSupportedException.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundaryOperationNotSupportedException.java
@@ -1,4 +1,4 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary;
+package de.unikoblenz.fgbks.base.utils.boundary;
 
 public class BoundaryOperationNotSupportedException extends UnsupportedOperationException {
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundaryParseException.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundaryParseException.java
similarity index 83%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundaryParseException.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundaryParseException.java
index 8e0b1852fc24f979966789a261851401043f74dd..911d3f6541a5ea8e7d885db0b4d63b86df06ee0e 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundaryParseException.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundaryParseException.java
@@ -1,4 +1,4 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary;
+package de.unikoblenz.fgbks.base.utils.boundary;
 
 public class BoundaryParseException extends RuntimeException {
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundaryUtils.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundaryUtils.java
similarity index 91%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundaryUtils.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundaryUtils.java
index c557dc3dbcee21138e4afddb5ffc0fa7ee54db2a..ac02646f0e7f80225b0ee7edc3cf0c8e3f811a77 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/BoundaryUtils.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/BoundaryUtils.java
@@ -1,4 +1,4 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary;
+package de.unikoblenz.fgbks.base.utils.boundary;
 
 import de.unikoblenz.fgbks.core.dmn.domain.vdmn.VDmnValue;
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/AbstractBoundaryCheck.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/AbstractBoundaryCheck.java
new file mode 100644
index 0000000000000000000000000000000000000000..4e1533ca1aa8141deb476850a1e9ce88840e2d99
--- /dev/null
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/AbstractBoundaryCheck.java
@@ -0,0 +1,5 @@
+package de.unikoblenz.fgbks.base.utils.boundary.checker;
+
+import de.unikoblenz.fgbks.base.utils.boundary.Boundary;
+
+public abstract class AbstractBoundaryCheck<T extends Boundary> implements BoundaryCheck<T> {}
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/BoundaryCheck.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/BoundaryCheck.java
new file mode 100644
index 0000000000000000000000000000000000000000..3ba0854d00f40cc8bfb511a10768be02487538be
--- /dev/null
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/BoundaryCheck.java
@@ -0,0 +1,10 @@
+package de.unikoblenz.fgbks.base.utils.boundary.checker;
+
+import de.unikoblenz.fgbks.base.utils.boundary.Boundary;
+
+public interface BoundaryCheck<T extends Boundary> {
+
+  BoundaryCheckType getType();
+
+  boolean check(T b1, T b2);
+}
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/BoundaryCheckType.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/BoundaryCheckType.java
similarity index 68%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/BoundaryCheckType.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/BoundaryCheckType.java
index d1ddb80c1077d6821984dd761c2be43ae3bb3fc8..d6d849ab833e113a7e42406708e3dc6ae15d1ffc 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/BoundaryCheckType.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/BoundaryCheckType.java
@@ -1,4 +1,4 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.checker;
+package de.unikoblenz.fgbks.base.utils.boundary.checker;
 
 public enum BoundaryCheckType {
   IS_EQUAL,
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/CheckEqual.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/CheckEqual.java
similarity index 86%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/CheckEqual.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/CheckEqual.java
index d313a6b21c6449661bf1f99dd0ce22588d0441be..9dc1ed2787a2e6321076b1e42d81e1f3fe8078ad 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/CheckEqual.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/checker/CheckEqual.java
@@ -1,6 +1,6 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.checker;
+package de.unikoblenz.fgbks.base.utils.boundary.checker;
 
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.AbstractGrowingBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.AbstractGrowingBoundary;
 
 public class CheckEqual extends AbstractBoundaryCheck<AbstractGrowingBoundary> {
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/BooleanBoundary.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/BooleanBoundary.java
similarity index 76%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/BooleanBoundary.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/BooleanBoundary.java
index 171455c711c70ea5b13e770d2382e5e26aadb3c5..634f867459b0c6bfb88e0ce51fcd20cce26cfdf5 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/BooleanBoundary.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/BooleanBoundary.java
@@ -1,9 +1,9 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.impl;
+package de.unikoblenz.fgbks.base.utils.boundary.impl;
 
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.INCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.INCLUSIVE;
 
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.AbstractGrowingBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundaryParseException;
+import de.unikoblenz.fgbks.base.utils.boundary.AbstractGrowingBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.BoundaryParseException;
 
 public class BooleanBoundary extends AbstractGrowingBoundary<Boolean> {
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/DateBoundary.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/DateBoundary.java
similarity index 90%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/DateBoundary.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/DateBoundary.java
index 9f87e55e87864f9f3a857669b044cd1483ddb07f..9075ea9475ad775111ef60f0450540814ac644b0 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/DateBoundary.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/DateBoundary.java
@@ -1,10 +1,10 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.impl;
+package de.unikoblenz.fgbks.base.utils.boundary.impl;
 
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.EXCLUSIVE;
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.INCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.EXCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.INCLUSIVE;
 
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.AbstractGrowingBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundaryParseException;
+import de.unikoblenz.fgbks.base.utils.boundary.AbstractGrowingBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.BoundaryParseException;
 import java.time.LocalDateTime;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/DoubleBoundary.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/DoubleBoundary.java
similarity index 85%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/DoubleBoundary.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/DoubleBoundary.java
index b3cea405059b4c737fdbda75f521fa2a0c8fe143..7dfc6f21c60ba2ca97bf4f7691334c02344d7074 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/DoubleBoundary.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/DoubleBoundary.java
@@ -1,10 +1,10 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.impl;
+package de.unikoblenz.fgbks.base.utils.boundary.impl;
 
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.EXCLUSIVE;
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.INCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.EXCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.INCLUSIVE;
 
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.AbstractGrowingBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundaryParseException;
+import de.unikoblenz.fgbks.base.utils.boundary.AbstractGrowingBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.BoundaryParseException;
 import org.apache.commons.lang3.Validate;
 
 public class DoubleBoundary extends AbstractGrowingBoundary<Double> {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/IntegerBoundary.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/IntegerBoundary.java
similarity index 86%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/IntegerBoundary.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/IntegerBoundary.java
index 3bab9a3f837b5f817894196f40c219d8e2ec93d2..18156bf2aeb9e7793666167f97f9ccae1ee4f8be 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/IntegerBoundary.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/IntegerBoundary.java
@@ -1,10 +1,10 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.impl;
+package de.unikoblenz.fgbks.base.utils.boundary.impl;
 
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.EXCLUSIVE;
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.INCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.EXCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.INCLUSIVE;
 
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.AbstractGrowingBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundaryParseException;
+import de.unikoblenz.fgbks.base.utils.boundary.AbstractGrowingBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.BoundaryParseException;
 import org.apache.commons.lang3.Validate;
 
 public class IntegerBoundary extends AbstractGrowingBoundary<Integer> {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/LongBoundary.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/LongBoundary.java
similarity index 86%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/LongBoundary.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/LongBoundary.java
index 1f85806253f2b2bfb1179930b5b0722fba870166..f449c3058a42577b4afc87f14edfa2bded477c7d 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/LongBoundary.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/LongBoundary.java
@@ -1,10 +1,10 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.impl;
+package de.unikoblenz.fgbks.base.utils.boundary.impl;
 
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.EXCLUSIVE;
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundType.INCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.EXCLUSIVE;
+import static de.unikoblenz.fgbks.base.utils.boundary.BoundType.INCLUSIVE;
 
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.AbstractGrowingBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.BoundaryParseException;
+import de.unikoblenz.fgbks.base.utils.boundary.AbstractGrowingBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.BoundaryParseException;
 import org.apache.commons.lang3.Validate;
 
 public class LongBoundary extends AbstractGrowingBoundary<Long> {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/StringBoundary.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/StringBoundary.java
similarity index 80%
rename from dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/StringBoundary.java
rename to dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/StringBoundary.java
index 6e6654a4ea0a6ae0534f71035a8a915de9e01c75..84b4254ad217bf43259b606fc0eb4c2b96418928 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/impl/StringBoundary.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/base/utils/boundary/impl/StringBoundary.java
@@ -1,9 +1,9 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.impl;
+package de.unikoblenz.fgbks.base.utils.boundary.impl;
 
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.AbstractBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.Boundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.checker.BoundaryCheck;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.checker.BoundaryCheckType;
+import de.unikoblenz.fgbks.base.utils.boundary.AbstractBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.Boundary;
+import de.unikoblenz.fgbks.base.utils.boundary.checker.BoundaryCheck;
+import de.unikoblenz.fgbks.base.utils.boundary.checker.BoundaryCheckType;
 import java.util.Arrays;
 import java.util.HashMap;
 import java.util.Objects;
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/VDmnInputValue.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/VDmnInputValue.java
index cea579f24915a2cf86c6097faa6d0a4220b447a9..0383443448ee4821148221eb0a6e4e892fb787ad 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/VDmnInputValue.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/VDmnInputValue.java
@@ -1,7 +1,7 @@
 package de.unikoblenz.fgbks.core.dmn.domain.vdmn;
 
+import de.unikoblenz.fgbks.base.utils.boundary.Boundary;
 import de.unikoblenz.fgbks.core.dmn.domain.ids.InputEntryId;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.Boundary;
 
 public interface VDmnInputValue extends VDmnValue {
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/VTypeRef.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/VTypeRef.java
index 0fc148410fc6f9c82db8b499eda48c2bb5f3a42f..c01c662eae205e6bb473f0e7c68e6485a9f8c2e1 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/VTypeRef.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/VTypeRef.java
@@ -1,12 +1,12 @@
 package de.unikoblenz.fgbks.core.dmn.domain.vdmn;
 
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.Boundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.impl.BooleanBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.impl.DateBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.impl.DoubleBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.impl.IntegerBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.impl.LongBoundary;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.impl.StringBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.Boundary;
+import de.unikoblenz.fgbks.base.utils.boundary.impl.BooleanBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.impl.DateBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.impl.DoubleBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.impl.IntegerBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.impl.LongBoundary;
+import de.unikoblenz.fgbks.base.utils.boundary.impl.StringBoundary;
 import java.time.LocalDateTime;
 import java.util.Optional;
 
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/impl/VDmnInputValueImpl.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/impl/VDmnInputValueImpl.java
index 56305f648a73749b25a66459802c9a3228b8cb4a..0d923df9320001daac30a3ca02a806ac0bd181e6 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/impl/VDmnInputValueImpl.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/domain/vdmn/impl/VDmnInputValueImpl.java
@@ -1,10 +1,10 @@
 package de.unikoblenz.fgbks.core.dmn.domain.vdmn.impl;
 
+import de.unikoblenz.fgbks.base.utils.boundary.Boundary;
 import de.unikoblenz.fgbks.core.dmn.domain.ids.InputEntryId;
 import de.unikoblenz.fgbks.core.dmn.domain.vdmn.VDmnInputColumn;
 import de.unikoblenz.fgbks.core.dmn.domain.vdmn.VDmnInputValue;
 import de.unikoblenz.fgbks.core.dmn.domain.vdmn.VDmnRule;
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.Boundary;
 import org.apache.commons.lang3.Validate;
 
 public class VDmnInputValueImpl extends VDmnValueImpl implements VDmnInputValue {
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/AbstractBoundaryCheck.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/AbstractBoundaryCheck.java
deleted file mode 100644
index 2550904d9220b1954fccf8ac9c4d8ac873435ee7..0000000000000000000000000000000000000000
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/AbstractBoundaryCheck.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.checker;
-
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.Boundary;
-
-public abstract class AbstractBoundaryCheck<T extends Boundary> implements BoundaryCheck<T> {}
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/BoundaryCheck.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/BoundaryCheck.java
deleted file mode 100644
index 513d36986c10393ad7a17808c38dd85c8743a11d..0000000000000000000000000000000000000000
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/utils/boundary/checker/BoundaryCheck.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package de.unikoblenz.fgbks.core.dmn.utils.boundary.checker;
-
-import de.unikoblenz.fgbks.core.dmn.utils.boundary.Boundary;
-
-public interface BoundaryCheck<T extends Boundary> {
-
-  BoundaryCheckType getType();
-
-  boolean check(T b1, T b2);
-}
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/impl/DateVerifier.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/impl/DateVerifier.java
index 33decaedbfb821cdfa27e0620b87e044cc85d107..7302a9c3d2e8276e06e8c3c920e9db838ab12d16 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/impl/DateVerifier.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/impl/DateVerifier.java
@@ -1,7 +1,7 @@
 package de.unikoblenz.fgbks.core.dmn.verification.verifier.impl;
 
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.impl.DateBoundary.dateGroupName;
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.impl.DateBoundary.datePattern;
+import static de.unikoblenz.fgbks.base.utils.boundary.impl.DateBoundary.dateGroupName;
+import static de.unikoblenz.fgbks.base.utils.boundary.impl.DateBoundary.datePattern;
 
 import de.unikoblenz.fgbks.core.dmn.domain.vdmn.VDmnColumn;
 import de.unikoblenz.fgbks.core.dmn.domain.vdmn.VDmnValue;
diff --git a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/impl/IdenticalVerifier.java b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/impl/IdenticalVerifier.java
index 1a5307cad78cffbf89768cca3b2e1acb980a7785..cf27710ec8ab469846223964457ea68045df5973 100644
--- a/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/impl/IdenticalVerifier.java
+++ b/dmnverifierapi/src/main/java/de/unikoblenz/fgbks/core/dmn/verification/verifier/impl/IdenticalVerifier.java
@@ -1,6 +1,6 @@
 package de.unikoblenz.fgbks.core.dmn.verification.verifier.impl;
 
-import static de.unikoblenz.fgbks.core.dmn.utils.boundary.checker.BoundaryCheckType.IS_EQUAL;
+import static de.unikoblenz.fgbks.base.utils.boundary.checker.BoundaryCheckType.IS_EQUAL;
 
 import de.unikoblenz.fgbks.core.dmn.domain.ids.RuleId;
 import de.unikoblenz.fgbks.core.dmn.domain.vdmn.VDmnDecision;