diff --git a/src/main/java/org/caosdb/server/database/backend/transaction/RetrieveProperties.java b/src/main/java/org/caosdb/server/database/backend/transaction/RetrieveProperties.java
index 514da4eedbf662a62a2379c977f18143619ba082..741a5be4d9086fe7b2b3d5c830ec86c508752c32 100644
--- a/src/main/java/org/caosdb/server/database/backend/transaction/RetrieveProperties.java
+++ b/src/main/java/org/caosdb/server/database/backend/transaction/RetrieveProperties.java
@@ -89,10 +89,11 @@ public class RetrieveProperties
         for (FlatProperty subP : p.subProperties) {
           subP.name = null;
           Property newP = DatabaseUtils.parseFlatProperty(subP);
+          subP.name = "REPLACE ME!";
           newP.setRole(Role.Domain);
           props.add(newP);
         }
-        p.subProperties = null;
+        // p.subProperties = null;// could be a problem?
       }
     }
     props.addAll(DatabaseUtils.parseFromProtoProperties(t));
@@ -112,6 +113,9 @@ public class RetrieveProperties
 
       // retrieve sparse properties stage 2
       for (final EntityInterface subP : p.getProperties()) {
+        if (subP.getId().isTemporary()) {
+          continue;
+        }
         final RetrieveSparseEntity t2 = new RetrieveSparseEntity(subP);
         execute(t2);