protected function hasAllRequiredData(array $modifier)
    {
        if (array_key_exists('operator', $modifier)
            && !in_array($modifier['operator'],
                self::$allowedFilterOperators)
        ) {
            throw new ModifierException('The filter operator "' . $modifier['operator'] . '" is not allowed. You can only use one of the following:
                        ' . implode(', ', self::$allowedFilterOperators));
        }

        return array_key_exists('property', $modifier) && array_key_exists('value', $modifier);
    }