In the Taverna workbench you can insert a nested workflow by merging. You can merge in any workflow, including workflows open in the workbench.
To merge in an existing nested workflow, first Right-click on it to Edit Nested Workflow. Now go back to the original workflow using the Workflows menu, where you click in the top menu Insert -> Merge workflow. In the dialogue, select Workflow Source: Already opened workflow - and select "XXXX in YYY" - the newly opened nested workflow. Now you will have to rewire each step of the nested workflow. There will be new input ports added to your workflow, which one by one you will have to: Delete the new input port (otherwise the next step will add a merge), then find the corresponding datalink that goes into the old nested workflow, and click to drag it into the processor(s) that the just-deleted input port just to go to. Repeat for nested workflow output ports. You would in this case first need to delete the existing outgoing datalinks from the nested workflow to avoid making merges into the processors of the master workflow. Finally you can close and delete the old nested workflow and repeat the processor for the remaining (including any previously nested nested) workflows. Note that the execution logic totally changes by merging in a nested workflow, and the resulting workflow is unlikely to produce the same results for common uses of nested workflows. For instance, if there are iterations over the nested workflow, now you would have iterations over the immediate first processors instead (and their downstreams) - which might in some cases require you to reconfigure List Handling on every step of the workflow. Many nested workflows are used with iterations both inside and outside the nested workflows - in which case there are several List Handling iteration patterns which can't easily be expressed on a merged workflow, say outer Dot product and inner Cross product. A nested workflow executes in 'one go' - so the next steps consuming its outputs don't execute before everything in the nested workflow has finished (including 'dangling processors' without outputs, typically used for clean-up). Similarly it does not start until all the inputs are present. After merging, Taverna's pipelined execution means that the individual steps will now be detangled and execute as soon as data is available -- this might be what you want if the nested workflow unnecessarily caused a slow-down of parts of its processes. You can add Run After links to try to coordinate some of these, but even this would give a different execution logic as it would require the full outer iterations to have completed. Any processor-level configuration on a nested workflow would also disappear, e.g. List Handling, Looping and Parallel Jobs. So any workflows doing asynchronous services such as the EBI InterproScan would not work. tl;dr; In many cases, execution will NOT be the same after flattening. So I am left to wonder what is the reason for your flattening.. it can make sense in some cases - but more often than not it doesn't - which is why we have not got such as feature built in to the workbench. Are you doing this for the purpose of executing the flattened workflows, or just for analytical purposes? On 17 November 2013 20:44, Pinar Alper <[email protected]> wrote: > > > Hi all, > > For an evaluation that I'm performing I need flattened versions of > workflows with sub-workflows in them. > > I was just wondering if there is an easy way to unnest a sub workflow in > Taverna. Or should I copy all sub-processors one by one to the parent > workflow? > > > -- > regards > pinar > > ------------------------------------------------------------------------------ > DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps > OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access > Free app hosting. Or install the open source package on any LAMP server. > Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! > http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk > _______________________________________________ > taverna-users mailing list > [email protected] > [email protected] > Web site: http://www.taverna.org.uk > Mailing lists: http://www.taverna.org.uk/about/contact-us/ -- Stian Soiland-Reyes, myGrid team School of Computer Science The University of Manchester http://soiland-reyes.com/stian/work/ http://orcid.org/0000-0001-9842-9718 ------------------------------------------------------------------------------ DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access Free app hosting. Or install the open source package on any LAMP server. Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk _______________________________________________ taverna-users mailing list [email protected] [email protected] Web site: http://www.taverna.org.uk Mailing lists: http://www.taverna.org.uk/about/contact-us/
