diff --git a/src/caosdb/common/models.py b/src/caosdb/common/models.py
index a5adf6af68b72663c0fe8cd6ab58c39cdcea5d27..d857d5c90097442c1e8527618d4afa963af0e755 100644
--- a/src/caosdb/common/models.py
+++ b/src/caosdb/common/models.py
@@ -3855,6 +3855,8 @@ def _parse_single_xml_element(elem):
     elif elem.tag.lower() == "value":
         if len(elem) == 1 and elem[0].tag.lower() == "emptystring":
             return ""
+        elif len(elem) == 1 and elem[0].tag.lower() in classmap:
+            return _parse_single_xml_element(elem[0])
         elif elem.text is None or elem.text.strip() == "":
             return None