def parse_processors(install_profile, libraries, data, root):
    """Returns the list of processors to run from the install profile.

    This method transforms {data} and [maven] references into paths, including
    maven references in the 'jar' and 'classpath' sections.
    """
    def resolve_arg(arg):
        """Resolves {data} and [maven] references."""
        if arg[0] == '[':
            # maven reference
            return libraries[arg[1:-1]]
        elif arg[0] == '{':
            # data reference
            return data[arg[1:-1]]
        else:
            # unchanged
            return arg
    procs_prof = install_profile['processors']
    procs = []
    for proc_prof in procs_prof:
        proc = {}
        proc['jar'] = libraries[proc_prof['jar']]
        proc['classpath'] = [libraries[el] for el in proc_prof['classpath']]
        proc['args'] = [resolve_arg(arg) for arg in proc_prof['args']]
        # (ignore outputs)
        procs.append(proc)
    return procs