This is a subtype of the UInt32 DataType with the OptionSetValues Property defined. It is used to define the Attribute access restrictions of a Node. The AttributeWriteMask is formally defined in Table 43.
If a bit is set to 0, it means the Attribute is not writeable. If a bit is set to 1, it means it is writeable. If a Node does not support a specific Attribute, the corresponding bit has to be set to 0.
Table 43 – Bit mask for WriteMask and UserWriteMask
Field |
Bit |
Description |
AccessLevel |
0 |
Indicates if the AccessLevel Attribute is writeable. |
ArrayDimensions |
1 |
Indicates if the ArrayDimensions Attribute is writeable. |
BrowseName |
2 |
Indicates if the BrowseName Attribute is writeable. |
ContainsNoLoops |
3 |
Indicates if the ContainsNoLoops Attribute is writeable. |
DataType |
4 |
Indicates if the DataType Attribute is writeable. |
Description |
5 |
Indicates if the Description Attribute is writeable. |
DisplayName |
6 |
Indicates if the DisplayName Attribute is writeable. |
EventNotifier |
7 |
Indicates if the EventNotifier Attribute is writeable. |
Executable |
8 |
Indicates if the Executable Attribute is writeable. |
Historizing |
9 |
Indicates if the Historizing Attribute is writeable. |
InverseName |
10 |
Indicates if the InverseName Attribute is writeable. |
IsAbstract |
11 |
Indicates if the IsAbstract Attribute is writeable. |
MinimumSamplingInterval |
12 |
Indicates if the MinimumSamplingInterval Attribute is writeable. |
NodeClass |
13 |
Indicates if the NodeClass Attribute is writeable. |
NodeId |
14 |
Indicates if the NodeId Attribute is writeable. |
Symmetric |
15 |
Indicates if the Symmetric Attribute is writeable. |
UserAccessLevel |
16 |
Indicates if the UserAccessLevel Attribute is writeable. |
UserExecutable |
17 |
Indicates if the UserExecutable Attribute is writeable. |
UserWriteMask |
18 |
Indicates if the UserWriteMask Attribute is writeable. |
ValueRank |
19 |
Indicates if the ValueRank Attribute is writeable. |
WriteMask |
20 |
Indicates if the WriteMask Attribute is writeable. |
ValueForVariableType |
21 |
Indicates if the Value Attribute is writeable for a VariableType. It does not apply for Variables since this is handled by the AccessLevel and UserAccessLevel Attributes for the Variable. For Variables this bit shall be set to 0. |
DataTypeDefinition |
22 |
Indicates if the DataTypeDefinition Attribute is writeable. |
RolePermissions |
23 |
Indicates if the RolePermissions Attribute is writeable. |
AccessRestrictions |
24 |
Indicates if the AccessRestrictions Attribute is writeable. |
AccessLevelEx |
25 |
Indicates if the AccessLevelEx Attribute is writeable. |
Reserved |
26:31 |
Reserved for future use. Shall always be zero. |