t.ohta [at] dbcls.rois.ac.jp
途中参加、途中退出は自由です。初めて参加される方はぜひ 過ごし方ガイド をご覧ください。
Time | |
---|---|
10:00-10:15 | 今日の作業確認 |
10:15-13:00 | 開発とディスカッション |
13:00-14:00 | ランチ |
14:00-17:30 | 開発とディスカッション |
17:30-18:00 | ラップアップ |
19:00- | 有識者会議 |
inputBinding
の扱い
# binding.cwl
cwlVersion: v1.2
class: CommandLineTool
baseCommand: python3
inputs:
script:
type: File
default:
class: File
location: args.py # 引数を string[] として cwl.output.json を出力する
inputBinding:
position: -1
inp1:
type:
type: array
items:
type: array
items: string
inputBinding:
prefix: "-p"
inputBinding:
itemSeparator: ","
inp2:
type: string[]
inputBinding:
prefix: "-p"
outputs:
args: string[]
#!/usr/bin/env cwltool
# inp.yml
cwl:tool: binding.cwl
inp1: [["foo", "bar", "buzz"], ["hoge", "fuga"]]
inp2: ["mag", "mig", "mog"]
$ ./inp.yml
...
{
"args": [
# inp1 が処理された結果: 明らかにおかしい
"['foo', 'bar', 'buzz'],['hoge', 'fuga']",
"-p",
"foo",
"-p",
"hoge",
"-p",
"bar",
"-p",
"fuga",
"-p",
"buzz",
"-p", # inp2 が処理された結果: 仕様通り
"mag",
"mig",
"mog"
]
}
itemSeparator
がある inputBinding
を一段奥に置いた場合
{
"args": [
"foo,bar,buzz",
"-p",
"foo",
"-p",
"bar",
"-p",
"buzz",
"-p",
"mag",
"mig",
"mog",
"hoge,fuga",
"-p",
"hoge",
"-p",
"fuga"
]
}