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.