# Replicate a base workflow with family all-to-all triggers:
#     graph = "prep => OBS_GET:succeed-all => OBS_PROC:succeed-all => assim"
[cylc]
    [[parameters]]
        obs = ship, buoy, sonde
        run = 1..3
[scheduling]
    [[dependencies]]
        graph = """
    prep => OBS_GET<run>
        OBS_GET<run>:succeed-all => OBS_PROC<run>
        OBS_PROC<run>:succeed-all => assim<run>
                """
[runtime]
    [[prep]]
    [[RUN<run>]]
    [[GET, PROC]]
    [[OBS<obs>]]
    [[OBS_GET<run>]]
        inherit = RUN<run>, GET
    [[OBS_PROC<run>]]
        inherit = RUN<run>, PROC
    [[obs_get<run, obs>]]
        inherit = OBS_GET<run>, OBS<obs>
    [[obs_proc<run, obs>]]
        inherit = OBS_PROC<run>, OBS<obs>
    [[assim<run>]]
        inherit = RUN<run>
[visualization]
    use node color for edges = True
    [[node attributes]]
        RUN<run=1> = "color=red", "fontcolor=red"
        RUN<run=2> = "color=darkgreen", "fontcolor=darkgreen"
        RUN<run=3> = "color=steelblue4", "fontcolor=steelblue4"
        GET = "style=filled", "fillcolor=#feeefe"
        PROC = "style=filled", "fillcolor=#fefeee"
        OBS<obs=ship> = "shape=ellipse"
        OBS<obs=buoy> = "shape=pentagon"
        OBS<obs=sonde> = "shape=box"
