Introduction

CODESYS Control V3 Device Description XSD-Schema

See in this document the xsd-schema for the CODESYS Control V3 device description entries.

A mouse-click on a plus-symbol extends the display for the current item. Terms with a blue underline are linked to the respective detailed description.

Last update: 18-Feb-2013

Copyright © 2013 3S-Smart Software Solutions GmbH - CoDeSys V3.4 / 25-Feb-2013


devicedescription-1.0

Schema DeviceDescription-1.0.xsd

element DeviceDescription
diagram
children Types ParameterFilterFlags Strings Files Device Modules ImportPluginVersion ExternalConverterPluginVersion AdditionalFileToImport
annotation
documentation
The root element of each device description

element DeviceDescription/Types
diagram
children StructType EnumType RangeType BitfieldType ArrayType UnionType
attributes
Name Type Use Default Fixed Annotation
namespace xs:NCName required
documentation
namespace default ist "localTypes". This namespace has to match for the added parameters.
Example if a structure "Tabc" is added then the parameter type must be localTypes:Tabc
annotation
documentation
Defines complex data types (structs, range types, enumerations, ...) that may be used in the parameters section or by other types (a member of a struct may in turn be an enumeration type etc.)

element DeviceDescription/Types/StructType
diagram
type | StructdefType
children | Component
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
iecType xs:string optional
documentation
The type of the structure in the given library by the attribute iecTypeLib.
iecTypeLib xs:string
documentation
Reference the library that defines the iecType. This library must be defined beyond a DriveInfo tag elsewhere in this device description (--&gt; RequiredLib). The value must match the identifier attribute of the library.
annotation
documentation
Defines a new type as a composition of less complex types. Elements of a struct may be basic types ("std:INT", ...) or any other type defined in a available types section.

element DeviceDescription/Types/EnumType
diagram
type | EnumdefType
children | Enum
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
basetype xs:NMTOKEN optional std.INT
documentation
This is the type of the value elements of this enumeration. Any standard type may be used as a base type. Use eg "std:BYTE" to store the values of this enumeration values in a single byte or use "std:REAL" to give a name to certain floating point values.
annotation
documentation
Enumeration types define a set of named values, which are easier to handle by a user then the (usually) numbers that are represented by those names.

element DeviceDescription/Types/RangeType
diagram
type | RangedefType
children | Min Max Default
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
basetype xs:NMTOKEN required
documentation
The type, that is restricted by this definition. Must be a numeric standard type like std:SINT, std:USINT, std:INT, ..., std:ULINT, std:REAL, std:LREAL
annotation
documentation
Restricts a numeric type to values in a certain range.

element DeviceDescription/Types/BitfieldType
diagram
type | BitfielddefType
children | Component
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
basetype xs:NMTOKEN required
documentation
The type of the value that contains the bits. Should be one of the logical types std:BYTE, std:WORD, std:DWORD, std:LWORD
annotation
documentation
Defines named access to single bits of a more complex type (eg. std:WORD).

element DeviceDescription/Types/ArrayType
diagram
type | ArraydefType
children | FirstDimension SecondDimension ThirdDimension
attributes
Name Type Use Default Fixed Annotation
basetype xs:NMTOKEN required
documentation
The type of the value that contains the bits. Should be one of the logical types std:BYTE, std:WORD, std:DWORD, std:LWORD
name xs:NCName required
documentation
The name that is used to reference this structure.
annotation
documentation
Defines an array type of any other type (std or local)

element DeviceDescription/Types/UnionType
diagram
type | StructdefType
children | Component
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
iecType xs:string optional
documentation
The type of the structure in the given library by the attribute iecTypeLib.
iecTypeLib xs:string
documentation
Reference the library that defines the iecType. This library must be defined beyond a DriveInfo tag elsewhere in this device description (--&gt; RequiredLib). The value must match the identifier attribute of the library.
annotation
documentation
Defines a new type as a composition of less complex types. Elements of a union may be basic types ("std:INT", ...) or any other type defined in a available types section.

element DeviceDescription/ParameterFilterFlags
diagram
children ParameterFilterFlag
annotation
documentation
Definitions for a set of flags that may be attached to a parameter in order to control display of the parameter in the configuration dialog ("ExpertMode", "UserMode", ...)

element DeviceDescription/ParameterFilterFlags/ParameterFilterFlag
diagram
type | ParameterFilterFlagType
children | DisplayName
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:NMTOKEN | required |  |  |

element DeviceDescription/Strings
diagram
children Language
attributes
Name Type Use Default Fixed Annotation
namespace xs:NCName required
documentation
The namespace default is "localStrings". Inside parameters this namespace has to be used to link the translated string to a parameter. Example: <Name name="localStrings:String_1">Test</Name>.
Namespaces beginning with "RTSLog_" and followed by a CoDeSys runtime component name are reserved for defining internationalized logger texts (e.g. "RTSLog_CM").
annotation
documentation
A localized stringtable. These strings may be referenced at various places, whenever a StringRefType is required.

element DeviceDescription/Strings/Language
diagram
children String
attributes
Name Type Use Default Fixed Annotation
lang xs:language required
documentation
language is the country code for the strings. The code is the culture name of each language. Valid codes are for example "en", "de" or "fr" also "en-AU" for australian english is possible.

element DeviceDescription/Strings/Language/String
diagram
type extension of xs:string
attributes
Name Type Use Default Fixed Annotation
identifier xs:NCName
documentation
The unique identifier as a link to the parameter name or description. For logger strings (namespace: "RTSLog_" followed by the component name) use "ID_" followed by the 8 digits hexadecimal Info ID of the logger text (e.g. "ID_000000A1").
annotation
documentation
The string in the translated language

element DeviceDescription/Files
diagram
children Language
attributes
Name Type Use Default Fixed Annotation
namespace xs:NCName required
documentation
The namespace default is "localFiles". This namespace has to be used for icons, images and additional files it there are used in the device.
Example:
<AdditionalFiles>
<File key="Common.File.XML.NativeDescription" name="localFiles:XMLFile">FLM_DI_8_M8vxx.xml</File>
</AdditionalFiles>
annotation
documentation
A table of references to external files. These files may be referenced at various places, whenever a FileRefType is required. The files are handled localized.

element DeviceDescription/Files/Language
diagram
children File
attributes
Name Type Use Default Fixed Annotation
lang xs:language required
documentation
Language is the country code for the files. Therefore it is possible to show specific icons or images for each country.
The code is the culture name of each language. Valid codes are for example "en", "de" or "fr" also "en-AU" for australian english is possible.

element DeviceDescription/Files/Language/File
diagram
type | FileType
children | LocalFile
attributes
Name Type Use Default Fixed Annotation
fileref derived by: xs:NMTOKEN required
documentation
Currentyl only "local" supported. Other values reserved for future enhancements
identifier xs:NCName required
documentation
A unique identifier for each file. This identifier must match with the name attribute for icons, images and additional files.

element DeviceDescription/Device
diagram
children DeviceIdentification DeviceInfo Connector ConnectorGroup DeviceParameterSet DriverInfo Functional ExtendedSettings Custom LogicalDevice SupportedLogicalBusSystems UpdateDevice CompatibleVersions
attributes
Name Type Use Default Fixed Annotation
hideInCatalogue xs:boolean optional false
documentation
if the attribute is true then the device will not be shown in the add device dialogue of CoDeSys. It could be added by a plugin or device scan.
showParamsInDevDescOrder xs:boolean optional false
documentation
If attribute is false or missing, then the parameters are shown in the generic device configuration editor in the order of parameter id.
If attribute is true then the parameters are shown in the order of the position inside the device description.
annotation
documentation
The definition of the device that is described in this file. Additional submodules that are available only to this device may be referenced in the "Modules" section.

element DeviceDescription/Device/DeviceIdentification
diagram
type | DeviceIdentificationType
children | Type Id Version
annotation
documentation
The device identification is for unique numbers of each device.

element DeviceDescription/Device/UpdateDevice
diagram
children DeviceIdentification
annotation
documentation
Adds additional devices that should be also updated recursively when updating that device. The device tree is searched for matching device identifications and updates the found devices to the new given version

element DeviceDescription/Device/UpdateDevice/DeviceIdentification
diagram |
type | DeviceIdentificationType
children | Type Id Version

element DeviceDescription/Device/CompatibleVersions
diagram
children Version
annotation
documentation
Used to define compatible versions for the project environment update feature. It defines the different versions of device descriptions and necessary libraries which are compatible without any change of components.

element DeviceDescription/Device/CompatibleVersions/Version
diagram
type xs:string
annotation
documentation
Version should be like 1.2.3.4. Wildcard * is used for matching purpose. Example: 3.4.*.* -> This device is compatible to all other 3.4.x.x. versions

element DeviceDescription/Modules
diagram
children Module
annotation
documentation
A group of devices that are only available in the context of the "Main" device described in node "Device". Eg. IO-Modules, Functional modules, ...

element DeviceDescription/Modules/Module
diagram
children ModuleId DeviceInfo Connector ConnectorGroup DeviceParameterSet DriverInfo Functional ExtendedSettings Custom LogicalDevice SupportedLogicalBusSystems
attributes
Name Type Use Default Fixed Annotation
showParamsInDevDescOrder xs:boolean optional false
documentation
If attribute is false or missing, then the parameters are shown in the generic device configuration editor in the order of parameter id.
If attribute is true then the parameters are shown in the order of the position inside the device description.

element DeviceDescription/Modules/Module/ModuleId
diagram
type xs:string
annotation
documentation
The module id is an identifier string, that identifies the module within all modules of a "Main" device. The complete identification of a module is made up of the "Main" devices DeviceIdentity together with this module id. The id must be unique within the device description

element DeviceDescription/ImportPluginVersion
diagram
type restriction of xs:string
annotation
documentation
Version shall be like 1.2.3.4: Example: 3.3.0.10

element DeviceDescription/ExternalConverterPluginVersion
diagram
type restriction of xs:string
annotation
documentation
Used for logical devices which normally create a SDD xml file.
If Element is missing then no logical device is needed.
If Element is empty then the logical device could not be created because external converter plugin is not active in the profile. When renewing the devices descriptions such devices are reimported.
If Element has a version number then the plugin shall write the version of the the converter. Then it could check in the next version if a renew is necessary
Version shall be like 1.2.3.4: Example: 3.3.0.10

element DeviceDescription/AdditionalFileToImport
diagram
type extension of xs:string
attributes
Name Type Use Default Fixed Annotation
converterFactoryGuid xs:string optional
documentation
Factory for importing other files as devdesc.xml. Must be a valid Guid as used in RepTool. If not set or Guid.Empty then default devdesc.xml importer is used.
annotation
documentation
Install with this devices description also additional devices. For example the customer must select only the plc device description and depending devices are also installed automatically

group ModuleElementsGroup
diagram
children DeviceInfo Connector ConnectorGroup DeviceParameterSet DriverInfo Functional ExtendedSettings Custom LogicalDevice SupportedLogicalBusSystems
annotation
documentation
The same elements that are used to describe a full featured device.

element ModuleElementsGroup/DeviceInfo
diagram
children Name Description Vendor OrderNumber Image Icon DefaultInstanceName Category Family AdditionalFiles Custom
attributes
Name Type Use Default Fixed Annotation
VendorId UShortBaseN
documentation
Reserved for future use
annotation
documentation
Stores all information about a module

element ModuleElementsGroup/DeviceInfo/Name
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
The name of the device as it will be shown in the device dialogue of CoDeSys. With the attribute name a localisation is possible

element ModuleElementsGroup/DeviceInfo/Description
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
Additional description ot the device which is shown in the device details.

element ModuleElementsGroup/DeviceInfo/Vendor
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
Vendor name of the device

element ModuleElementsGroup/DeviceInfo/OrderNumber
diagram
type xs:string
annotation
documentation
A additional number to support the order number of the device.

element ModuleElementsGroup/DeviceInfo/Image
diagram
type FileRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localFiles:XMLFile
annotation
documentation
Reference to an image that may be shown within the configuration dialog of the device. For maximum portability use jpg, gif, png or tiff images. All but jpg support transparency which should be used to render the background of an image transparent. If that is no option, then the backgroundcolour should be plain white.

element ModuleElementsGroup/DeviceInfo/Icon
diagram
type FileRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localFiles:XMLFile
annotation
documentation
Reference to a windows Icon file. Icon sizes 16x16 adn 32x32 should be contained.

element ModuleElementsGroup/DeviceInfo/DefaultInstanceName
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
If this element is present, it defines the default name for the object in the project, when an instance of this device is created. Usually the user will be able to change the name of a particular instance.

element ModuleElementsGroup/DeviceInfo/Category
diagram
type xs:int
annotation
documentation
Specifies a category to which this device belongs to (e.g. Profibus slave). More than one category can be specified.

element ModuleElementsGroup/DeviceInfo/Family
diagram
type xs:string
annotation
documentation
Specifies a vendor-specific family to which this device belongs to (e.g. BC family). More than one family can be specified. The format of this string is VendorID:FamilyID. One particular family is described in a vendor description file.

element ModuleElementsGroup/DeviceInfo/AdditionalFiles
diagram
children File
annotation
documentation
Additional files are for example the original gsd or esd files which are linked to the converted device description. But it is possible to link all necessary files to the device description.

element ModuleElementsGroup/DeviceInfo/AdditionalFiles/File
diagram
type extension of FileRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localFiles:XMLFile
key xs:string required
documentation
Allows identification of a specific file, eg. the native gsd file, from which a description was created. The key "ExternalStrings" is reserved for referencing an external string table file.

element ModuleElementsGroup/DeviceInfo/Custom
diagram
type CustomType
annotation
documentation
With custom additional xml data could be added. This data is not used by standard CoDeSys. It is used by customer specific plugins

element ModuleElementsGroup/Connector
diagram
type | extension of ConnectorType
children | InterfaceName Fixed Slot Var HostParameterSet DriverInfo Custom Appearance Client AdditionalInterface Constraint AllowOnly
attributes
Name Type Use Default Fixed Annotation
moduleType xs:int required
documentation
moduleType is a unique number defining the type of the device. 65 for example is reserved for EtherCAT slaves. Numbers below 32768 are maintained by 3S. Numbers above 32768 (0x8000) are for customers. The moduletype is downloaded to the plc IoConfigConnector
role derived by: xs:string optional parent
documentation
The role is either parent or child. Child means that this connector is controlling the connection to the parent (father) device. a Parent connector controls the devices which could be added to that device.
interface xs:string required
documentation
The interface string is the only responsible attribute which controls if devices could be added below that device. If a subdevice should be possible then the actual device must have at least a connector with role parent and the device below must have a connector with role child. At both devices the interface must be equal. Then the subdevice could be added.
connectorId xs:int optional -1
documentation
A device local identifier of the connector. This identifier is referenced eg. in the hostpath attribute of child connectors.
If -1 (default value) then the connector cannot be referenced.
Additionally this value is used to sort the connectors in the UI.
hostpath xs:int optional -1
documentation
Only valid for parent connectors. Each parent connector has an associated child connector (or none) that leads to the controlling host. By walking the hostpath, the controlling host can be determined. If this value is -1 (the default value), then the connector is mapped directly onto the device. Otherwise this attribute must reference the connectorId of the associated parent connector.
explicit xs:boolean optional false
documentation
If true then this connector should be shown as a separate node in the UI.
alwaysmapping xs:boolean optional false
documentation
Like the attribute alwaysmapping for each parameter this controls the behaviour for all parameters below the connector. It the flag is true then inputs and outputs are exchanged even if they are not used in any task.
hideInStatusPage xs:boolean optional false
documentation
If set to true then this connector is not shown in the status page of CoDeSys. Normally all connectors of a device are listed here but it might be necessary to hide some of them because they are irrelevant.
updateAllowed xs:boolean optional true
documentation
Only used at child connectors. The update device dialogue is not available for such connectors.
fixedInputAddress xs:string optional
documentation
The address for inputs starts with the given IEC address. For example %IB50
fixedOutputAddress xs:string optional
documentation
The address for outputs starts with the given IEC address. For example %QW100
downloadParamsDevDescOrder xs:boolean optional false

alwaysmappingDisabled xs:boolean optional false
documentation
If the attribute is false then the checkbox in the I/O mapping tab is disabled. The alwaysmapping attribute still controls the checked state but the customer is not allowed to change the setting.
initialStatusFlag xs:unsignedInt optional 1
documentation
sets the initial value of dwFlags of IoConfigConnector structure. With value 241 the connector is running and will be shown as a green arrow in the device tree.
useBlobInitConst xs:boolean optional false
documentation
If attribute is true then generate the array of IoConfigParameter with blobinitconst. The io driver is then not able to change dwDriverspecific in the structure. This must be done either by a plugin or with the attribute at each parameter.
annotation
documentation
A connector defines a connection to a child (slaves or modules for example).

element ModuleElementsGroup/ConnectorGroup
diagram
type | ConnectorGroupType
children | Connector
annotation
documentation
A connector group defines a set of connectors of which only one may be used.

element ModuleElementsGroup/DeviceParameterSet
diagram
type | extension of ParameterListType
children | Parameter ParameterSection EditorName
attributes
Name Type Use Default Fixed Annotation
downloadParamsDevDescOrder xs:boolean optional false

fixedInputAddress xs:string optional
documentation
The address for inputs starts with the given IEC address. For example %IB50
fixedOutputAddress xs:string optional
documentation
The address for outputs starts with the given IEC address. For example %QW100
annotation
documentation
Device parameters define connection independent parameters of a device. Device parameters are valid for plc devices only. If a device descriptions has connectors then only hostparameters below the connector may be used.

element ModuleElementsGroup/DeviceParameterSet/EditorName
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
The name of the editor tab for generic device view

element ModuleElementsGroup/DriverInfo
diagram
type | DriverInfoType
children | RequiredCyclicTask RequiredExternalEventTask RequiredLib Scan RequiredLibEx
attributes
Name Type Use Default Fixed Annotation
needsBusCycle xs:boolean optional false
documentation
If needsBusCycle is true then for this connector the method IoDrvStartBusCycle is called in the plc. This method could be used for transmitting the inputs and outputs to the hardware.
StopResetBehaviour StopResetBehaviourType optional
documentation
The attribute is only used inside a plc. It is the default value for the tab PLC settings but the user may change this setting manually. With the setting it is possible to control the behaviour when stopping the plc. The default is that the plc will keep the last outputs.
StopResetBehaviourUserProgram xs:string optional
documentation
The attribute is only used inside a plc and if StopResetBehaviour is set to ExecuteProgram. It is the default value for the tab PLC settings but the user may change this setting manually. It the plc is stopped then the given program is executed once to set some outputs to a specific value.
UpdateIosInStop xs:boolean optional false
documentation
The attribute is only used inside a plc. It is the default value for the tab PLC settings but the user may change this setting manually. If the attribute is true then all methods for exchanging inputs ore outputs like IoDrvReadInputs or IoDrvWriteOutputs are called even if the plc is stopped. This means that inputs are sill exchanged. The default is false which means that inputs and outputs are not exchanged while the plc is stopped.
defaultBusCycleTask xs:string optional
documentation
It needsBusCycle is true or before or after inputs or outputs calls are used a task could be determined to do the bus cycle. The attribute is the default value for either the plc or for each connector. Inside CoDeSys the user could override the setting manually.
useSlowestTask xs:boolean optional false
documentation
if attribute is true, then the slowest task is used for buscycle task if not task is selected in configuration
needsBusCycleBeforeReadInputs xs:boolean optional false
documentation
The normal attribute needsBusCycle will switch on the call of IoMgrStartBusCycle after IoMgrWriteOutputs. This new attribute will add a second possibility to call IoMgrStartBusCycle before IoMgrReadInputs
enableDiagnosis xs:boolean optional false
documentation
If set to true, then the diagnosis functionality is enabled. For each device a function block instance is created to get access to the device tree and status of each device. It will consume more memory because of additional instances.
createAdditionalParameters derived by: xs:string optional Hidden
documentation
Option for plc settings tab to show the checkbox for additional parameters like name of device, device identification, updateIoInStop.
Hidden: the checkbox is not shown in the tab
Disabled: Checkbox is visible but not checed
Enabled: Checkbox is visible and also checked
EnabledFixed: Checkbox is checked and greyed out
annotation
documentation
The driverInfo adds additional information for the iodriver in the plc

element ModuleElementsGroup/Functional
diagram
children ChildObject Attribute
annotation
documentation
Describes functional aspects of the device, like for example that the device is a PLC.

element ModuleElementsGroup/Functional/ChildObject
diagram
type | ChildObjectType
children | ObjectGuid ObjectName ChildObject
attributes
Name Type Use Default Fixed Annotation
required xs:boolean optional false
documentation
reserved for future use.
annotation
documentation
Force an additional node to be created as a child of the object node.

element ModuleElementsGroup/Functional/Attribute
diagram
type extension of xs:string
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:NMTOKEN | required |  |  |
annotation
documentation
Provides a way to describe properties of a device which are not expressed as parameters, by defining a key/value pair. Customer defined keys must contain a prefix creating a customerspecific namespace: "CustomerName:Key". Example: The attribute "StdCommunicationLink" describes, whether the device is reachable by standard codesys communication.

element ModuleElementsGroup/ExtendedSettings
diagram
annotation
documentation
Additional settings for customer plugins

element ModuleElementsGroup/Custom
diagram
type CustomType
annotation
documentation
Custom xml code which is passed through by CoDeSys to special plugin

element ModuleElementsGroup/LogicalDevice
diagram
children MatchingLogicalDevice
attributes
Name Type Use Default Fixed Annotation
insertAutoIndex xs:unsignedShort optional
documentation
if attributes is set then the logical device is automatically inserted to the device tree if it does not exist already. The index defines the seleted deviceRefType.
annotation
documentation
Used for a physical device to define the matching logical devices.

element ModuleElementsGroup/LogicalDevice/MatchingLogicalDevice
diagram |
type | extension of DeviceRefType
children | DeviceIdentification LocalModuleId

element ModuleElementsGroup/SupportedLogicalBusSystems
diagram
type xs:string
annotation
documentation
Used for the plc device to select the supported bussystem. Must match with the device identification of logical devices. The device identification of logical device should be "vvvv protocol nnnn - xxxx" (see spec FS_LogicalIO) This element shall contain only protocol. The plugin just checks with contains. If true then the logical devices could be added

complexType ArraydefType
diagram
children FirstDimension SecondDimension ThirdDimension
attributes
Name Type Use Default Fixed Annotation
basetype xs:NMTOKEN required
documentation
The type of the value that contains the bits. Should be one of the logical types std:BYTE, std:WORD, std:DWORD, std:LWORD
name xs:NCName required
documentation
The name that is used to reference this structure.
annotation
documentation
Type for adding arrays (up to three dimensions) to the configuration

element ArraydefType/FirstDimension
diagram
type | extension of DimensionType
children | LowerBorder UpperBorder
annotation
documentation
defines the first dimension of an array. Example for created type: ARRAY[0..10] OF BYTE

element ArraydefType/SecondDimension
diagram
type | DimensionType
children | LowerBorder UpperBorder
annotation
documentation
defines the second dimension of an array. Example ARRAY [0..10,5..20] IF INT

element ArraydefType/ThirdDimension
diagram
type | DimensionType
children | LowerBorder UpperBorder
annotation
documentation
defines the third dimension of an array. May be used only if second dimension is also used. Example: ARRAY [0..10,5..20,3..8] OF INT

complexType BitfielddefType
diagram
type | extension of TypedefType
children | Component
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
basetype xs:NMTOKEN required
documentation
The type of the value that contains the bits. Should be one of the logical types std:BYTE, std:WORD, std:DWORD, std:LWORD
annotation
documentation
Type for bitfields (mainly used for inputs and outputs) The customer can map each bit or also the root element

element BitfielddefType/Component
diagram
children Default VisibleName Unit Description FilterFlags Custom
attributes
Name Type Use Default Fixed Annotation
identifier xs:NCName required
documentation
The "name" of this bit.
type xs:NMTOKEN required
documentation
The "type" of the bit, how it should be represented to the user. May be std:BOOL to access the bit by TRUE/FALSE or a numeric type (std:INT) to access it with values 0/1. An enumeration type that defines names for the values 0 and 1 is also allowed here.
onlineaccess derived by: xs:string optional readwrite
documentation
OnlineAccess controls the visibility or the access in the online (logged in) mode. If read is set then the parameter is readonly which means it is grayed out and the prepared value column is not accessible
offlineaccess derived by: xs:string optional readwrite
documentation
OnlineAccess controls the visibility or the access in the online (logged in) mode. If read is set then the parameter is readonly which means it is grayed out and the prepared value column is not accessible
annotation
documentation
A single bit of this bitfield. Bits are allocated from least significant to most significant bits.

element BitfielddefType/Component/Default
diagram
type | ValueType
children | Element
annotation
documentation
The default value of this bit.

element BitfielddefType/Component/VisibleName
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
The (localized) name of this bit component as it should be presented to the user.

element BitfielddefType/Component/Unit
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
An optional unit. (Informational)

element BitfielddefType/Component/Description
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
A more detailed explanation for this bit component.

element BitfielddefType/Component/FilterFlags
diagram
type xs:NMTOKENS
annotation
documentation
A comma separated list of filter flags for this parameter. This filter flag can be looked up in the FilterFlags section of the device description.

element BitfielddefType/Component/Custom
diagram
type CustomType
annotation
documentation
May contain customer specific extensions to this description. Not interpreted by the framework, but available to customer plugIns.

complexType ChildObjectType
diagram
children ObjectGuid ObjectName ChildObject
attributes
Name Type Use Default Fixed Annotation
required xs:boolean optional false
documentation
reserved for future use.
annotation
documentation
The element is used to add the plc logic or additional objects automatically to the device tree

element ChildObjectType/ObjectGuid
diagram
type xs:string
annotation
documentation
Type-GUID of the object to be created as a child object.

element ChildObjectType/ObjectName
diagram
type xs:string
annotation
documentation
Serves as a comment in the xml file, as well as a hint for the user, if the obejct cannot be created for some reason.

element ChildObjectType/ChildObject
diagram
type | ChildObjectType
children | ObjectGuid ObjectName ChildObject
attributes
Name Type Use Default Fixed Annotation
required xs:boolean optional false
documentation
reserved for future use.

complexType ConnectorGroupType
diagram
children Connector
annotation
documentation
Type for connectors. Connectors control slaves and modules etc.

element ConnectorGroupType/Connector
diagram
type | ConnectorType
children | InterfaceName Fixed Slot Var HostParameterSet DriverInfo Custom Appearance Client AdditionalInterface Constraint AllowOnly
attributes
Name Type Use Default Fixed Annotation
moduleType xs:int required
documentation
moduleType is a unique number defining the type of the device. 65 for example is reserved for EtherCAT slaves. Numbers below 32768 are maintained by 3S. Numbers above 32768 (0x8000) are for customers. The moduletype is downloaded to the plc IoConfigConnector
role derived by: xs:string optional parent
documentation
The role is either parent or child. Child means that this connector is controlling the connection to the parent (father) device. a Parent connector controls the devices which could be added to that device.
interface xs:string required
documentation
The interface string is the only responsible attribute which controls if devices could be added below that device. If a subdevice should be possible then the actual device must have at least a connector with role parent and the device below must have a connector with role child. At both devices the interface must be equal. Then the subdevice could be added.
connectorId xs:int optional -1
documentation
A device local identifier of the connector. This identifier is referenced eg. in the hostpath attribute of child connectors.
If -1 (default value) then the connector cannot be referenced.
Additionally this value is used to sort the connectors in the UI.
hostpath xs:int optional -1
documentation
Only valid for parent connectors. Each parent connector has an associated child connector (or none) that leads to the controlling host. By walking the hostpath, the controlling host can be determined. If this value is -1 (the default value), then the connector is mapped directly onto the device. Otherwise this attribute must reference the connectorId of the associated parent connector.
explicit xs:boolean optional false
documentation
If true then this connector should be shown as a separate node in the UI.
alwaysmapping xs:boolean optional false
documentation
Like the attribute alwaysmapping for each parameter this controls the behaviour for all parameters below the connector. It the flag is true then inputs and outputs are exchanged even if they are not used in any task.
hideInStatusPage xs:boolean optional false
documentation
If set to true then this connector is not shown in the status page of CoDeSys. Normally all connectors of a device are listed here but it might be necessary to hide some of them because they are irrelevant.
updateAllowed xs:boolean optional true
documentation
Only used at child connectors. The update device dialogue is not available for such connectors.
fixedInputAddress xs:string optional
documentation
The address for inputs starts with the given IEC address. For example %IB50
fixedOutputAddress xs:string optional
documentation
The address for outputs starts with the given IEC address. For example %QW100
downloadParamsDevDescOrder xs:boolean optional false

alwaysmappingDisabled xs:boolean optional false
documentation
If the attribute is false then the checkbox in the I/O mapping tab is disabled. The alwaysmapping attribute still controls the checked state but the customer is not allowed to change the setting.
initialStatusFlag xs:unsignedInt optional 1
documentation
sets the initial value of dwFlags of IoConfigConnector structure. With value 241 the connector is running and will be shown as a green arrow in the device tree.
useBlobInitConst xs:boolean optional false
documentation
If attribute is true then generate the array of IoConfigParameter with blobinitconst. The io driver is then not able to change dwDriverspecific in the structure. This must be done either by a plugin or with the attribute at each parameter.

complexType ConnectorType
diagram
children InterfaceName Fixed Slot Var HostParameterSet DriverInfo Custom Appearance Client AdditionalInterface Constraint AllowOnly
attributes
Name Type Use Default Fixed Annotation
moduleType xs:int required
documentation
moduleType is a unique number defining the type of the device. 65 for example is reserved for EtherCAT slaves. Numbers below 32768 are maintained by 3S. Numbers above 32768 (0x8000) are for customers. The moduletype is downloaded to the plc IoConfigConnector
role derived by: xs:string optional parent
documentation
The role is either parent or child. Child means that this connector is controlling the connection to the parent (father) device. a Parent connector controls the devices which could be added to that device.
interface xs:string required
documentation
The interface string is the only responsible attribute which controls if devices could be added below that device. If a subdevice should be possible then the actual device must have at least a connector with role parent and the device below must have a connector with role child. At both devices the interface must be equal. Then the subdevice could be added.
connectorId xs:int optional -1
documentation
A device local identifier of the connector. This identifier is referenced eg. in the hostpath attribute of child connectors.
If -1 (default value) then the connector cannot be referenced.
Additionally this value is used to sort the connectors in the UI.
hostpath xs:int optional -1
documentation
Only valid for parent connectors. Each parent connector has an associated child connector (or none) that leads to the controlling host. By walking the hostpath, the controlling host can be determined. If this value is -1 (the default value), then the connector is mapped directly onto the device. Otherwise this attribute must reference the connectorId of the associated parent connector.
explicit xs:boolean optional false
documentation
If true then this connector should be shown as a separate node in the UI.
alwaysmapping xs:boolean optional false
documentation
Like the attribute alwaysmapping for each parameter this controls the behaviour for all parameters below the connector. It the flag is true then inputs and outputs are exchanged even if they are not used in any task.
hideInStatusPage xs:boolean optional false
documentation
If set to true then this connector is not shown in the status page of CoDeSys. Normally all connectors of a device are listed here but it might be necessary to hide some of them because they are irrelevant.
updateAllowed xs:boolean optional true
documentation
Only used at child connectors. The update device dialogue is not available for such connectors.
fixedInputAddress xs:string optional
documentation
The address for inputs starts with the given IEC address. For example %IB50
fixedOutputAddress xs:string optional
documentation
The address for outputs starts with the given IEC address. For example %QW100
downloadParamsDevDescOrder xs:boolean optional false

alwaysmappingDisabled xs:boolean optional false
documentation
If the attribute is false then the checkbox in the I/O mapping tab is disabled. The alwaysmapping attribute still controls the checked state but the customer is not allowed to change the setting.
initialStatusFlag xs:unsignedInt optional 1
documentation
sets the initial value of dwFlags of IoConfigConnector structure. With value 241 the connector is running and will be shown as a green arrow in the device tree.
useBlobInitConst xs:boolean optional false
documentation
If attribute is true then generate the array of IoConfigParameter with blobinitconst. The io driver is then not able to change dwDriverspecific in the structure. This must be done either by a plugin or with the attribute at each parameter.
annotation
documentation
Type for connectors. Connectors control slaves and modules etc.

element ConnectorType/InterfaceName
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
The interface name is used in for the tabs shown in CoDeSys (for example I/O mapping). The given name is used as a prefix to the specific tab page.

element ConnectorType/Fixed
diagram
children Module
attributes
Name Type Use Default Fixed Annotation
subdevicesCollapsed xs:boolean optional false
documentation
If attribute is true then the node will be shown collapsed if subdevices are in the device tree.
annotation
documentation
A fixed adaptor only allows a certain module. This module may not be removed or changed by the user. For convenience reasons, a single fixed adaptor may define multiple modules at once.

element ConnectorType/Fixed/Module
diagram
type | extension of DeviceRefType
children | DeviceIdentification LocalModuleId
attributes
Name Type Use Default Fixed Annotation
basename xs:string optional $(DeviceName)
documentation
Set the name of the module to be inserted. If the name is not unique in the context, where the module is inserted, a number may be appended to make the name unique.
The placeholder $(DeviceName) is replaced by the name of the module (as defined in the DeviceInfo section of the module).
annotation
documentation
Reference to the device that is connected to the fixed adaptor.

element ConnectorType/Slot
diagram
children DefaultModule
attributes
Name Type Use Default Fixed Annotation
count xs:int optional 1
documentation
Defines the number of possible slots. If role is child then count must be 1. If role is parent then the number defines the available slots in the device tree (each separately shown)
allowEmpty xs:boolean optional true
documentation
For role child the attribute must be false. For role parent it defines if the slot could be an empty slot or if always a module must be plugged to the slot.
subdevicesCollapsed xs:boolean optional false
documentation
If attribute is true then the node will be shown collapsed if subdevices are in the device tree.
annotation
documentation
Slot adaptors describe a fixed number of slots, where a module with a matching connector may be added. Optionally these slots may be left empty (if "allowEmpty" is true).

element ConnectorType/Slot/DefaultModule
diagram
type | extension of DeviceRefType
children | DeviceIdentification LocalModuleId
attributes
Name Type Use Default Fixed Annotation
basename xs:string optional $(DeviceName)
documentation
Set the name of the module to be inserted. If the name is not unique in the context, where the module is inserted, a number may be appended to make the name unique.
The placeholder $(DeviceName) is replaced by the name of the module (as defined in the DeviceInfo section of the module).
annotation
documentation
Define the modules that should be plugged into the slots at the beginning. If empty slots are not allowed, a DefaultModule is mandatory for each slot. Otherwise slots are filled from the beginning with the defined DefaultModules. Remaining slots are left empty. Surplus DefaultModules are ignored.

element ConnectorType/Var
diagram
attributes
Name | Type | Use | Default | Fixed | Annotation
max | derived by: xs:string | optional | unbounded |  |
annotation
documentation
Var adaptors describe a variable length sequence of modules that may be added to the connector. Examples for var adaptors are typically fieldbusses and similar connectors.

element ConnectorType/HostParameterSet
diagram
type | ParameterListType
children | Parameter ParameterSection
annotation
documentation
Defines a set of parameters which are loaded on the master PLC of a connection

element ConnectorType/DriverInfo
diagram
type | DriverInfoType
children | RequiredCyclicTask RequiredExternalEventTask RequiredLib Scan RequiredLibEx
attributes
Name Type Use Default Fixed Annotation
needsBusCycle xs:boolean optional false
documentation
If needsBusCycle is true then for this connector the method IoDrvStartBusCycle is called in the plc. This method could be used for transmitting the inputs and outputs to the hardware.
StopResetBehaviour StopResetBehaviourType optional
documentation
The attribute is only used inside a plc. It is the default value for the tab PLC settings but the user may change this setting manually. With the setting it is possible to control the behaviour when stopping the plc. The default is that the plc will keep the last outputs.
StopResetBehaviourUserProgram xs:string optional
documentation
The attribute is only used inside a plc and if StopResetBehaviour is set to ExecuteProgram. It is the default value for the tab PLC settings but the user may change this setting manually. It the plc is stopped then the given program is executed once to set some outputs to a specific value.
UpdateIosInStop xs:boolean optional false
documentation
The attribute is only used inside a plc. It is the default value for the tab PLC settings but the user may change this setting manually. If the attribute is true then all methods for exchanging inputs ore outputs like IoDrvReadInputs or IoDrvWriteOutputs are called even if the plc is stopped. This means that inputs are sill exchanged. The default is false which means that inputs and outputs are not exchanged while the plc is stopped.
defaultBusCycleTask xs:string optional
documentation
It needsBusCycle is true or before or after inputs or outputs calls are used a task could be determined to do the bus cycle. The attribute is the default value for either the plc or for each connector. Inside CoDeSys the user could override the setting manually.
useSlowestTask xs:boolean optional false
documentation
if attribute is true, then the slowest task is used for buscycle task if not task is selected in configuration
needsBusCycleBeforeReadInputs xs:boolean optional false
documentation
The normal attribute needsBusCycle will switch on the call of IoMgrStartBusCycle after IoMgrWriteOutputs. This new attribute will add a second possibility to call IoMgrStartBusCycle before IoMgrReadInputs
enableDiagnosis xs:boolean optional false
documentation
If set to true, then the diagnosis functionality is enabled. For each device a function block instance is created to get access to the device tree and status of each device. It will consume more memory because of additional instances.
createAdditionalParameters derived by: xs:string optional Hidden
documentation
Option for plc settings tab to show the checkbox for additional parameters like name of device, device identification, updateIoInStop.
Hidden: the checkbox is not shown in the tab
Disabled: Checkbox is visible but not checed
Enabled: Checkbox is visible and also checked
EnabledFixed: Checkbox is checked and greyed out
annotation
documentation
The driverInfo adds additional information for the iodriver in the plc

element ConnectorType/Custom
diagram
type CustomType
annotation
documentation
OEM can add additional xml code for their own plugins here. CoDeSys whill just pass this information

element ConnectorType/Appearance
diagram
children ShowEditor
annotation
documentation
Defines that only specified editor pages should be shown

element ConnectorType/Appearance/ShowEditor
diagram
type xs:string
annotation
documentation
The name of the editor which should be shown. It is determined by the method PageIdentifier of the interface IEditorPageAppearance.
Strings for default editors:
"StatusPage" The status / diagnosis page
"ParameterEditor" The generic parameter editor
"DeviceInformation" The information page
"IOMappingEditor" The editor for inputs and outputs
"PLCOptionsPage" for the plc options
"ApplicationsPage" for the applications
"LoggerPage" for the logger
"UpDownloadPage" for the upload and download

"CommunicationPage" for the PLC communication
The string is not case sensitive, because the check does ToLower()

element ConnectorType/Client
diagram
attributes
Name Type Use Default Fixed Annotation
name xs:string optional
documentation
Name of the special pluging (example safety)
maxinputsize xs:unsignedInt optional
documentation
used by safety
maxoutputsize xs:unsignedInt optional
documentation
used by safety
maxinoutputsize xs:unsignedInt optional
documentation
used by safety
clienttypeguid xs:string optional
documentation
Guid for the client in the special plugin (safety)
clientconnectorinterface xs:string optional
documentation
used by safety
clientconnectorid xs:int optional -1
documentation
used by safety
annotation
documentation
if name atrribute is set then a special plugin will work with the connector. It could check the maximum size of inputs or outputs if for example it has only a limited size of dual ported RAM.

element ConnectorType/AdditionalInterface
diagram
attributes
Name Type Use Default Fixed Annotation
interface xs:string required
documentation
defines an additional (alternative) interface. It also could be a guid (example: {23DC158C-CE17-4209-8F54-97D702C2FBC4}) Then a special plugin method is called which could determine if the device could be added to the device tree.
annotation
documentation
if set then additional interfaces are added to the connector

element ConnectorType/Constraint
diagram
type | extension of DeviceRefType
children | DeviceIdentification LocalModuleId
attributes
Name Type Use Default Fixed Annotation
MaxNumber xs:unsignedInt required
documentation
The maximum number of a specifice device or moduleid
CheckRecursive xs:boolean optional false
documentation
If set to true then the complete device tree is checked for multiple device. If false then only direct childs (and not grandchilds) of that device are checked
annotation
documentation
With DeviceConstraint it is possible to limit the number of a particular device. For example that a specifice slave could be inserted only once

element ConnectorType/AllowOnly
diagram |
type | DeviceRefType
children | DeviceIdentification LocalModuleId

complexType CustomType
diagram
annotation
documentation
Type for custom xml code. The code is accessible by customer plugins.

complexType DeviceIdentificationType
diagram |
children | Type Id Version

element DeviceIdentificationType/Type
diagram
type xs:int
annotation
documentation
Numbers below 32768 are maintained by 3S. Numbers above 32768 could be used by customers.

element DeviceIdentificationType/Id
diagram
type xs:string
annotation
documentation
The id for manually created files must us a 4 hexadecimal number. The first two bytes are the vendor code. The second two bytes are vendor specific. Example: 0000 0001 (0000 is the vendor code for 3S, 0001 is the first used vendor specific number)

element DeviceIdentificationType/Version
diagram
type xs:string
annotation
documentation
Version should be like 1.2.3.4: Example: 3.3.0.10

complexType DeviceRefType
diagram
children DeviceIdentification LocalModuleId
annotation
documentation
Type for referencing subdevices which are automaticall added when adding the root device

element DeviceRefType/DeviceIdentification
diagram
attributes
Name Type Use Default Fixed Annotation
deviceType xs:int required
documentation
The deviceType must match with the deviceIdentification "Type" of the additional file.
deviceId xs:string required
documentation
The deviceID must match with the deviceIdentification "Id" of the additional file.
version xs:string optional
documentation
The version must match with the deviceIdentification "Version of the additional file.
annotation
documentation
A additional device is automaticall added to the device tree. The device is stored in a additional device description file.

element DeviceRefType/LocalModuleId
diagram
type xs:string
annotation
documentation
This automatically addes a module which is described in the same device description file. It must match with the moduleId.

complexType DimensionType
diagram
children LowerBorder UpperBorder
annotation
documentation
Type used for ArraydefType to describe one of three possible dimensions

element DimensionType/LowerBorder
diagram
type xs:int
annotation
documentation
The starting index of the array

element DimensionType/UpperBorder
diagram
type xs:int
annotation
documentation
The eending index of the array

complexType DriverInfoType
diagram
children RequiredCyclicTask RequiredExternalEventTask RequiredLib Scan RequiredLibEx
attributes
Name Type Use Default Fixed Annotation
needsBusCycle xs:boolean optional false
documentation
If needsBusCycle is true then for this connector the method IoDrvStartBusCycle is called in the plc. This method could be used for transmitting the inputs and outputs to the hardware.
StopResetBehaviour StopResetBehaviourType optional
documentation
The attribute is only used inside a plc. It is the default value for the tab PLC settings but the user may change this setting manually. With the setting it is possible to control the behaviour when stopping the plc. The default is that the plc will keep the last outputs.
StopResetBehaviourUserProgram xs:string optional
documentation
The attribute is only used inside a plc and if StopResetBehaviour is set to ExecuteProgram. It is the default value for the tab PLC settings but the user may change this setting manually. It the plc is stopped then the given program is executed once to set some outputs to a specific value.
UpdateIosInStop xs:boolean optional false
documentation
The attribute is only used inside a plc. It is the default value for the tab PLC settings but the user may change this setting manually. If the attribute is true then all methods for exchanging inputs ore outputs like IoDrvReadInputs or IoDrvWriteOutputs are called even if the plc is stopped. This means that inputs are sill exchanged. The default is false which means that inputs and outputs are not exchanged while the plc is stopped.
defaultBusCycleTask xs:string optional
documentation
It needsBusCycle is true or before or after inputs or outputs calls are used a task could be determined to do the bus cycle. The attribute is the default value for either the plc or for each connector. Inside CoDeSys the user could override the setting manually.
useSlowestTask xs:boolean optional false
documentation
if attribute is true, then the slowest task is used for buscycle task if not task is selected in configuration
needsBusCycleBeforeReadInputs xs:boolean optional false
documentation
The normal attribute needsBusCycle will switch on the call of IoMgrStartBusCycle after IoMgrWriteOutputs. This new attribute will add a second possibility to call IoMgrStartBusCycle before IoMgrReadInputs
enableDiagnosis xs:boolean optional false
documentation
If set to true, then the diagnosis functionality is enabled. For each device a function block instance is created to get access to the device tree and status of each device. It will consume more memory because of additional instances.
createAdditionalParameters derived by: xs:string optional Hidden
documentation
Option for plc settings tab to show the checkbox for additional parameters like name of device, device identification, updateIoInStop.
Hidden: the checkbox is not shown in the tab
Disabled: Checkbox is visible but not checed
Enabled: Checkbox is visible and also checked
EnabledFixed: Checkbox is checked and greyed out
annotation
documentation
Type to store special driver relevant parameters

element DriverInfoType/RequiredCyclicTask
diagram
children taskpou
attributes
Name Type Use Default Fixed Annotation
taskname xs:string required
documentation
The unique task name which should be added in the task configuration
priority xs:integer required
documentation
The priority depending fo the plc (0..31 for standard)
cycletime derived by: xs:string required
documentation
The required cycletime of the task. Must be a valid IEC Timestring (eg. T#17ms)
implicit xs:boolean optional false
documentation
Attribute for task creation referring ITaskObject2
withinspstimeslicing xs:boolean optional true
documentation
Attribute for task creation referring ITaskObject2
watchdogEnabled xs:boolean optional false

watchdogTime xs:string optional

watchdogTimeUnit xs:string optional

watchdogSensitivity xs:string optional

annotation
documentation
Describes a cycle task which is automatically added to the task configuration

element DriverInfoType/RequiredCyclicTask/taskpou
diagram
type xs:string
annotation
documentation
Adds a pou to the task. The pou itself is not created. Just the call of the pou is added to the created task

element DriverInfoType/RequiredExternalEventTask
diagram
children taskpou
attributes
Name Type Use Default Fixed Annotation
taskname xs:string required
documentation
The unique task name which should be added in the task configuration
event xs:string required
documentation
The required event which is depending to the available events defined in the device description of the plc
implicit xs:boolean optional false
documentation
Attribute for task creation referring ITaskObject2
withinspstimeslicing xs:boolean optional true
documentation
Attribute for task creation referring ITaskObject2
watchdogEnabled xs:boolean optional false

watchdogTime xs:string optional

watchdogTimeUnit xs:string optional

watchdogSensitivity xs:string optional

annotation
documentation
Described a event task which is automaticall added to the task configuration

element DriverInfoType/RequiredExternalEventTask/taskpou
diagram
type xs:string
annotation
documentation
Adds a pou to the task. The pou itself is not created. Just the call of the pou is added to the created task

element DriverInfoType/RequiredLib
diagram
children FBInstance
attributes
Name Type Use Default Fixed Annotation
libname xs:string required
documentation
The name of the library to add. This is NOT the filename of the library, it is the value of property "Title" defined in the project information settings of the library.
vendor xs:string required
documentation
The vendor as defined in the library. Required to identify the library.
version derived by: xs:string optional
documentation
Defines the exact version of the library to add.
identifier xs:string optional
documentation
Set to a unique value, to reference this library from within the device description.
placeholderlib xs:string optional
documentation
The placeholder defines a unique identification string. The placeholder is set in the plc device description and replaces libname, vendor and version attribute. If the placeholder is not set in the plc then the standard values of these attributes are used to automatically add the library.
loadAsSystemLibrary xs:boolean optional true
documentation
If attribute is false then library is inserted as normal library (black). If attribute is true or missing then library is inserted as system library (grey)
annotation
documentation
Describes a library to add to the application that controls this connector.

element DriverInfoType/RequiredLib/FBInstance
diagram
type | FBInstanceType
children | Initialize CyclicCall
attributes
Name Type Use Default Fixed Annotation
fbname xs:string required
documentation
The type name of the function block for which to create an instance. This type must be defined within the containing library
basename xs:string optional $(DeviceName)
documentation
Describes how the name for the fb instance should be generated. If the name is not unique it is made unique by appending an underscore ("_") and a number. The resulting name must be a valid IEC identifier.
Placeholders may be used to insert userdefined values. Placeholders start with a dollar sign ("$") and the name of the placeholder in braces. Defined placeholders are:
$(DeviceName): The name of the device.
location derived by: xs:string optional
documentation
Depending on the value specified for this attribute, the instance is put at different memory location:
- "gvl": The instance is created in a global variable list.
- "retain": The instance is created as a global variable list in the retain area.
- "input" and "output": The instance is created at the input or output region respectively, of the module. In this case the type of the instance must be a simple structure and neither Initialize nor CyclicCall methods are allowed.
fbnamediag xs:string optional
documentation
The type name of the function block for which to create an instance if the diag switch is enabled. This type must be defined within the containing library
. The fb must contain the implementation of IDevice, IBus and/or IStack
annotation
documentation
If FBInstance is given the a global instance is created for the device. This instance could store all necessary data for that device and it also could have inputs and outputs usable for the customer

element DriverInfoType/Scan
diagram
attributes
Name Type Use Default Fixed Annotation
supported xs:boolean optional false
documentation
If the driver supports the scan feature.
nominate xs:boolean optional false
documentation
If it is possible (and necessary) to "nominate" the device before it is used (eg. give it an IP address in the case of ProfiNet).
This feature is inherited from a parent to its children - this means it can be defined in a fieldbus master and then is valid for all slaves.
identify xs:boolean optional false
documentation
Whether the driver supports the identify function: If the "identify" function is executed, the device has to give a signal to the user for a short time. (eg a blinking LED or something similar).
This feature is inherited from a parent to its children - this means it can be defined in a fieldbus master and then is valid for all slaves.
uploadDescription xs:boolean optional false
documentation
If set, it is possible to load the device description (usually in a fieldbus specific format) directly from the device.
This feature is inherited from a parent to its children - this means it can be defined in a fieldbus master and then is valid for all slaves.
annotation
documentation
Describes features and properties of the driver, to perform a hardware scan.

element DriverInfoType/RequiredLibEx
diagram
children FBInstance
attributes
Name Type Use Default Fixed Annotation
libname xs:string required
documentation
The name of the library to add. This is NOT the filename of the library, it is the value of property "Title" defined in the project information settings of the library.
vendor xs:string required
documentation
The vendor as defined in the library. Required to identify the library.
version derived by: xs:string optional
documentation
Defines the exact version of the library to add.
identifier xs:string optional
documentation
Set to a unique value, to reference this library from within the device description.
client xs:string optional
documentation
The attribute controls which plugin will insert the library (for example safety). Therefor the plugin is completely responsible for this. The default deviceobject will do nothing if the attribute is set.
placeholderlib xs:string optional
documentation
The placeholder defines a unique identification string. The placeholder is set in the plc device description and replaces libname, vendor and version attribute. If the placeholder is not set in the plc then the standard values of these attributes are used to automatically add the library.
loadAsSystemLibrary xs:boolean optional true
documentation
If attribute is false then library is inserted as normal library (black). If attribute is true or missing then library is inserted as system library (grey)
annotation
documentation
Describes a library to add to the application that controls this connector. If attribute client is set then a special plugin will insert the library (for example safety)

element DriverInfoType/RequiredLibEx/FBInstance
diagram
type | FBInstanceType
children | Initialize CyclicCall
attributes
Name Type Use Default Fixed Annotation
fbname xs:string required
documentation
The type name of the function block for which to create an instance. This type must be defined within the containing library
basename xs:string optional $(DeviceName)
documentation
Describes how the name for the fb instance should be generated. If the name is not unique it is made unique by appending an underscore ("_") and a number. The resulting name must be a valid IEC identifier.
Placeholders may be used to insert userdefined values. Placeholders start with a dollar sign ("$") and the name of the placeholder in braces. Defined placeholders are:
$(DeviceName): The name of the device.
location derived by: xs:string optional
documentation
Depending on the value specified for this attribute, the instance is put at different memory location:
- "gvl": The instance is created in a global variable list.
- "retain": The instance is created as a global variable list in the retain area.
- "input" and "output": The instance is created at the input or output region respectively, of the module. In this case the type of the instance must be a simple structure and neither Initialize nor CyclicCall methods are allowed.
fbnamediag xs:string optional
documentation
The type name of the function block for which to create an instance if the diag switch is enabled. This type must be defined within the containing library
. The fb must contain the implementation of IDevice, IBus and/or IStack
annotation
documentation
If FBInstance is given the a global instance is created for the device. This instance could store all necessary data for that device and it also could have inputs and outputs usable for the customer

complexType EnumdefType
diagram
type | extension of TypedefType
children | Enum
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
basetype xs:NMTOKEN optional std.INT
documentation
This is the type of the value elements of this enumeration. Any standard type may be used as a base type. Use eg "std:BYTE" to store the values of this enumeration values in a single byte or use "std:REAL" to give a name to certain floating point values.
annotation
documentation
Type for enumeration parameters

element EnumdefType/Enum
diagram
children Value VisibleName Description
attributes
Name Type Use Default Fixed Annotation
identifier xs:NCName required
documentation
Must be a valid IEC identifier. This identifier is used when using the value from an IEC program ("ParamX := Directions.Forward", for enumeration Directions and a value with identifier Forward);
annotation
documentation
Defines one enumeration value.

element EnumdefType/Enum/Value
diagram
type | ValueType
children | Element
annotation
documentation
The internal value to be used for this enumeration value. Must be of type basetype (defined in the EnumType node).

element EnumdefType/Enum/VisibleName
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
The (localized) name of this value, as it is to be represented to the user.

element EnumdefType/Enum/Description
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
The localized description of the value. Serves as a hint to the user, when to use this value.

complexType FBInstanceType
diagram
children Initialize CyclicCall
attributes
Name Type Use Default Fixed Annotation
fbname xs:string required
documentation
The type name of the function block for which to create an instance. This type must be defined within the containing library
basename xs:string optional $(DeviceName)
documentation
Describes how the name for the fb instance should be generated. If the name is not unique it is made unique by appending an underscore ("_") and a number. The resulting name must be a valid IEC identifier.
Placeholders may be used to insert userdefined values. Placeholders start with a dollar sign ("$") and the name of the placeholder in braces. Defined placeholders are:
$(DeviceName): The name of the device.
location derived by: xs:string optional
documentation
Depending on the value specified for this attribute, the instance is put at different memory location:
- "gvl": The instance is created in a global variable list.
- "retain": The instance is created as a global variable list in the retain area.
- "input" and "output": The instance is created at the input or output region respectively, of the module. In this case the type of the instance must be a simple structure and neither Initialize nor CyclicCall methods are allowed.
fbnamediag xs:string optional
documentation
The type name of the function block for which to create an instance if the diag switch is enabled. This type must be defined within the containing library
. The fb must contain the implementation of IDevice, IBus and/or IStack
annotation
documentation
Allows to automatically create an instance of a functionblock defined in the library for each instance of this connector.
The location attribute specifies the position where the instance should be generated (see annotation there).
This feature can also be used to create instances of structures instead of function blocks, but then, of course, neither Initialize nor CyclicCall methods are possible.

element FBInstanceType/Initialize
diagram
attributes
Name Type Use Default Fixed Annotation
methodName xs:string required
documentation
The function to call.
annotation
documentation
If present, then during Initialization (but after the FB_INIT) the method defined in attribute methodName is called to provide the functionblock with the module id that it was created for.

element FBInstanceType/CyclicCall
diagram
attributes
Name Type Use Default Fixed Annotation
methodname xs:string required
documentation
The name of the fb's method to call. If empty, the fb instance itself is executed.
whentocall derived by: xs:string required

task derived by: xs:string optional #eachtask

annotation
documentation
Define a method, that is to be called cyclically before or after each task.

complexType FileRefType
diagram
type extension of xs:string
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localFiles:XMLFile
annotation
documentation
Elements of this type reference an internationalized string within a string table. The attribute name defines the namespace and an identifier whitin, separated by ':'. If found, then the string is shown in the current language. Otherwise the content of this element is shown as a default.

complexType FileType
diagram
children LocalFile
attributes
Name Type Use Default Fixed Annotation
fileref derived by: xs:NMTOKEN required
documentation
Currentyl only "local" supported. Other values reserved for future enhancements
identifier xs:NCName required
documentation
A unique identifier for each file. This identifier must match with the name attribute for icons, images and additional files.
annotation
documentation
Type for linking additions files like icons, images or other

element FileType/LocalFile
diagram |
type | xs:string

complexType ParameterFilterFlagType
diagram
children DisplayName
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:NMTOKEN | required |  |  |
annotation
documentation
Reserved for future use

element ParameterFilterFlagType/DisplayName
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName

complexType ParameterListType
diagram
children Parameter ParameterSection
annotation
documentation
Type for sections or parameters

element ParameterListType/Parameter
diagram
type | ParameterType
children | Attributes Default Name Unit Description FilterFlags Custom DefaultMapping
attributes
Name Type Use Default Fixed Annotation
ParameterId xs:unsignedInt required
documentation
A unique number of the parameter. For moduleType or DeviceIdentification Type below 32768 these numbers are maintained by 3S.
type xs:string required
documentation
Typedefinition via namespace:
- "std.x" Standard namespace for types like Bit, Bool, INT, ...
- Other namespaces can refer to types in the Types section.
annotation
documentation
All information for the devices are stored in parameters.

element ParameterListType/ParameterSection
diagram
type | ParameterSectionType
children | Name Description Parameter ParameterSection Custom
annotation
documentation
A parameter section just groups some parameters like a directory. It is just for better viewing in the generic device configuration view.

complexType ParameterSectionType
diagram
children Name Description Parameter ParameterSection Custom
annotation
documentation
Type for sections to sort parameters like directories.

element ParameterSectionType/Name
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
Name of the parameter section

element ParameterSectionType/Description
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
Optional description for additional information about this section

element ParameterSectionType/Parameter
diagram
type | ParameterType
children | Attributes Default Name Unit Description FilterFlags Custom DefaultMapping
attributes
Name Type Use Default Fixed Annotation
ParameterId xs:unsignedInt required
documentation
A unique number of the parameter. For moduleType or DeviceIdentification Type below 32768 these numbers are maintained by 3S.
type xs:string required
documentation
Typedefinition via namespace:
- "std.x" Standard namespace for types like Bit, Bool, INT, ...
- Other namespaces can refer to types in the Types section.

element ParameterSectionType/ParameterSection
diagram |
type | ParameterSectionType
children | Name Description Parameter ParameterSection Custom

element ParameterSectionType/Custom
diagram
type CustomType
annotation
documentation
To be used for customer specific extensions.

complexType ParameterType
diagram
children Attributes Default Name Unit Description FilterFlags Custom DefaultMapping
attributes
Name Type Use Default Fixed Annotation
ParameterId xs:unsignedInt required
documentation
A unique number of the parameter. For moduleType or DeviceIdentification Type below 32768 these numbers are maintained by 3S.
type xs:string required
documentation
Typedefinition via namespace:
- "std.x" Standard namespace for types like Bit, Bool, INT, ...
- Other namespaces can refer to types in the Types section.
annotation
documentation
Parameters are storing all configuration data

element ParameterType/Attributes
diagram
attributes
Name Type Use Default Fixed Annotation
alwaysmapping xs:boolean optional false
documentation
The the attribute is true then a input or output parameter is always exchanged even if it is not used in any task. Normally only "used" variables are exchanged to minimize the processor load.
onlineaccess derived by: xs:string optional readwrite
documentation
OnlineAccess controls the visibility or the access in the online (logged in) mode. If read is set then the parameter is readonly which means it is grayed out and the prepared value column is not accessible
offlineaccess derived by: xs:string optional readwrite
documentation
OfflineAccess controls the visibility or the access in the configuration (offline) mode. If none is set then the parameter will not be shown in the generice device view or I/O mapping tab. It will be still used for address calculation but invisible. If read is set then the parameter is readonly which means it is grayed out.
download xs:boolean optional true
documentation
If download is false then the parameter is not available in the plc. It is just for the CoDeSys programming system and it's plugins. Typically it is possible to define special configuration parameters like borders which are only necessary for some plugins.
functional xs:boolean optional false
documentation
if true then parameter is created with pragmas attribute 'device_parameter'. This causes the compiler to add special function for direct parameter access (see CDS-22641). if offlineaccess is not write then attribute 'read_only' is added. If offlineaccess is none then {attribute 'nowatch' is added.
channel derived by: xs:string optional
documentation
The attribute defines the type of the parameter. none means a configuration parameter. input, output or output_readonly are defining process parameters which could be mapped to a new or existing variable
createDownloadStructure xs:boolean optional true
documentation
If this attribute is set to false, then no entry is created for this parameter in the parameters array. The driver is responsible for managing the memory, attributes and to handle the read/write requests to this parameter.
In order to make monitoring and writing on such a parameter work, the driver must implement IoDrvReadParameters2
createInHostConnector xs:boolean optional false
documentation
If createInHostConnector is set to true then the parameter is also created in the connector of the parent device. This is used by Safety for diagnosis for example. The Safety device has the attribute NoIoDownload in the functional section to suppress all code generation. But it is necessary that the safety device adds some parameters in the standard plc for diagnosis.
If the flag is true then the parameter is created in the given connector !and! in the connector of the host device.
createInChildConnector xs:boolean optional false
documentation
If createInChildConnector is set to true then the parameter is also created in the connector of the child device. It will be created in all child connectors if the parameter does not exist in the child
onlineparameter xs:boolean optional false
documentation
If the attribute is true, then the parameter is not included in the parameterlist and a write/read command calls directly a service ReadOnlineParameter or WriteOnlineParameter.
noManualAddress xs:boolean optional false
documentation
If attribute is set to true then the manual address is not possible in the IO mapping tab
logicalParameter xs:boolean optional false
documentation
if True then this parameter is used by the physical device. If the real device already has a parameter with the same id then the parameter from the logical device overrides it
mapOnlyNew xs:boolean optional false
documentation
if true then channel mapping is only possible for new variable. No mapping to existing variables (example: application.pou.abc) is allowed. In the channel mapping there will be no input assistant: button with three dots is hidden and also intellisense is switched off
mapSize xs:unsignedLong optional 0
documentation
If a parameter is an array type (std:array[…] of ) then these two attributes control the mapping of parts of the parameter. In the physical device a parameter with the same id and type has to be available. When generating the language model the parameters from logical and real devices are merged. The logical device parameter overwrites all data from a specific byte until the size is reached. Size is counted in bits!
mapOffset xs:unsignedLong optional 0
documentation
If a parameter is an array type (std:array[…] of ) then these two attributes control the mapping of parts of the parameter. In the physical device a parameter with the same id and type has to be available. When generating the language model the parameters from logical and real devices are merged. The logical device parameter overwrites all data from a specific byte until the size is reached. The offset is counted in bits!
OnlineChangeEnabled xs:boolean optional false

TraceSystemRecord xs:boolean optional false
documentation
If true then this attribute enables the system record function for the trace manager.
constantValue xs:boolean optional false
documentation
If the attribute is true, then the parameter value is constant and if all parameters are constant the initialization values will be put in a blobinitconst area.
onlineHelpUrl xs:string optional
documentation
Used for the generic device editor to show the online help depending of the selected parameter.
driverSpecific xs:string optional 0
documentation
Sets the dwDriverspecific element in the structure IoConfigParameter. used together with "useBlobInitConst" in the connector.
annotation
documentation
Describes addittional aspects of the paramater.
The "channel" attribute defines the intended usage of the parameter: "none" are kind of configuration or state parameters without special meaning to the system. "input" or "output" are process input or output channels respectively, that is data that is exchanged cyclically and mapped into the applications process image. "output_readonly" creates an output with an attribute "read_only". This is used for safety. "diag" should be set for at most one parameter and marks this parameter as being used for diagnostic messages. "diagAck" must be a single parameter of type "std:BOOL", that may be written to online. When this parameter is set to true, this serves as an acknowledge of the current diagnostic message (see specification of diagnosis)
The attribute alwaysmapping (boolean) could be set to true, to enable the data transmission in the buscycle task even if the mapped variable is not used directly in any task (for example when pointers are used).

element ParameterType/Default
diagram
type | ValueType
children | Element
annotation
documentation
MaxOcc 1 if normal type. unbounded if arraytype

element ParameterType/Name
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
A localizable name of the parameter

element ParameterType/Unit
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
Unit for that parameter. Example ms or mA

element ParameterType/Description
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
Addtional description (localizable) for that parameter

element ParameterType/FilterFlags
diagram
type xs:NMTOKENS
annotation
documentation
A comma separated list of filter flags for this parameter. This filter flag can be looked up in the FilterFlags section of the device description.

element ParameterType/Custom
diagram
type CustomType
annotation
documentation
To be used for customer specific extensions.

element ParameterType/DefaultMapping
diagram
type | ValueType
children | Element
annotation
documentation
MaxOcc 1 if normal type. unbounded if arraytype

complexType RangedefType
diagram
type | extension of TypedefType
children | Min Max Default
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
basetype xs:NMTOKEN required
documentation
The type, that is restricted by this definition. Must be a numeric standard type like std:SINT, std:USINT, std:INT, ..., std:ULINT, std:REAL, std:LREAL
annotation
documentation
Type for ranges (limited values) of a default iec type

element RangedefType/Min
diagram
type xs:string
annotation
documentation
Minimum allowed value. Must be of type basetype.

element RangedefType/Max
diagram
type xs:string
annotation
documentation
Maximum allowed value. Must be of type basetype.

element RangedefType/Default
diagram
type xs:string
annotation
documentation
Use this value as default if no other default is given. Must be of type basetype.

complexType StringRefType
diagram
type extension of xs:string
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
Elements of this type reference an internationalized string within a string table. The attribute name defines the namespace and an identifier whitin, separated by ':'. If found, then the string is shown in the current language. Otherwise the content of this element is shown as a default.

complexType StructdefType
diagram
type | extension of TypedefType
children | Component
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
iecType xs:string optional
documentation
The type of the structure in the given library by the attribute iecTypeLib.
iecTypeLib xs:string
documentation
Reference the library that defines the iecType. This library must be defined beyond a DriveInfo tag elsewhere in this device description (--&gt; RequiredLib). The value must match the identifier attribute of the library.
annotation
documentation
Type to add structures to the configuration

element StructdefType/Component
diagram
children Default VisibleName Unit Description FilterFlags Custom
attributes
Name Type Use Default Fixed Annotation
identifier xs:NCName required
documentation
The identifier is used to reference the component within its structure. Must be a valid IEC Identifier. The identifier is required to be unique throughout all components of a structure.
type xs:string required
documentation
The type of this component. May be a basetype (eg. std:INT) or any other type that is defined in a Types section. So structs may be nested but not recursively (neither directly nor indirectly).
onlineaccess derived by: xs:string optional readwrite
documentation
OnlineAccess controls the visibility or the access in the online (logged in) mode. If read is set then the parameter is readonly which means it is grayed out and the prepared value column is not accessible
offlineaccess derived by: xs:string optional readwrite
documentation
OnlineAccess controls the visibility or the access in the online (logged in) mode. If read is set then the parameter is readonly which means it is grayed out and the prepared value column is not accessible
annotation
documentation
Each component is one element of the structure or union. The order of components is mapped on the layout of the structure.

element StructdefType/Component/Default
diagram
type | ValueType
children | Element
annotation
documentation
The default value for this component. May be overwritten, when the containing structure is instantiated.

element StructdefType/Component/VisibleName
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
The (localized) name of this component, as it should be presented to the user in the UI.

element StructdefType/Component/Unit
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
The unit of the value. Informational.

element StructdefType/Component/Description
diagram
type StringRefType
attributes
Name Type Use Default Fixed Annotation
name xs:NMTOKEN required
documentation
name is always the specific namespace : unique identifier.
Example:
localStrings:DeviceName
annotation
documentation
A (localized) description of this parameter. May be represented to the user as help text.

element StructdefType/Component/FilterFlags
diagram
type xs:NMTOKENS
annotation
documentation
A comma separated list of filter flags for this parameter. This filter flag can be looked up in the FilterFlags section of the device description.

element StructdefType/Component/Custom
diagram
type CustomType
annotation
documentation
Allows for customer specific extensions to this descrition. Elements below this node are not interpreted by the framework, but are available to specific plugIns.

complexType TypedefType
diagram
attributes
Name Type Use Default Fixed Annotation
name xs:NCName required
documentation
The name that is used to reference this structure.
annotation
documentation
subtype definition

complexType ValueType
diagram
children Element
annotation
documentation
subtype definition

element ValueType/Element
diagram
type | extension of ValueType
children | Element
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:NCName | required |  |  |

simpleType StopResetBehaviourType
type restriction of xs:NMTOKEN
facets
Kind | Value | Annotation
enumeration | KeepCurrentValues |
enumeration | SetToDefault |
enumeration | ExecuteProgram |
annotation
documentation
Default setting for the stop transition of the plc

simpleType UShortBaseN
type union of (restriction of xs:string, xs:unsignedShort)
annotation
documentation
Type for VendorID attribute of Module-&gt;DeviceInfo

element TargetSettings
diagram
children section setting
annotation
documentation
Describes settings that control the codegenerator behaviour for a specific target.

element TargetSettings/section
diagram
type | SectionType
children | section setting
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:string | required |  |  |

element TargetSettings/setting
diagram
type | SettingType
children | value Section Setting
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:string | required |  |  |
type | xs:string | required |  |  |
access | derived by: xs:string | required |  |  |

complexType SectionType
diagram
children section setting
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:string | required |  |  |

element SectionType/section
diagram
type | SectionType
children | section setting
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:string | required |  |  |

element SectionType/setting
diagram
type | SettingType
children | value Section Setting
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:string | required |  |  |
type | xs:string | required |  |  |
access | derived by: xs:string | required |  |  |

complexType SettingType
diagram
children value Section Setting
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:string | required |  |  |
type | xs:string | required |  |  |
access | derived by: xs:string | required |  |  |

element SettingType/value
diagram |
type | xs:string

element SettingType/Section
diagram
type | SectionType
children | section setting
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:string | required |  |  |

element SettingType/Setting
diagram
type | SettingType
children | value Section Setting
attributes
Name | Type | Use | Default | Fixed | Annotation
name | xs:string | required |  |  |
type | xs:string | required |  |  |
access | derived by: xs:string | required |  |  |

XML Schema documentation generated by XMLSpy Schema Editor http://www.altova.com/xmlspy