diff --git a/steps/DemixingStepGenerator.cwl b/steps/DemixingStepGenerator.cwl
index d15ae307c780aa9c8df9eb99cc0c34020144071b..6db9350a635bb22e3f4cc66fb2b86d9c62bb16df 100755
--- a/steps/DemixingStepGenerator.cwl
+++ b/steps/DemixingStepGenerator.cwl
@@ -2,7 +2,7 @@
 
 class: CommandLineTool
 cwlVersion: v1.0
-id: demixstepSgenerator
+id: demixstepgenerator
 baseCommand: [parset_concat.py]
 
 requirements:
@@ -49,35 +49,35 @@ inputs:
       prefix: corrtype=
       separate: false
   - id: timestep
-    type: integer
+    type: int
     default: 1
     doc: Number of time slots to average when subtracting. It is truncated if exceeding the actual number of times. Note that the data itself will also be averaged by this amount.
     inputBinding:
       prefix: timestep=
       separate: false
   - id: freqstep
-    type: integer
+    type: int
     default: 1
     doc: Number of channels to average when subtracting. It is truncated if exceeding the actual number of channels. Note that the data itself will also be averaged by this amount.
     inputBinding:
       prefix: freqstep=
       separate: false
   - id: demixtimestep
-    type: integer
-    default: timestep
+    type: int
+    default: 0
     doc: Number of time slots to average when demixing. It is truncated if exceeding the actual number of times. It defaults to the averaging used for the subtract.
     inputBinding:
       prefix: demixtimestep=
       separate: false
   - id: demixfreqstep
-    type: integer
-    default: freqstep
+    type: int
+    default: 0
     doc: Number of channels to average when demixing. It is truncated if exceeding the actual number of channels. It defaults to the averaging used for the subtract.
     inputBinding:
       prefix: demixfreqstep=
       separate: false
   - id: ntimechunk
-    type: integer
+    type: int
     default: #cores
     doc: Number of demix time slots (after averaging) that are processed jointly in as much a parallel way as possible. If subtract uses different time averaging, it has to fit integrally.
     inputBinding:
@@ -105,7 +105,7 @@ inputs:
       prefix: subtractsources=
       separate: false
   - id: modelsources
-    type: string vector
+    type: string[]
     default: []
     doc: Names of sources with models to take into account when solving. the sources must exist as patches in the SourceDB. Note that the target should NOT be part of this parameter. If a model of the target has to be used, it has to be given in parameter targetsource.
     inputBinding:
@@ -119,21 +119,21 @@ inputs:
       prefix: targetsource=
       separate: false
   - id: ignoretarget
-    type: bool
+    type: boolean
     default: false
     doc: false = project the target source away; true = ignore the target
     inputBinding:
       prefix: ignoretarget=
       separate: false
   - id: othersources
-    type: string vector
+    type: string[]
     default: []
     doc: Names of sources of which the direction is taken into account when demixing by projecting the directions away. The direction needs to be specified if the source is unknown (which is usually the case). It can be done using parameters <step>.<sourcename>.phasecenter.
     inputBinding:
       prefix: othersources=
       separate: false
   - id: propagatesolutions
-    type: bool
+    type: boolean
     default: true
     doc: If set to true, solutions of a time slot are used as initial values for the next time slot. If set to false, the diagonal elements of the Jones matrix are initialized to one and the off-diagonal elements to zero.
     inputBinding:
@@ -164,7 +164,7 @@ outputs:
     outputBinding:
         glob: output_parset
 
-  - id: secondary_files
+  - id: out_secondary_files
     doc: files needed to execute the step
     type: File[]
     outputBinding: