A TranslationType contains additional translations for LocalizedTexts used in the Value of a Variable. The fields in the TranslationType are defined in Table F.10. If multiple Arguments existed there would be a Translation element for each Argument.

The type can have two forms depending on whether the Value is a LocalizedText or a Structure containing LocalizedTexts. If it is a LocalizedText is contains a simple list of translations. If it is a Structure, it contains a list of fields which each contain a list of translations. Each field is identified by a Name which is unique within the structure. The mapping between the Name and the Structure requires an understanding of the Structure encoding. If the Structure field is encoded as a LocalizedText with UA XML, then the name is the unqualified path to the XML element where names in the path are separated by ‘/’. For example, a structure with a nested structure containing a LocalizedText could have a path like “Server/ApplicationName”.

The following example illustrates how translations for the Description field in the Argument Structure are represented in XML:

<Value>

<ListOfExtensionObject xmlns="http://opcfoundation.org/UA/2008/02/Types.xsd">

<ExtensionObject>

<TypeId>

<Identifier>i=297</Identifier>

</TypeId>

<Body>

<Argument>

<Name>ConfigData</Name>

<DataType>

<Identifier>i=15</Identifier>

</DataType>

<ValueRank>-1</ValueRank>

<ArrayDimensions />

<Description>

<Text>[English Translation for Description]</Text>

</Description>

</Argument>

</Body>

</ExtensionObject>

</ListOfExtensionObject>

</Value>

<Translation>

<Field Name="Description">

<Text Locale="de-DE">[German Translation for Description]</Text>

<Text Locale="fr-FR">[French Translation for Description]</Text>

</Field>

</Translation>

If multiple Arguments existed there would be a Translation element for each Argument.

Table F.10 – TranslationType

Element

Type

Description

Text

LocalizedText []

An array of translations for the Value.

It only appears if the Value is a LocalizedText or an array of LocalizedText.

Field

StructureTranslationType []

An array of structure fields which have translations.

It only appears if the Value is a Structure or an array of Structures.

Name

String

The name of the field.

This uniquely identifies the field within the structure.

The exact mapping depends on the encoding of the structure.

Text

LocalizedText []

An array of translations for the structure field.