If quality data is provided (see GsdGenIoChannelQualityType), the Server shall set the StatusCode member of the DataValue structures returned by the Read Service and the Publish Service consistent with the content of the quality data when returning the Value of GsdGenIoDataItemVariableType Variables representing IO Data.

The quality data format is specified by the Value of the Format Property of the GsdGenIoChannelQualityType Object. Dependent on the quality data format, the Server shall set the StatusCodes as specified in Table 16.

Table 16 – StatusCode Requirements

Format Property Value

StatusCode

QUALIFIER

Set StatusCode as defined in [OPC RIO], sec. 6.8.2 Table 16 “RIOforFA StatusCodes”

EMBEDDED_STATUS

Set StatusCode as defined in [RIOforPA] sec. 4.1 “Status Information”, see Table 17 also.

STATUS

Set StatusCode as defined in [OPC RIO], sec. 6.8.1.2 Table 14 “Condensed status with detailed information”

If the “DataType” attribute of the “DataItem” element (see [GSDML]) specifies a data type with embedded status bits (see Table 58, “Unsigned16_S”, “Integer16_S”, “Unsigned8_S”, “OctetString_S”), the Server shall set the StatusCode according to Table 17. The Value of the representing Variable in the Information Model shall not contain the status bits.

Table 17 – StatusCodes for embedded status bits

Status Bits

StatusCode

00 (‘B’)

Bad (0x80000000)

01 (‘S’)

GoodEdited (0x00DC0000)

10 (‘U’)

Uncertain (0x40000000)

11 (‘G’)

Good (0x00000000)