This is a subtype of the UInt32 DataType with the OptionSetValues Property defined. It is used to define the permissions of a Node. The PermissionType is formally defined in Table 37.
Table 37 – PermissionType Definition
Name |
Bit |
Description |
Browse |
0 |
The Client is allowed to see the references to and from the Node. This implies that the Client is able to Read to Attributes other than the Value or the RolePermissions Attribute. This Permission is valid for all NodeClasses. |
ReadRolePermissions |
1 |
The Client is allowed to read the RolePermissions Attribute. This Permission is valid for all NodeClasses. |
WriteAttribute |
2 |
The Client is allowed to write to Attributes other than the Value, Historizing or RolePermissions Attribute if the WriteMask indicates that the Attribute is writeable. This bit affects the value of a UserWriteMask Attribute. This Permission is valid for all NodeClasses. |
WriteRolePermissions |
3 |
The Client is allowed to write to the RolePermissions Attribute if the WriteMask indicates that the Attribute is writeable. This bit affects the value of the UserWriteMask Attribute. This Permission is valid for all NodeClasses. |
WriteHistorizing |
4 |
The Client is allowed to write to the Historizing Attributes if the WriteMask indicates that the Attribute is writeable. This bit affects the value of the UserWriteMask Attribute. This Permission is only valid for Variables. |
Read |
5 |
The Client is allowed to read the Value Attribute. This bit affects the CurrentRead bit of the UserAccessLevel Attribute. This Permission is only valid for Variables. |
Write |
6 |
The Client is allowed to write the Value Attribute. This bit affects the CurrentWrite bit of the UserAccessLevel Attribute. This Permission is only valid for Variables. |
ReadHistory |
7 |
The Client is allowed to read the history associated with a Node. For Variables, this bit affects the HistoryRead bit of the UserAccessLevel Attribute. This Permission is only valid for Variables (for reading historical values), and Objects or Views (for reading historical events). |
InsertHistory |
8 |
The Client is allowed to insert the history associated with a Node. For Variables, this bit affects the HistoryWrite bit of the UserAccessLevel Attribute. This Permission is only valid for Variables (for inserting historical values), and Objects or Views (for inserting historical events). |
ModifyHistory |
9 |
The Client is allowed to modify the history associated with a Node. For Variables, this bit affects the HistoryWrite bit of the UserAccessLevel Attribute. This Permission is only valid for Variables (for modifying historical values), and Objects or Views (for modifying historical events). |
DeleteHistory |
10 |
The Client is allowed to delete the history associated with a Node. For Variables, this bit affects the HistoryWrite bit of the UserAccessLevel Attribute. This Permission is only valid for Variables (for deleting historical values), and Objects or Views (for deleting historical events). |
ReceiveEvents |
11 |
A Client only receives an Event if this bit is set on the Node identified by the EventTypeId field and on the Node identified by the SourceNode field. This Permission is only valid for EventType Nodes or SourceNodes. |
Call |
12 |
The Client is allowed to call the Method if this bit is set on the Object or ObjectType Node passed in the Call request and the Method Instance associated with that Object or ObjectType. This bit affects the UserExecutable Attribute when set on Method Node. This Permission is only valid for Objects, ObjectType or Methods. |
AddReference |
13 |
The Client is allowed to add references to the Node. This Permission is valid for all NodeClasses. |
RemoveReference |
14 |
The Client is allowed to remove references from the Node. This Permission is valid for all NodeClasses. |
DeleteNode |
15 |
The Client is allowed to delete the Node. This Permission is valid for all NodeClasses. |
AddNode |
16 |
The Client is allowed to add Nodes to the Namespace. This Permission is only used in the DefaultRolePermissions and DefaultUserRolePermissions Properties of a NamespaceMetadata Object |
Reserved |
17-31 |
These bits are reserved for use by OPC UA. |