public function parse(array $data, ParsingDispatcher $parsingDispatcher)
{
if (!array_key_exists('OR', $data) && !is_array($data['OR'])) {
throw new Exceptions\Parser('Invalid <OR> format');
}
$criteria = array();
foreach ($data['OR'] as $criterionName => $criterionData) {
$criteria[] = $this->dispatchCriterion($criterionName, $criterionData, $parsingDispatcher);
}
return new LogicalOrCriterion($criteria);
}