{
id: PrimitiveLoader::STRING.optional,
label: PrimitiveLoader::STRING.optional,
doc: PrimitiveLoader::STRING.optional,
in: StepInput.loader.as_mapped_array('id', 'source'),
out: StepOutput.loader.or(PrimitiveLoader::STRING.map { |id| StepOutput.loader.load({'id' => id}) }).as_array,
requirements: NeverLoader::UNSUPPORTED,
hints: NeverLoader::UNSUPPORTED,
run: PrimitiveLoader::STRING.map { |id| Operation.loader.load({'id' => id, 'class' => 'Operation', 'inputs' => [], 'outputs' => []}) }.or(Operation.loader),
when: NeverLoader::UNSUPPORTED,
scatter: NeverLoader::UNSUPPORTED,
scatterMethod: NeverLoader::UNSUPPORTED,
}