private function generateCriteria($contentTypeId, array $options)
    {
        $criteria = array(
            new Criterion\ContentTypeId($contentTypeId),
        );

        if ($options['path']) {
            $criteria[] = new Criterion\Subtree($options['path']);
        }

        if (!$options['hidden']) {
            $criteria[] = new Criterion\Visibility(Criterion\Visibility::VISIBLE);
        }

        $criteria[] = $this->generateSubtreeCriteria($options['mandatorId'], $options['siteaccess']);

        return $criteria;
    }