code: public function execute(array $arguments = array())
      {
          if ($this->source) {
              $this->addSource($arguments);
          }
  
          if ($this->deserialization) {
              $this->addSerializationWorker();
          }
  
          if (isset($this->deserialization['multiple']) && $this->deserialization['multiple']) {
              $this->builder->split();
          }
  
          if ($this->virtualProperties) {
              $this->addVirtualizationWorker($arguments);
          }
  
          $response = parent::execute($arguments);
  
          if (isset($this->deserialization['multiple']) && $this->deserialization['multiple']) {
              return $response->getIterator();
          } else {
              return $response->getIterator()->current();
          }
      }
docs: {@inheritdoc}