def validate(result, selectors):
    """Check whether a result does satisfy the selectors

    Parameters
    ----------
    result : (string, dictionary)
        A tuple describing a file with a valid header. The parsed header
        data is saved in the dictionary.

    selectors : array-like, shape (n,)
        The list of selectors.

    Returns
    -------
    bool
        Whether the result does satisfy the selectors.
    """

    for (attribute, selector) in selectors.items():
        data = result[1]

        # Ensure, that the value(s) are extracted as an array.
        if attribute not in data:
            value = []
        else:
            value = result[1][attribute]
            if not hasattr(value, "__len__"):
                value = [value]

        selector_satisfied = False

        for and_condition in selector:
            if all([item in value for item in and_condition]):
                selector_satisfied = True
                break

        if not selector_satisfied:
            return False

    return True