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 38.

Table 38 – 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.

This bit affects the HistoryRead bit of the UserAccessLevel Attribute.

This Permission is only valid for Variables, Objects or Views.

InsertHistory

8

The Client is allowed to insert the history associated with a Node.

This bit affects the HistoryWrite bit of the UserAccessLevel Attribute.

This Permission is only valid for Variables, Objects or Views.

ModifyHistory

9

The Client is allowed to modify the history associated with a Node.

This bit affects the HistoryWrite bit of the UserAccessLevel Attribute.

This Permission is only valid for Variables, Objects or Views.

DeleteHistory

10

The Client is allowed to delete the history associated with a Node.

This bit affects the HistoryWrite bit of the UserAccessLevel Attribute.

This Permission is only valid for Variables, Objects or Views.

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.