diff --git a/steps/applycal.cwl b/steps/applycal.cwl
index 4c51279bb877ec37f56cdacfdc1f0ced8e950692..748029f85ade072e5bed2419133931070a17c6a6 100644
--- a/steps/applycal.cwl
+++ b/steps/applycal.cwl
@@ -5,9 +5,6 @@ $namespaces:
 id: applycal
 baseCommand:
   - DPPP
-arguments:
-  - steps=[applycal]
-  - msout=.
 inputs:
   - id: msin
     type: Directory
@@ -26,37 +23,51 @@ inputs:
     doc: Input data Column
   - id: parmdb
     type: File
-    doc: Path of parmdb in which the parameters are stored. This can also be an H5Parm file, in that case the filename has to end in '.h5'
     inputBinding:
+      position: 0
       prefix: applycal.parmdb=
       separate: false
+    doc: >-
+      Path of parmdb in which the parameters are stored. This can also be an
+      H5Parm file, in that case the filename has to end in '.h5'
   - id: msout_datacolumn
     type: string
-    doc: Output data column
     inputBinding:
+      position: 0
       prefix: msout.datacolumn=
       separate: false
-  - id: correction
-    default: gain
+    doc: Output data column
+  - default: gain
+    id: correction
     type: string
-    doc: | 
-        Type of correction to perform. When using H5Parm, this is for now the name of the soltab; the type will be deduced from the metadata in that soltab, except for full Jones, in which case correction should be 'fulljones'.
     inputBinding:
-        prefix: applycal.correction=
-  
+      position: 0
+      prefix: applycal.correction=
+      separate: false
+    doc: >
+      Type of correction to perform. When using H5Parm, this is for now the name
+      of the soltab; the type will be deduced from the metadata in that soltab,
+      except for full Jones, in which case correction should be 'fulljones'.
+  - id: updateweights
+    type: boolean?
+    inputBinding:
+      position: 0
+      prefix: applycal.updateweights=True
 outputs:
   - id: msout
     doc: Output Measurement Set
     type: Directory
     outputBinding:
-        glob: $(inputs.msin.basename)
-      
+      glob: $(inputs.msin.basename)
+arguments:
+  - 'steps=[applycal]'
+  - msout=.
 requirements:
   - class: InitialWorkDirRequirement
     listing:
-        - entry: $(inputs.msin)
-          writable: true
+      - entry: $(inputs.msin)
+        writable: true
   - class: InlineJavascriptRequirement
 hints:
   - class: DockerRequirement
-    dockerPull: lofareosc/lofar-pipeline-ci:latest
+    dockerPull: 'lofareosc/lofar-pipeline-ci:latest'