All data types defined as CDT are mapped to CDT DataTypes or CC DataTypes. Table 20 defines mapping of data types between CCTS and OPC UA.

Table 20 – CDT Data types

CDT

OPC UA

Description

Category

Definition

Amount

CDTAmount

CDT

Clause 6.3.2

Binary Object

CDTBinaryObject

CDT

Clause 6.3.3

Code

CDTCode

CDT

Clause 6.3.4

Date

DateString

CC

Clause 6.2.2

Date Time

CDTDateTime

CDT

OPC 10000-3

Duration

DurationString

CC

Clause 6.2.6

Graphic

CDTGraphic

CDT

Clause 6.3.6

Identifier

CDTIdentifier

CDT

Clause 6.3.7

Indicator

Boolean

CC

OPC 10000-3

Measure

CDTMeasure

CDT

Clause 6.3.7

Name

LocaizedText

Language supplemental is mapped to a “locale” element.

CC

OPC 10000-3

Number

Number

Decimal, Double, Float, Int16, Int32, and Int64 are allowed.

CC

OPC 10000-3

Ordinal

CDTOrdinal

CDT

Clause 6.3.9

Percent

CDTMeasure

Codes according to only percent shall be used. (e.g. “P1”)

CDT

Clause 6.3.7

Picture

CDTPicture

CDT

Clause 6.3.10

Quantity

Number

Decimal, Double, Float, Int16, Int32, and Int64 are allowed.

CC

OPC 10000-3

Rate

CDTRate

CDT

Clause 6.3.11

Ratio

Number

Decimal, Double, Float, Int16, Int32, and Int64 are allowed.

CC

OPC 10000-3

Sound

CDTSound

CDT

Clause 6.3.12

Text

LocalizedText

Language supplemental is mapped to a “locale” element.

CC

OPC 10000-3

Time

TimeString

CC

Clause 6.2.8

Value

BaseDataType

Decimal, Double, Float, Int16, Int32, Int64 or String is allowed. (other Variant types may also be supported)

CC

OPC 10000-3

Video

CDTVideo

CDT

Clause 6.3.13

Semantic of CDT that is mapped to CC DataType may be defined in ObjectTypes or VariableTypes.

The CDTAmountDecimal is a DataType that conforms to Amount type. Table 21 defines the DataTypes.

Table 21 – DataTypes for Amount

The CDTAmountDecimal is a number of monetary units specified in a currency. CDTAmountDecimal type is “used to represent amounts, such as costs, remunerations, and fees” from CCTS. All CC types (integer, float…) are mapped to a decimal value.

Table 22 - CDTAmountDecimal Definition

Content Component data type for Amount

OPC UA CC DataType

OPC UA CDT DataType

Decimal

Decimal

CDTAmountDecimal

Double

Float

Integer

Attribute

Value

BrowseName

CDTAmountDecimal

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the Decimal

HasCDTSupplemental

Variable

Currency

CurrencyCode

PropertyType

Optional

The DataType CDTBinaryObject is a subtype of ByteString that defines CCTS binary data based on MIME type. The CDTBinaryObject type is “used for embedding documents such as Word, PDF and/or engineering documents” from CCTS. CDTBinaryObject is differentiated from its related types - CDTGraphic, CDTPicture, CDTSound, and CDTVideo.

Table 23 - CDTBinaryObject Definition

Attribute

Value

BrowseName

CDTBinaryObject

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the ByteString defined in OPC 10000-3

HasCDTSupplemental

Variable

MIMEContentType

String

PropertyType

Optional

HasCDTSupplemental

Variable

CharacterSet

String

PropertyType

Optional

HasCDTSupplemental

Variable

Encoding

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListAgencyId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListVersionId

String

PropertyType

Optional

HasCDTSupplemental

Variable

CharacterSetListId

String

PropertyType

Optional

HasCDTSupplemental

Variable

CharacterSetListAgencyId

String

PropertyType

Optional

HasCDTSupplemental

Variable

CharacterSetListVersionId

String

PropertyType

Optional

HasCDTSupplemental

Variable

EncodingListId

String

PropertyType

Optional

HasCDTSupplemental

Variable

EncodingListAgencyId

String

PropertyType

Optional

HasCDTSupplemental

Variable

EncodingListVersionId

String

PropertyType

Optional

HasCDTSupplemental

Variable

Filename

String

PropertyType

Optional

MIMEContentType defines the Multipurpose Internet Mail Extensions (MIME) media type of the binary object. This standard recommends use of text code defined in IETF RFC2045, IETF RFC2046 and IETF RFC2047 for the MIME. In this case the MIMEContentType is actually referencing the Content-Type that is defined as part of the MIME type and commonly used as a reference to a specific MIME. The top-level media type is used to declare the general type of data, while the subtype specifies a specific format for that type of data. Thus, a media type of "image/xyz" is enough to tell a user agent that the data is an image, even if the user agent has no knowledge of the specific image format "xyz". Such information can be used, for example, to decide whether or not to show a user the raw data from an unrecognized subtype such an action might be reasonable for unrecognized subtypes of "text", but not for unrecognized subtypes of "image" or "audio".

CharacterSet defines a specific character set of text data if MIME is text. This standard recommends use of text code defined in IANA for the CharacterSet.

Encoding defines an encoding/decoding mechanism of the Binary Object. If contents of the Binary Object are encoded in specific formats, UA Server represents the formats using this supplemental to indicate a code to identify the encoding. Generally, UA Server doesn’t need to encode Binary Objects since the UA Stack always Encodes Messages in the appropriate format defined in OPC 10000-6. This standard recommends the use of text codes defined in IETF RFC2045, IETF RFC2046 and IETF RFC2047 for the Encoding.

MIMEListId represents the identification of a list of codes (refers to the MIMEContentType).

MIMEListAgencyId represents the identification of the agency that manages the code list (refers to the MIMEContentType).

MIMEListVersionId represents the identification of the version of the list of codes (refers to the MIMEContentType).

CharacterSetListId represents the identification of a list of codes (refers to the CharacterSet).

CharacterSetListAgencyId represents the identification of the agency that manages the code list (refers to the CharacterSet).

CharacterSetListVersionId represents the identification of the version of the list of codes (refers to the CharacterSet).

EncodingListId represents the identification of a list of codes (refers to the Encoding).

EncodingListAgencyId represents the identification of the agency that manages the code list (refers to the Encoding).

EncodingListVersionId represents the identification of the version of the list of codes (refers to the Encoding).

Filename defines the recommended file name that can be used to store data. The file name is usually the name of the original data file that is represented in the Binary Object.

The DataType CDTCode is a subtype of String that defines CCTS Code type. The CDTCode Type is a character string (letters, figures or symbols) that for brevity and/or language independence may be used to represent or replace a definitive value or text of an attribute” from CCTS.

OPC UA Client may have the code list as its implementation or OPC UA Server may provide it in an Address Space. OPC UA Application will get symbol of a code from the code list in any case.

Table 24 - CDTCode Definition

Attribute

Value

BrowseName

CDTCode

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the String defined in OPC UA Part3

HasCDTSupplemental

Variable

ListId

String

PropertyType

Optional

HasCDTSupplemental

Variable

ListAgencyId

String

PropertyType

Optional

HasCDTSupplemental

Variable

ListVersionId

String

PropertyType

Optional

ListId represents the identification of a list of codes.

ListAgencyId represents the identification of the agency that manages the code list.

ListVersionId represents the identification of the version of the list of codes.

The DataType CDTDateTime is a subtype of DateTime that defines CCTS DateTime. The DateTime identifies a date and time of day to various common resolutions: year, month, week, day, hour, minute, second, and fraction of second from CCTS and is used to represent a Gregorian calendar date with UTC time.

Table 25 - CDTDateTime Definition

Attribute

Value

BrowseName

CDTDateTime

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the UtcTime defined in OPC 10000-3

HasCDTSupplemental

Variable

Timezone

String

PropertyType

Optional

HasCDTSupplemental

Variable

DaylightSavings

Boolean

PropertyType

Optional

The Timezone can be used to indicate the time zone associated with the data source. The UtcTime value is in GMT and does not have a time zone factor applied. This parameter is provided to allow a client to display the provided time in the time zone that was associated with to original value.

The DaylightSavings can be used to indicate daylights saving if DaylightSavings was in effect when for the given DateTime. The UtcTime value is in GMT and does not have a Timezone factor applied. This parameter is provided to allow a client to display the provided time with the daylight savings time adjustment that was associated with to original value.

The DataType CDTGraphic is a subtype of ByteString that defines CCTS Graphic type. The CDTGraphic type is used to represent binary data and binary files for vector based graphics, such as CAD drawings, diagrams, graphs, mathematical curves and charts from CCTS.

Table 26 – CDTGraphic Definition

Attribute

Value

BrowseName

CDTGraphic

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the ByteString defined in OPC 10000-3

HasCDTSupplemental

Variable

MIMEContentType

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListAgencyId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListVersionId

String

PropertyType

Optional

HasCDTSupplemental

Variable

Filename

String

PropertyType

Optional

MIMEContentType defines the Multipurpose Internet Mail Extensions (MIME) media type of the binary object. For additional information see 6.3.3

MIMEListId represents the identification of a list of codes (refers to the MIMEContentType).

MIMEListAgencyId represents the identification of the agency that manages the code list (refers to the MIMEContentType).

MIMEListVersionId represents the identification of the version of the list of codes (refers to the MIMEContentType).

Filename defines the recommended file name that can be used to store data. The file name is usually the name of the original data file that is represented in the Binary Object.

The DataType CDTIdentifier is a subtype of String that defines CCTS Identifier Type. The CDTIdentifier type is an identifier is a character string used to uniquely identify one instance of an object within an identification scheme that is managed by an agency from CCTS.

Table 27 - CDTIdentifier Definition

Attribute

Value

BrowseName

CDTIdentifier

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the String defined in OPC 10000-3

HasCDTSupplemental

Variable

SchemeId

String

PropertyType

Optional

HasCDTSupplemental

Variable

SchemeVersionId

String

PropertyType

Optional

HasCDTSupplemental

Variable

SchemeAgencyId

String

PropertyType

Optional

SchemeId represent the identification of the identifier scheme.

SchemeVersionId represents the identification of the version of the identifier scheme.

SchemeAgencyId represents the identification of the agency that manages the identifier scheme.

The CDTMeasure is a generic term for DataTypes that conform to the Measure type. The actual DataTypes are defined separately according to each primitive data type of content component. Table 28 defines the DataTypes.

Table 28 - DataTypes according to CDTMeasure

Content Component data type

OPC UA CC DataType

OPC UA CDT DataType

Decimal

Decimal

CDTMeasureDecimal

Double

Double

CDTMeasureDouble

Float

Float

CDTMeasureFloat

Integer

Int16

CDTMeasureInt16

Int32

CDTMeasureInt32

Int64

CDTMeasureInt64

The CDTMeasure is a numeric value determined by measuring an object along with the specified unit of measure. It “is used to represent a kind of physical dimension such as temperature, length, speed, width, weight, volume, latitude of an object. More precisely, it should be used to measure intrinsic or physical properties of an object seen as a whole according to CCTS.

Table 29 - CDTMeasure Definition

Attribute

Value

BrowseName

One of the OPC UA CDT DataType value in Table 28

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the one of the OPC UA CC DataTypes Table 28

HasCDTSupplemental

Variable

Unit

EUInformation

PropertyType

Optional

Unit defines measurement units defined in OPC 10000-8. EUInformation identifies unit by three letters specified in Unit element. This rule is reasonable if code set of Unit is based on UNECE. Otherwise, code shall be set into Display, and Unit shall be set to (-1).

NOTE: OPC 10000-8 defines EUInformation DataType to indicate code of the unit defined in UN/ECE. This standard uses the EUInformation to represent code defined in UN/ECE instead of CDTCode.

The DataType CDTOrdinal is a subtype of Int32 that defines CCTS Ordinal type. It is an assigned mathematical number that represents order or sequence according to CCTS.

Table 30 - CDTOrdinal Definition

Attribute

Value

BrowseName

CDTOrdinal

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the Int32 defined in OPC 10000-3

The DataType CDTPicture is a subtype of Image that defines CCTS Picture type. It is a visual representation of a person, object, or scene in binary notation (octets). It should be used for embedding binary data of pictures such as photos, art, and clip art according to CCTS. If no supplemental data is to be provided it is also acceptable to directly map any CDTPicture data to a subtype of the standard OPC UA Image dataType (ImageBMP, ImageGIF, ImageJPG, ImagePNG).

Table 31 - CDTPicture Definition

Attribute

Value

BrowseName

CDTPicture

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the Image defined in OPC 10000-3

HasCDTSupplemental

Variable

MIMEContentType

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListAgencyId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListVersionId

String

PropertyType

Optional

HasCDTSupplemental

Variable

Filename

String

PropertyType

Optional

The MIMEContentType supplemental property is rarely used, since in most cases the picture binary blob includes header information that includes the MIME information. Most applications can just obtain the information directly from the picture blob

MIMEContentType defines the Multipurpose Internet Mail Extensions (MIME) media type of the binary object. For additional information see 6.3.3

MIMEListId represents the identification of a list of codes (refers to the MIMEContentType).

MIMEListAgencyId represents the identification of the agency that manages the code list (refers to the MIMEContentType).

MIMEListVersionId represents the identification of the version of the list of codes (refers to the MIMEContentType).

Filename defines the recommended file name that can be used to store data. The file name is usually the name of the original data file that is represented in the Binary Object.

The CDTRate is a generic term for DataTypes that conform to the Rate type. The actual DataTypes are defined separately according to each primitive data type of content component. Table 32 defines the DataTypes.

Table 32 - DataTypes according to CDTRate

Content Component data type

OPC UA CC DataType

OPC UA CDT DataType

Decimal

Decimal

CDTRateDecimal

Double

Double

CDTRateDouble

Float

Float

CDTRateFloat

Integer

Integer

CDTRateInt32

The CDTRate is a quantity, amount, frequency, or dimensionless factor, measured against an independent base unit, expressed as a quotient. In addition CCTS describe it is used to represent the numerical quotient resulting from a comparison of two independent things such as a quantity measured with respect to another measured quantity such as a rate of speed, a measure of a part with respect to a whole - a proportion such as the mortality rate, a tax rate, the cost per unit of a commodity or service or a charge or payment calculated in relation to a particular sum or quantity such as interest rates. The quotient is calculated by taking into account the Rate.Multiplier.Value and Rate.Base.Multiplier. Value supplementary components that affect the unit codes used at the numerator and the denominator.

Table 33 - CDTRate Definition

Attribute

Value

BrowseName

One of the OPC UA CDT DataType values in Table 32)

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the CC DataType according to the BrowseName

HasCDTSupplemental

Variable

Multiplier

Double

PropertyType

Optional

HasCDTSupplemental

Variable

Unit

EUInformation

PropertyType

Optional

HasCDTSupplemental

Variable

Currency

CurrencyCode

PropertyType

Optional

HasCDTSupplemental

Variable

BaseMultiplier

Double

PropertyType

Optional

HasCDTSupplemental

Variable

BaseUnit

EUInformation

PropertyType

Optional

HasCDTSupplemental

Variable

BaseCurrency

CurrencyCode

PropertyType

Optional

Multiplier defines multiplier of the numerator. The default value is "1" if the element is omitted.

Unit defines the unit of measure of the numerator. The Unit is represented in EUInformation defined in OPC UA Part8.

Currency defines the currency unit of the numerator.

BaseMultiplier defines multiplier of the denominator. The default value is "1" if the element is omitted.

BaseCurrency defines the currency unit of the denominator BaseUnit defines the unit of measure of the denominator. The BaseUnit is represented in EUInformation defined in OPC UA Part8.

The DataType CDTSound is a subtype of ByteString that defines CCTS Sound type. It is any form of an audio file such as audio recordings in binary notation according to CCTS.

Table 34 - CDTSound Definition

Attribute

Value

BrowseName

CDTSound

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the ByteString defined in OPC 10000-3

HasCDTSupplemental

Variable

MIMEContentType

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListAgencyId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListVersionId

String

PropertyType

Optional

HasCDTSupplemental

Variable

Filename

String

PropertyType

Optional

The MIMEContentType supplemental property is rarely used, since in most cases the sound binary blob includes header information that includes the MIME information. Most applications can just obtain the information directly from the sound blob

MIMEContentType defines the Multipurpose Internet Mail Extensions (MIME) media type of the binary object. For additional information see 6.3.3

MIMEListId represents the identification of a list of codes (refers to the MIMEContentType).

MIMEListAgencyId represents the identification of the agency that manages the code list (refers to the MIMEContentType).

MIMEListVersionId represents the identification of the version of the list of codes (refers to the MIMEContentType).

FileName defines the recommended file name that can be used to store data. The file name is usually the name of the original data file that is represented in the Binary Object.

The DataType CDTVideo is a subtype of ByteString that defines CCTS Video type. It is a recording, reproducing or broadcasting of visual images on magnetic tape or digitally in binary notation.

Table 35 - CDTVideo Definition

Attribute

Value

BrowseName

CDTVideo

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the ByteString defined in OPC 10000-3

HasCDTSupplemental

Variable

MIMEContentType

CDTCode

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListAgencyId

String

PropertyType

Optional

HasCDTSupplemental

Variable

MIMEListVersionId

String

PropertyType

Optional

HasCDTSupplemental

Variable

Filename

String

PropertyType

Optional

The MIMEContentType supplemental property is rarely used, since in most cases the Video blob includes header information that includes the MIME information. Most applications can just obtain the information directly from the Video blob

MIMEContentType defines the Multipurpose Internet Mail Extensions (MIME) media type of the binary object. For additional information see 6.3.3

MIMEListId represents the identification of a list of codes (refers to the MIMEContentType).

MIMEListAgencyId represents the identification of the agency that manages the code list (refers to the MIMEContentType).

MIMEListVersionId represents the identification of the version of the list of codes (refers to the MIMEContentType).

Filename defines the recommended file name that can be used to store data. The file name is usually the name of the original data file that is represented in the Binary Object.