/** * @return null */ protected function unserializeSemanticData($data, &$semanticData) { $property = null; if (!isset($data['data'])) { return; } foreach ($data['data'] as $values) { if (is_array($values)) { foreach ($values as $key => $value) { /** * @var DIProperty $property */ if ($key === 'property') { $property = DIProperty::doUnserialize($value); } /** * @var DataItem */ if ($key === 'dataitem') { foreach ($value as $val) { $this->unserializeDataItem($property, $data, $val, $semanticData); } } } } } }