the following patches fix the issue .. but I feel a bit like I am stabbing in the dark. what is especially strange is that jackrabbit doesn't even pass the while look that I am fixing in jackalope:
```
diff --git a/src/Jackalope/ObjectManager.php b/src/Jackalope/ObjectManager.php
index 37db729..334474b 100644
--- a/src/Jackalope/ObjectManager.php
+++ b/src/Jackalope/ObjectManager.php
@@ -337,8 +337,8 @@ class ObjectManager
                         if ('/' == $parent) {
                             $parent = false;
                         } else {
-                            $parent = PathHelper::getParentPath($fetchPath);
-                            $relPath = '/' . PathHelper::getNodeName($fetchPath) . $relPath;
+                            $parent = PathHelper::getParentPath($parent);
+                            $relPath = '/' . PathHelper::getNodeName($parent) . $relPath;
                         }
                     }
                     if ($parent) {
```

```
diff --git a/src/Jackalope/Transport/DoctrineDBAL/Client.php b/src/Jackalope/Transport/DoctrineDBAL/Client.php
index c8a97ad..78fa1e9 100644
--- a/src/Jackalope/Transport/DoctrineDBAL/Client.php
+++ b/src/Jackalope/Transport/DoctrineDBAL/Client.php
@@ -207,7 +207,9 @@ class Client extends BaseTransport implements QueryTransport, WritingInterface,
 
             // @TODO: don't know if there are expressions returning more then one row
             if ($list->length > 0) {
-                $type = $list->item(0)->parentNode->attributes->getNamedItem('type')->value;
+                $type = is_object($list->item(0)->parentNode->attributes->getNamedItem('type'))
+                    ? $list->item(0)->parentNode->attributes->getNamedItem('type')->value
+                    : null;
                 $content = $list->item(0)->textContent;
 
                 switch ($type) {
```