-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Representing conditional execution #33
Comments
Sine this RO-Crate profile is about a particular enactment of a workflow, then it might be simpler to not model the condition. As a bonus, I guess one could record the decision to skip a step. For CWL that would require the CWL document and the input object for that workflow step, then one could investigate the JavaScript statement that was evaluated and found to produce a False (== skip) result. For CWL steps that weren't skipped, the step input object should already be represented allowing a similar analysis post-run of the decision by a human evaluating the JavaScript statement. |
This is related to #15. However, there is no |
It depends on the workflow language if conditional execution means the step is run or the datalink is rewired - presumably some evaluation happens though. Is that part of the ControlAction with no tool invocation? Or would it be an AssessAction that could end up with either subclass IgnoreAction or ChooseAction? Might get quite elaborate as you would then as {
"@context": "https://schema.org",
"@type": "IgnoreAction",
"agent": {
"@type": "Person",
"name": "John"
},
"object": {
"@type": "BefriendAction",
"agent": {
"@type": "Person",
"name": "Steve"
},
"instrument": {
"@type": "WebPage",
"url": "https://www.social.com"
}
}
} |
StreamFlow is already using |
In CWLProv, skipped actions are not recorded. Hence, in |
I ran the workflow used to test ResearchObject/runcrate#45 with Streamflow (0.2.0.dev5) and generated the RO-Crate: it turns out that it does not add an action with |
TRE-FX also have execution states https://trefx.uk/5s-crate/0.4/#execution-states - but for the overall workflow. e.g. http://schema.org/ActiveActionStatus if it's still running. In theory if someone was doing similar execution steps for a workflow that is not yet finished, then some of those would be in PotentialActionStatus until it's not executed. You would need to add something like a https://schema.org/IgnoreAction control action show that the step was later NOT picked so it would get complicated. So I would support #70 for its simplicity. |
How should we model workflows where one or more steps are executed only if a condition is verified (e.g.,
when
clause in CWL)?The text was updated successfully, but these errors were encountered: