Open
Description
Want to be able to apply annotations to groups of parameters or workflow steps. This would principally be metadata documentation -- need to decide if this should include features that affect runtime execution or not. The goal is to have a way to provide better documentation & user interface for tool use.
Syntax options:
inputs:
parameter1: string
parameter2: int
groups:
group1:
groupMembers: [parmeter1, parameter2]
doc: "parameters related to the foobar feature"
inputs:
parameter1:
type: string
groupMember: group1
parameter2:
type: int
groupMember: group1
groups:
group1:
doc: "parameters related to the foobar feature"
Discussion points
- should groups include things that are meaningful to runtime, e.g. applying a hint or requirement to several steps? rejected
- Can an item be a member of more than one group? rejected
- Should it be possible for groups to be members of other groups? rejected
- What kind of metadata should be specified?
- label, doc, 'expanded'
- Are groups the appropriate place to declare dependencies between inputs, for example if optional input A is specified then optional input B is actually required
- The user guide describes option groups using records and unions but nobody uses that in practice
- rejected
- specifying order that parameters / groups appear in UI
- suck for the user but decided we need this because we can't guarantee order in JSON/YAML documents
- should decide if reusing "position" field is appropriate, in CommandLineTool it allows either integers or expressions, but expressions don't make sense here.
Metadata
Metadata
Assignees
Labels
No labels