oneOf (value, schema, opts) {
    let validated = false
    let allErrors = []
    schema.oneOf.forEach(function (_schema) {
      const errors = validate(value, _schema, opts)
      if (errors) {
        allErrors = allErrors.concat(errors)
      } else if (validated) {
        allErrors = [makeError('valid against more than one', 'valid against only one', opts)]
        validated = false
        return false
      } else {
        validated = true
      }
    })
    return validated ? undefined : allErrors
  }
Validates the provided value is valid with one and only one of the schemas defined in the Schema's `oneOf` keyword.
An instance is valid against this keyword if and only if it is valid against a single schemas in this keyword's value.

see http://json-schema.org/latest/json-schema-validation.html#anchor88
@name Schema.validationKeywords.oneOf
@method
@param {*} value to be checked.
@param {object} schema Schema containing the `oneOf` keyword.
@param {object} [opts] Configuration options.
@returns {(array|undefined)} Array of errors or `undefined` if valid.