diff a/FeedsXPathParserBase.inc b/FeedsXPathParserBase.inc
115c115
<           $results[] = $this->getRaw($node);
---
>         $results[] = json_decode(json_encode((array) simplexml_load_string($this->doc->saveXML($node))), 1);
120c120,125
<           $results[] = $node->nodeValue;
---
>           $curr_result = json_decode(json_encode((array) simplexml_load_string($this->doc->saveXML($node))), 1);
>           if (isset($curr_result[0]) && $curr_result[0]) {
>             $results[] = $curr_result[0];
>           } else {
>             $results[] = $curr_result;
>           }
135,136c140,141
<     // A value was returned directly from namespacedQuery().
<     else {
---
>     // A value was returned directly.
>     elseif (!empty($node_list)) {
172c177
<         if ($mapping['unique']) {
---
>         if (isset($mapping['unique']) && $mapping['unique']) {
427,429c432,440
<       $last_mapping = end($keys);
<       $next = explode(':', $last_mapping);
<       $next = $next[1] + 1;
---
> 
>       $nums = array();
>       foreach ($keys as $key) {
>         list(, $num) = explode(':', $key);
>         $nums[] = $num;
>       }
> 
>       $max = max($nums);
>       $next = ++$max;

