diff --git a/src/caosdb/common/models.py b/src/caosdb/common/models.py
index 70b4bfa2bf5b6006df2cadf36377aa0337393bda..f89c57a5befef08cd6167f5db86f63c4fb6eca6c 100644
--- a/src/caosdb/common/models.py
+++ b/src/caosdb/common/models.py
@@ -102,6 +102,8 @@ class Entity:
         self._checksum = None
         self._size = None
         self._upload = None
+        # If an entity is used (e.g. as parent), it is wrapped instead of being used directly.
+        # see Entity._wrap()
         self._wrapped_entity = None
         self._version = None
         self._cuid = None
@@ -1331,6 +1333,12 @@ out: List[Entity]
             flags=flags)[0]
 
     def _wrap(self, entity):
+        """
+        When entity shall be used as parent or property it is not added to the corresponding list
+        (such as the parent list) directly, but another Entity object is created and the original
+        Entity is wrapped using this function
+        TODO: document here and in dev docs why this is done.
+        """
         self._wrapped_entity = entity
 
         return self