D.3 Alias Update Header Layout
D.3.1 Overview
This layout is specially configured for AliasName update messages. For additional detail on PubSub and header layouts see OPC 10000-14.
D.3.2 Header layout for NetworkMessages
A UADP NetworkMessage header shall consist of the following fields according to this header layout:
Version / Flags
ExtendedFlags1
PublisherId
DataSetClassId
Additional restrictions:
The datatype for the PublisherId shall be UInt64
The NetworkMessage header layout is shown in Figure D.2.

Table D.5 shows the configuration for the NetworkMessage header.
| Name | Type | Restrictions |
| UADPVersion | Bit[0-3] | The version shall be 1 |
| UADPFlags | Bit[4-7] | Bit 4: PublisherId enabled = 1 Bit 5: GroupHeader enabled = 0 Bit 6: PayloadHeader enabled = 0 Bit 7: ExtendedFlags1 enabled = 1 |
| ExtendedFlags1 | Byte | Bit range 0-2: PublisherId Type 011 The PublisherId is of DataType UInt64 Bit 3: DataSetClassId enabled = 1 Bit 4: SecurityHeader enabled configurable (default=1) Bit 5: Timestamp enabled = 0 Bit 6: PicoSeconds enabled = 0 Bit 7: ExtendedFlags2 enabled = 0 |
| PublisherId | UInt64 | Configured value for the PubSubConnection. The datatype shall be UInt64. |
| DataSetClassId | Guid | The DataSetClassId associated with the DataSets in the NetworkMessage. All DataSetMessages in the NetworkMessage shall have the same DataSetClassId. – It shall be 65880051-7e5b-4a96-ae47-e0ef4704b924 |
D.3.3 Header layout for NetworkMessages with integrity (signing)
UADP messages may be signed to ensure integrity. In this case a security header and a signature have to be added to the message.
This header layout is basically the same as the header layout defined in D.3.2 but with additional security level ‘Signing but no encryption’. The NetworkMessage header layout with signing is shown in Figure D.3

Table D.6 shows the configuration for the NetworkMessage header with signing. The table contains only the added or modified rows from Table D.5.
| Name | Type | Restrictions |
| ExtendedFlags1 | Byte | Bit 4: SecurityHeader enabled = 1 |
| SecurityHeader | ||
SecurityFlags | Byte | Bit 0: NetworkMessage Signed enabled = 1 Bit 1: NetworkMessage Encryption enabled = 0 Bit 2: SecurityFooter enabled = 0 Bit 3: Force key reset enabled = 0 Bit range 4-7: Reserved |
SecurityTokenId | IntegerId | The ID of the security token that identifies the security key in a SecurityGroup. |
NonceLength | Byte | The length of the Nonce used to initialize the encryption algorithm. |
MessageNonce | Byte[NonceLength] | A number used exactly once for a given security key. |
D.3.4 Header layout for DataSetMessages
A UADP DataSetMessage header shall consist of the following fields according to this header layout:
DataSetFlags1
DataSetFlags2
Additional remarks:
Field is encoded as a Variant
The following types of DataSetMessages (Data Key Frame, Data Delta Frame, Keep Alive, etc.) are supported
The DataSetMessage header layout is shown in Figure D.4.

Table D.7 shows the configuration for the DataSetMessage header.
| Name | Type | Description |
| DataSetFlags1 | Byte | Bit 0: Indicates whether this DataSetMessage is valid Bit range 1-2: Field Encoding 00 - Variant Bit 4: Status enabled = 0 Bit 5: ConfigurationVersionMajorVersion enabled = 0 Bit 6: ConfigurationVersionMinorVersion enabled = 0 Bit 7: DataSetFlags2 enabled = 1 |
| DataSetFlags2 | Byte | Bit range 0-3: UADP DataSetMessage type Shall be 0000 for a Data Key Frame Shall be 0001 for a Data Delta Frame Shall be 0011 for a Keep Alive Bit 4: Timestamp enabled = 0 Bit 5: PicoSeconds enabled = 0 (not included in the DataSetMessage header) |
For a description of Data KeyFrame, Data Delta Frames and Keep Alive see OPC 10000-14.