docs: def validate_config(self, config):
          """We only validate the config if passed.
  
          Also we use the ExperimentSpecification to check if this config was
          intended as an experiment.
          """
          # config is optional
          if not config:
              return config
  
          spec = validate_experiment_spec_config(config)
  
          if spec.is_experiment:
              # Resume normal creation
              return config
  
          # Raise an error to tell the user to use experiment creation instead
          raise ValidationError('Current experiment creation could not be performed.\n'
                                'The reason is that the specification sent correspond '
                                'to a `{}`.\n'.format(spec.kind))