Some tools have elaborate lists of options, some of which might be required to be specified only if another one was (or was not) specified. For that purpose e.g. in nipype interfaces they annotate them with xor (option is valid only if another one is not specified), and requires (used in a "child" option declaring that it needs its parent option to be defined)
So it might be useful for the gear manifest as well to make in e.g. web UI some options dynamically appear (or disappear) depending on prior selections
Some tools have elaborate lists of options, some of which might be required to be specified only if another one was (or was not) specified. For that purpose e.g. in nipype interfaces they annotate them with xor (option is valid only if another one is not specified), and requires (used in a "child" option declaring that it needs its parent option to be defined)
So it might be useful for the gear manifest as well to make in e.g. web UI some options dynamically appear (or disappear) depending on prior selections