/** * @param mixed $items * @param string $name * @return \JSONSchema\Structure\Item */ private function determineItem($items, $name, Schema $schema) { $baseUrl = $schema->getConfig()->getBaseUrl(); $additionalProperties = $schema->getConfig()->hasAdditionalProperties(); $type = PropertyTypeMapper::map($items); $retItem = new Item(); $retItem->setType($type); $retItem->setName($name); $retItem->setAdditionalProperties($additionalProperties); if ($baseUrl !== null) { $retItem->setId($baseUrl . '/' . $name); } return $this->determineChildItem($items, $retItem, $schema); }