Welcome @Jennifer_Altreuter .
When it comes to metadata and workflows, I group metadata into two categories.
- Information that will be used as an input to at least one tool in the workflow
- Information you want to track and propogate, but doesn’t affect the execution.
Category 1 metadata is real data, from a strict perspective. It affects the results. Therefore I suggest using a normal CWL input for that piece of information. Perhaps using a CWL record type.
Category 2 is “pure” metadata, and we are currently working on mechanisms to better propogate that. See also Propagate input annotations to primary.cwlprov files by RenskeW · Pull Request #1678 · common-workflow-language/cwltool · GitHub
Therefore I would ask you, is your sample_id
pure metadata, or secretly “real” data?