diff --git a/PLUGIN-INF/metadata_SLUBStoragePlugin.xml b/PLUGIN-INF/metadata_SLUBStoragePlugin.xml
index df3d7ddda9a3d8bd0b866f83a5637e4c40581b54..3a64c2f7a45a8aed1cc6cec7b50edbd3846eb05a 100644
--- a/PLUGIN-INF/metadata_SLUBStoragePlugin.xml
+++ b/PLUGIN-INF/metadata_SLUBStoragePlugin.xml
@@ -70,7 +70,7 @@
 		</fr:x_form>
 	</pl:initParameters>
 	<pl:description>SLUB Storage Plugin</pl:description>
-	<pl:version>2.821</pl:version>
+	<pl:version>2.822</pl:version>
 	<pl:materialType>DIGITAL</pl:materialType>
 	<pl:module>Repository</pl:module>
 	<pl:generalType>TASK</pl:generalType>
diff --git a/java/org/slub/rosetta/dps/repository/plugin/storage/nfs/SLUBStoragePlugin.java b/java/org/slub/rosetta/dps/repository/plugin/storage/nfs/SLUBStoragePlugin.java
index 34608bdb2abf3e1e9dffa2a4c1dbfd506de81efc..73426359991764b25f44829acc9857284277c2f5 100644
--- a/java/org/slub/rosetta/dps/repository/plugin/storage/nfs/SLUBStoragePlugin.java
+++ b/java/org/slub/rosetta/dps/repository/plugin/storage/nfs/SLUBStoragePlugin.java
@@ -109,7 +109,15 @@ public class SLUBStoragePlugin extends AbstractStorageHandler {
         return "(unknown) Bytes/s";
     }
 
-    public boolean checkFixity(List<Fixity> fixities, String absolute_storedEntityIdentifier) throws Exception {
+    /**
+     * checkFixity
+     * @param fixities
+     * @param storedEntityIdentifier (relative filepath)
+     * @return true if valid, otherwise false
+     * @throws Exception
+     */
+    public boolean checkFixity(List<Fixity> fixities, String storedEntityIdentifier) throws Exception {
+        String absolute_storedEntityIdentifier = getFullFilePath(storedEntityIdentifier);
         log.info("SLUBStoragePlugin.checkFixity() storedEntityIdentifier='" + absolute_storedEntityIdentifier + "'");
         // log.info("SLUBStoragePlugin.checkFixity() all fixities=" + fixities);
         if (fixities == null) {
@@ -124,6 +132,13 @@ public class SLUBStoragePlugin extends AbstractStorageHandler {
         return result;
     }
 
+    /**
+     * checkSpecificFixity
+     * @param absolute_storedEntityIdentifier absolute file path
+     * @param fixity
+     * @return true if valid otherwise false
+     * @throws Exception
+     */
     private boolean checkSpecificFixity(String absolute_storedEntityIdentifier, Fixity fixity) throws Exception {
         String algorithm = fixity.getAlgorithm();
                     /* HINT: in past versions of Rosetta was a workaround for fixity.getAlgorithm() required,
@@ -163,9 +178,9 @@ public class SLUBStoragePlugin extends AbstractStorageHandler {
     /** uses a checksummer object and check if fixity of given builtin algorithm is correct
      *
      * @param fixity concrete fixity object
-     * @param absolute_storedEntityIdentifier ROsetta identifier
+     * @param absolute_storedEntityIdentifier absolute filepath
      * @param algorithm which algorithm should be used
-     * @return result
+     * @return true if valid, otherwise false
      * @throws NoSuchAlgorithmException if algorithm is unknown
      * @throws IOException if I/O error
      */
@@ -190,11 +205,12 @@ public class SLUBStoragePlugin extends AbstractStorageHandler {
     /** check fixity by calling its registered plugin
      *
      * @param fixity concrete fixity object
-     * @param absolute_storedEntityIdentifier path to file which should be checked
-     * @return result
+     * @param absolute_storedEntityIdentifier absolute filepath to file which should be checked
+     * @return true if valid, otherwise false
      * @throws Exception to inform rosetta
      */
     private boolean checkFixityByPlugin(Fixity fixity, String absolute_storedEntityIdentifier) throws Exception {
+        assert( absolute_storedEntityIdentifier.startsWith( getDirRoot() ) );
         log.info("SLUBStoragePlugin.checkFixityByPlugin() another fixity");
         String pluginname = fixity.getPluginName();
         log.info("SLUBStoragePlugin.checkFixityByPlugin() pluginname=" + pluginname);
@@ -227,6 +243,11 @@ public class SLUBStoragePlugin extends AbstractStorageHandler {
         return result;
     }
 
+    /**
+     * deleteEntity
+     * @param relative_storedEntityIdentifier
+     * @return true if successful
+     */
     public boolean deleteEntity(String relative_storedEntityIdentifier)
     {
         log.info("SLUBStoragePlugin.deleteEntity() storedEntityIdentifier='" + relative_storedEntityIdentifier + "'");
@@ -249,12 +270,25 @@ public class SLUBStoragePlugin extends AbstractStorageHandler {
         log.info("SLUBStoragePlugin.getLocalFilePath() with '" + storedEntityIdentifier + "'");
         return getFullFilePath(storedEntityIdentifier);
     }
+
+    /**
+     * getFullFilePath
+     * @param storedEntityIdentifier - relative filepath
+     * @return absolute filepath
+     */
     public String getFullFilePath(String storedEntityIdentifier)
     {
+        assert(! storedEntityIdentifier.startsWith( getDirRoot() ) );
         log.info("SLUBStoragePlugin.getFullFilePath() with '" + storedEntityIdentifier + "'");
         return getDirRoot() + storedEntityIdentifier;
     }
 
+    /**
+     * retrieveEntity
+     * @param storedEntityIdentifier as relative filepath
+     * @return Buffered InputStream
+     * @throws IOException
+     */
     public InputStream retrieveEntity(String storedEntityIdentifier)
             throws IOException
     {
@@ -266,6 +300,15 @@ public class SLUBStoragePlugin extends AbstractStorageHandler {
         var is = java.nio.file.Files.newInputStream( absolute_path );
         return new BufferedInputStream( is , getBlockSize());
     }
+
+    /**
+     * retrieveEntityByRange
+     * @param storedEntityIdentifier as relative filepath
+     * @param start offset to begin
+     * @param end   offset to end
+     * @return byte array of size end-begin
+     * @throws Exception
+     */
     public byte[] retrieveEntityByRange(String storedEntityIdentifier, long start, long end) throws Exception
     {
         log.info("SLUBStoragePlugin.retrieveEntitybyRange() with '" + storedEntityIdentifier + "' start=" + start + " end=" + end);
@@ -295,6 +338,13 @@ public class SLUBStoragePlugin extends AbstractStorageHandler {
         }
     }
 
+    /**
+     * storeEntity
+     * @param is - InputStream
+     * @param storedEntityMetadata
+     * @return relative path to storedEntity
+     * @throws Exception
+     */
     public String storeEntity(InputStream is, StoredEntityMetaData storedEntityMetadata)
             throws Exception
     {
@@ -308,7 +358,7 @@ public class SLUBStoragePlugin extends AbstractStorageHandler {
         {
             destFilePath = existsDescPath;
             /* destFilePath is relative, checkfixity expects absolute */
-            isCopyFileNeeded = !checkFixity(storedEntityMetadata.getFixities(), getFullFilePath(destFilePath));
+            isCopyFileNeeded = !checkFixity(storedEntityMetadata.getFixities(), destFilePath);
         }
         log.debug("SLUBStoragePlugin.storeEntity() destFilePath='" + destFilePath + "'");
         Map<String, String> paths = getStoreEntityIdentifier(storedEntityMetadata, destFilePath);