Section: IO
The input and output definition can be done in this section. All defined inputs and outputs are available in the Map I/Os.
SEC IO                                         //optional: yes, modifier: [UPDATE]
    SEC Input : <input identifier>             //optional: yes, modifier [HIDE,UPDATE]
            Variable :=  <variable name>;          //optional: no, type: InstancePath
            Name := <name>;                        //optional: no, type: text
            Desc := <description>;                 //optional: no, type: text
            UpdateInTask := <task name>;           //optional: yes, type: TaskRef
    END_SEC
    SEC Output : <output identifier>           //optional: yes, modifier [HIDE,UPDATE]
            Variable := <variable name>;           //optional: no, type: InstancePath
            Name := <name>;                        //optional: no, type: text
            Desc := <description>;                 //optional: no, type: text
            UpdateInTask := <task name>;           //optional: yes, type: TaskRef
    END_SEC
END_SECFor details on the syntax of the definition types see: description in Syntax of the module declaration.
- The parameter - Variabledefines the instance path of an input variable or output variable.
- All components of the path for inputs must be input variables (or local variables in structures). All components of the path for outputs also must be output variables (or local variables in structures). The variable must be primitive data type or enum data type. 
- A variable can be parameter and input/output at the same time. A variable must not be used by two different I/Os. 
- The target of an - inputor- outputsection must uniquely identify the input or output. There is no case sensitivity.
- The parameter - UpdateInTaskdetermines the task for updating I/Os. If this parameter is missing the task with the flag- UPDATE_IOSwill be used. For toplevel modules an error will be created if the task specified in- UpdateInTaskis not defined for the module.
SEC Io
        SEC Input : uiTemperature
                Variable := uiTemperature ;
                Name := TL_WeatherStation.NAME_iTemperature ;
                Desc := TL_WeatherStation.DESC_iTemperature ;
                UpdateInTask := Standard_Task : Medium;
        END_SEC
        SEC Output : uiLigh
                Variable := uiLightnessSouth ;
                Name := TL_WeatherStation.NAME_uiLightnessSouth ;
                Desc := TL_WeatherStation.DESC_uiLightnessSouth ;
                UpdateInTask := Standard_Task : Medium;
        END_SEC
END_S