diff --git a/packages/core/src/memdb.ts b/packages/core/src/memdb.ts
index 2b8f90185f..fca36f2259 100644
--- a/packages/core/src/memdb.ts
+++ b/packages/core/src/memdb.ts
@@ -57,12 +57,12 @@ export abstract class MemDb extends TxProcessor {
     const result: T[] = []
     if (typeof query._id === 'string') {
       const obj = this.objectById.get(query._id) as T
-      if (obj !== undefined) result.push(obj)
+      if (obj !== undefined && this.hierarchy.isDerived(obj._class, _class)) result.push(obj)
     } else if (query._id?.$in !== undefined) {
       const ids = query._id.$in
       for (const id of ids) {
         const obj = this.objectById.get(id) as T
-        if (obj !== undefined) result.push(obj)
+        if (obj !== undefined && this.hierarchy.isDerived(obj._class, _class)) result.push(obj)
       }
     }
     return result
diff --git a/plugins/workbench-resources/src/components/SpaceView.svelte b/plugins/workbench-resources/src/components/SpaceView.svelte
index b68fd6ab17..4f3474f497 100644
--- a/plugins/workbench-resources/src/components/SpaceView.svelte
+++ b/plugins/workbench-resources/src/components/SpaceView.svelte
@@ -56,7 +56,7 @@
         { attachTo },
         {
           lookup: {
-            descriptor: core.class.Class
+            descriptor: view.class.ViewletDescriptor
           }
         }
       )