def _parse_sparkml(spark, scope, model, global_inputs, output_dict):
    '''
    This is a delegate function. It doesn't nothing but invoke the correct parsing function according to the input
    model's type.
    :param scope: Scope object
    :param model: A spark-ml object (e.g., OneHotEncoder and LogisticRegression)
    :param inputs: A list of variables
    :return: The output variables produced by the input model
    '''
    if isinstance(model, PipelineModel):
        return _parse_sparkml_pipeline(spark, scope, model, global_inputs, output_dict)
    else:
        return _parse_sparkml_simple_model(spark, scope, model, global_inputs, output_dict)