UnifiedAutomation.UaServer Calculates the value of an aggregate. Creates a default aggregator. Initializes the calculation stream. The aggregate function to apply. The start time. The end time. The processing interval. Whether to use stepped interpolation. The aggregate configuration. Initializes the calculation stream. The aggregate function to apply. The start time. The end time. The processing interval. Whether to use stepped interpolation. The aggregate configuration. The aggregate function applied by the calculator. Queues a raw value for processing. The data value to process. True if successful, false if the timestamp has been superceeded by values already in the stream. Returns the next processed value. If true a partial interval should be processed. The processed value. Null if nothing available and returnPartial is false. Returns true if the specified time is later than the end of the current interval. Return true if time flows forward and the time is later than the end time. The start time for the request. The end time for the request. The processing interval for the request. True if the data series requires stepped interpolation. The configuration to use when processing. Whether to use the server timestamp for all processing. True if data is being processed in reverse order. Whether to use the server timestamp for all processing. True if all values required for the request have been received and processed True if the GetProcessedValue method should set the Partial bit when appropriate. True if data is extrapolated after the end of data. Compares timestamps for two DataValues according to the current UseServerTimestamp setting. The first value to compare. The second value to compare. Less than 0 if value1 is earlier than value2; 0 if they are equal; Greater than zero otherwise. Compares timestamps for two DataValues according to the current UseServerTimestamp setting. The first value to compare. The second value to compare. Less than 0 if value1 is earlier than value2; 0 if they are equal; Greater than zero otherwise. Compares timestamps for two DataValues according to the current UseServerTimestamp setting. The first value to compare. The second value to compare. Less than 0 if value1 is earlier than value2; 0 if they are equal; Greater than zero otherwise. Compares timestamps for a timestamp to a DataValue according to the current UseServerTimestamp setting. The timestamp to compare. The data value to compare. Less than 0 if value1 is earlier than value2; 0 if they are equal; Greater than zero otherwise. Checks if the value is good according to the configuration rules. The value to test. True if the value is good. Stores information about a slice of data to be processed. The start time for the slice. The end time for the slice. True if the slice is a partial interval. True if all of the data required to process the slice has been collected. True if the slice includes times that are outside of the available dataset. The first early bound for the slice. The second early bound for the slice (always earlier than the first). The beginning of the slice. The end of the slice. The late bound for the slice. The last value which was processed. Creates a new time slice to process. The previous processed slice. The new time slice. Creates a new time slice to process. The slice to update. True if the slice is complete. Calculates the value for the timeslice. The slice to process. The processed value. Calculate the interpolate aggregate for the timeslice. Return a value indicating there is no data in the time slice. Returns the timestamp to use for the slice value. Return a value indicating there is no data in the time slice. Interpolates a value at the timestamp. The timestamp. The timeslice that contains the timestamp. The interpolated value. Calculate the value at the timestamp using slopped interpolation. Calculate the value at the timestamp using slopped interpolation. Converts the value to a double for use in calculations (throws exceptions if conversion fails). Converts the value back to its original type (throws exceptions if conversion fails). Returns the simple bound for the timestamp. Returns the values in the list with simple bounds. Returns the values between the start time and the end time for the slice. Returns the values in the list with interpolated bounds. A subset of a slice bounded by two raw data points. The value at the start of the region. The value at the end of the region. The timestamp at the start of the region. The length of the region. The status for the region. The data point at the start of the region. Returns the values in the list with simple bounds. Calculates the value based status code for the slice Calculates the status code for the slice Calculates the status code for the slice An object that manages aggregate factories supported by the server. Initilizes the manager. Frees any unmanaged resources. An overrideable version of the Dispose. Checks if the aggregate is supported by the server. The id of the aggregate function. True if the aggregate is supported. The minimum processing interval for any aggregate calculation. Returns the default configuration for the specified variable id. The id of history data node. The configuration. Sets the default aggregate configuration. The default aggregate configuration. Creates a new aggregate calculator. The id of the aggregate function. When to start processing. When to stop processing. The processing interval. Whether stepped interpolation should be used. The configuaration to use. Registers an aggregate factory. The id of the aggregate function. The factory used to create calculators. Unregisters an aggregate factory. The id of the aggregate function. Creates a new instance of an aggregate factory. The set of built-in aggregate factories. Stores the mapping for a aggregate id to the calculator. Mapping for all of the standard aggregates. Returns the name for a standard aggregates. Returns the id for a standard aggregates. Creates a calculator for one of the standard aggregates. Calculates the value of an aggregate. Initializes the aggregate calculator. The aggregate function to apply. The start time. The end time. The processing interval. Whether to use stepped interpolation. The aggregate configuration. Computes the value for the timeslice. Calculates the RegSlope, RegConst and RegStdDev aggregates for the timeslice. Calculates the StdDev, Variance, StdDev2 and Variance2 aggregates for the timeslice. Calculates the value of an aggregate. Initializes the aggregate calculator. The aggregate function to apply. The start time. The end time. The processing interval. Whether to use stepped interpolation. The aggregate configuration. Computes the value for the timeslice. Calculates the Count aggregate for the timeslice. Calculates the AnnotationCount aggregate for the timeslice. Calculates the DurationInStateZero and DurationInStateNonZero aggregates for the timeslice. Calculates the Count aggregate for the timeslice. An interface that captures the original active API of the AggregateCalculator class required to integrate with the subscription code. The aggregate function applied by the calculator. Pushes the next raw value into the stream. The data value to append to the stream. True if successful, false if the source timestamp has been superceeded by values already in the stream. Returns the next processed value. If true a partial interval should be processed. The processed value. Null if nothing available and returnPartial is false. Returns true if the specified time is later than the end of the current interval. Return true if time flows forward and the time is later than the end time. Calculates the value of an aggregate. Initializes the aggregate calculator. The aggregate function to apply. The start time. The end time. The processing interval. Whether to use stepped interpolation. The aggregate configuration. Computes the value for the timeslice. Calculate the Minimum, Maximum, MinimumActualTime and MaximumActualTime aggregates for the timeslice. Calculate the Minimum2, Maximum2, MinimumActualTime2, MaximumActualTime2 and Range2 aggregates for the timeslice. A aggregate filter with additional state information. Whether the variable requires stepped interpolation. Calculates the value of an aggregate. Initializes the aggregate calculator. The aggregate function to apply. The start time. The end time. The processing interval. Whether to use stepped interpolation. The aggregate configuration. Computes the value for the timeslice. Calculate the Start and End aggregates for the timeslice. Calculates the Delta aggregate for the timeslice. Calculate the Start2 and End2 aggregates for the timeslice. Calculates the Delta2 aggregate for the timeslice. Calculates the value of an aggregate. Initializes the aggregate calculator. The aggregate function to apply. The start time. The end time. The processing interval. Whether to use stepped interpolation. The aggregate configuration. Computes the value for the timeslice. Calculates the DurationGood and DurationBad aggregates for the timeslice. Calculates the DurationGood and DurationBad aggregates for the timeslice. Calculates the value of an aggregate. Initializes the aggregate calculator. The aggregate function to apply. The start time. The end time. The processing interval. Whether to use stepped interpolation. The aggregate configuration. Computes the value for the timeslice. Calculates the RegSlope, RegConst and RegStdDev aggregates for the timeslice. Calculates the StdDev, Variance, StdDev2 and Variance2 aggregates for the timeslice. The continuation point for a browse operation. Initializes the object with default values. Frees any unmanaged resources. An overrideable version of the Dispose. A unique identifier for the continuation point. Gets or sets the node manager. The node manager. Gets or sets the browse handle. The browse handle. Gets or sets the view handle. The view handle. Gets or sets the settings. The settings. Gets or sets the max references per node. The max references per node. Gets or sets the starting reference count. The starting reference count. Gets or sets the target name (specified when translating a browse path). The target name. Gets or sets the stage (used by the entity that created the continuation point). The stage. Node manager specific data that is necessary to continue the browse. A node manager needs to hold onto unmanaged resources to continue the browse. If this is the case then the object stored here must implement the Idispose interface. This will ensure the unmanaged resources are freed if the continuation point expires. Gets or sets any unprocessed references. The unprocessed references. Determines whether [is reference selected] [the specified candidate reference type id]. The request context. The reference type id. Set to true if the reference is an inverse reference. true if [is reference selected] [the specified candidate reference type id]; otherwise, false. Checks if the current node meets the filter criteria for the browse operation. The browse name of the node. The node class of the node. True if the reference should be included in the result set. Checks the max references per node and returns a new continuation point if reached. The type of ContinuationPoint to create. The new continuation point if browsing must stop. null otherwise. A continuation point for a query operation. Initializes the object with default values. Frees any unmanaged resources. An overrideable version of the Dispose. A unique identifier for the continuation point. Gets the query manager. The query manager. Gets or sets the query handle. The query handle. Gets or sets the view handle. The view handle. Gets or sets the node type descriptions for the query. The node type descriptions for the query. Gets or sets the content filter. The content filter. Gets or sets the maximum datasets to return. The maximum datasets to return.. Gets or sets maximum references to return. The starting reference count. Gets or sets the stage (used by the entity that created the continuation point). The stage. Node manager specific data that is necessary to continue the query. A node manager needs to hold onto unmanaged resources to continue the query. If this is the case then the object stored here must implement the IDispose interface. This will ensure the unmanaged resources are freed if the continuation point expires. Gets or sets any unprocessed datasets. The unprocessed datasets. A type used for objects which represent certificate groups in the address space. A certificate group is a context that contains a trust list and one or more certificate s that can be assigned to an application. This type exists to allow an application which has multiple trust lists and/or application certificate s to express them in its AddressSpace. The TrustList object is the trust list associated with the certificate group. Gets or sets the group. The group. Initializes a new instance of the class. Initializes a new instance of the class. The template. Specifies the NodeIds of the CertificateTypes which may be assigned to applications which belong to the certificate group. For example, a certificate group with the NodeId of and the NodeId RsaSha256ApplicationCertificate specified allows an application to have one ApplicationInstance certificate for each type. Abstract base types may be used in this value and indicate that any subtype is allowed. If this list is empty, the certificate group does not allow certificate s to be assigned to applications (i.e. the Certificate Group exists to allow the associated trust list to be read or updated). All CertificateTypes for a given certificate group shall be subtypes of a single common type which shall be either or . The trust list associated with the certificate group. The ConditionType defines all general characteristics of a Condition. All other ConditionTypes derive from it. The FALSE state of the EnabledState shall not be extended with a substate machine. The ConditionType inherits all Properties of the BaseEventType. SourceNode identifies the ConditionSource. If the ConditionSource is not a Node in the AddressSpace, the NodeId is set to null. The SourceNode is the Node which the condition is associated with, it may be the same as the InputNode for an alarm, but it may be a separate node. For example, a motor which is a variable with a value that is an RPM may be the ConditionSource for Conditions that are related to the motor, as well as a temperature sensor associated with the motor. In the former, the InputNode for the High RPM alarm is the value of the Motor RPM, while in the later the InputNode of the High Alarm would be the value of the temperature sensor that is associated with the motor. Events are only generated for Conditions that have their Retain field set to true. The NodeId of the Condition instance is used as ConditionId. It is not explicitly modelled as a component of the ConditionType. However, it can be requested with the following SimpleAttributeOperand in the SelectClause of the EventFilter: Name | Type | Description -------------|---------------|---------------------------------- typeId | NodeId | NodeId of the ConditionType Node browsePath[] | QualifiedName | empty attributeId | IntegerId | Id of the NodeId Attribute Changes a Condition instance to the Disabled state. Normally, the MethodId passed to the Call Service is found by browsing the Condition instance in the AddressSpace. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall allow Clients to call the Disable Method by specifying ConditionId as the ObjectId and the well known NodeId of the Method declaration on the ConditionType as the MethodId. Method result codes: ResultCode | Description ------------------------------|---------------------------------------------- Bad_ConditionAlreadyDisabled | The addressed Condition is already disabled. Change a Condition instance to the enabled state. Normally, the MethodId passed to the Call Service is found by browsing the Condition instance in the AddressSpace. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall allow Clients to call the Enable Method by specifying ConditionId as the ObjectId and the well known NodeId of the Method declaration on the ConditionType as the MethodId. Method result codes: ResultCode | Description -----------------------------|--------------------------------------------- Bad_ConditionAlreadyEnabled | The addressed Condition is already enabled. Applies a comment to a specific state of a Condition instance. Normally, the MethodId passed to the Call Service is found by browsing the Condition instance in the AddressSpace. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall allow Clients to call the AddComment Method by specifying ConditionId as the ObjectId and the well known NodeId of the Method declaration on the ConditionType as the MethodId. The Method cannot be called on the ConditionType Node. Method result codes: ResultCode | Description --------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Bad_MethodInvalid | The method id does not refer to a method for the specified object. The addressed Condition does not support adding comments. Bad_EventIdUnknown | The specified EventId is not known to the Server. Bad_NodeIdUnknown | The node id refers to a node that does not exist in the server address space. Used to indicate that the specified Condition is not valid or that the Method was called on the ConditionType Node. The identifier for the event to comment. The comment to add to the condition. Updates the effect display name for the enabled state. Initializes a new instance of the class. Initializes a new instance of the class. The template. BranchId is Null for all Event Notifications that relate to the current state of the Condition instance. If BranchId is not Null it identifies a previous state of this Condition instance that still needs attention by an Operator. If the current ConditionBranch is transformed into a previous ConditionBranch then the Server needs to assign a non-null BranchId. An initial Event for the branch will be generated with the values of the ConditionBranch and the new BranchId. The ConditionBranch can be updated many times before it is no longer needed. When the ConditionBranch no longer requires Operator input the final Event will have Retain set to FALSE. The retain bit on the current Event is TRUE, as long as any ConditionBranches require Operator input. The BranchId DataType is NodeId although the Server is not required to have ConditionBranches in the Address Space. The use of a NodeId allows the Server to use simple numeric identifiers, strings or arrays of bytes. \todo Text of Clause 4.4 is short: Some systems require that previous states of a Condition are preserved for some time. A common use case is the acknowledgement process. In certain environments it is required to acknowledge both the transition into Active state and the transition into an inactive state. Systems with strict safety rules sometimes require that every transition into Active state has to be acknowledged. In situations where state changes occur in short succession there can be multiple unacknowledged states and the Server has to maintain ConditionBranches for all previous unacknowledged states. These branches will be deleted after they have been acknowledged or if they reached their final state. Multiple ConditionBranches can also be used for other use cases where snapshots of previous states of a Condition require additional actions. \todo"Annex B.1 for an example using branches" Is related to the Comment field and contains the identity of the user who inserted the most recent Comment. The logic to obtain the ClientUserId is defined in Part 5 of the OPC UA Specification. Contains the last comment provided for a certain state (ConditionBranch). It may have been provided by an AddComment method, some other method or in some other manner. The initial value of this Variable is null, unless it is provided in some other manner. If a method provides as an option the ability to set a Comment, then the value of this Variable is reset to null if an optional comment is not provided. Specifies in which domain this Condition is used. It is the NodeId of the corresponding ConditionClassType. When using this Property for filtering, Clients have to specify all individual ConditionClassType NodeIds. The OfType operator cannot be applied. BaseConditionClassType is used as class whenever a Condition cannot be assigned to a more concrete class. ConditionClassName provides the display name of the ConditionClassType. Identifies the Condition instance that the Event originated from. It can be used together with the SourceName in a user display to distinguish between different Condition instances. If a ConditionSource has only one instance of a ConditionType, and the Server has no instance name, the Server shall supply the ConditionType browse name. Gets or sets the ConditionSubClassId Gets or sets the ConditionSubClassName EnabledState indicates whether the Condition is enabled. EnabledState/Id is TRUE if enabled, FALSE otherwise. EnabledState/TransitionTime defines when the EnabledState last changed. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|------------------|----------------- en | Disabled | Enabled de | Ausgeschaltet | Eingeschaltet fr | Hors Service | En Service A Condition’s EnabledState effects the generation of Event Notifications and as such results in the following specific behaviour: - When the Condition instance enters the Disabled state, the Retain Property of this Condition shall be set to FALSE by the Server to indicate to the Client that the Condition instance is currently not of interest to Clients. - When the Condition instance enters the enabled state, the Condition shall be evaluated and all of its Properties updated to reflect the current values. If this evaluation causes the Retain Property to transition to TRUE for any ConditionBranch, then an Event Notification shall be generated for that ConditionBranch. - The Server may choose to continue to test for a Condition instance while it is Disabled. However, no Event Notifications will be generated while the Condition instance is disabled. - For any Condition that exists in the AddressSpace the Attributes and the following Variables will continue to have valid values even in the Disabled state: EventId, Event Type, Source Node, Source Name, Time, and EnabledState. Other properties may no longer provide current valid values. All Variables that are no longer provided shall return a status of Bad_ConditionDisabled. The Event that reports the Disabled state should report the properties as NULL or with a status of Bad_ConditionDisabled. When enabled, changes to the following components shall cause a ConditionType Event Notification: - Quality - Severity (inherited from BaseEventType) - Comment This may not be the complete list. Subtypes may define additional Variables that trigger Event Notifications. In general changes to Variables of the types TwoStateVariableType or ConditionVariableType trigger Event Notifications. Provides the previous severity of the ConditionBranch. Initially this Variable contains a zero value; it will return a value only after a severity change. The new severity is supplied via the Severity Property which is inherited from the BaseEventType. Reveals the status of process values or other resources that this Condition instance is based upon. If, for example, a process value is “Uncertain”, the associated “LevelAlarm” Condition is also questionable. Values for the Quality can be any of the OPC StatusCodes defined in Part 8 of the OPC UA Specification as well as Good, Uncertain and Bad as defined in Part 4 of the OPC UA Specification. These StatusCodes are similar to but slightly more generic than the description of data quality in the various field bus Specifications. It is the responsibility of the Server to map internal status information to these codes. A Server which supports no quality information shall return Good. This quality can also reflect the communication status associated with the system that this value or resource is based on and from which this Alarm was received. For communication errors to the underlying system, especially those that result in some unavailable Event fields, the quality shall be Bad_NoCommunication error. Retain when TRUE describes a Condition (or ConditionBranch) as being in a state that is interesting for a Client wishing to synchronize its state with the Server’s state. The logic to determine how this flag is set is Server specific. Typically all Active Alarms would have the Retain flag set; however, it is also possible for inactive Alarms to have their Retain flag set to TRUE. In normal processing, when a Client receives an Event with the Retain flag set to FALSE, the Client should consider this as a ConditionBranch that is no longer of interest, in the case of a “current Alarm display” the ConditionBranch would be removed from the display. Updates the event. The event to update. A class of handle values used by the class. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the Condition methods. The Condition methods. Extends the ConditionType by defining acknowledgement characteristics. It is an abstract type. The AcknowledgeableConditionType inherits all Properties of the ConditionType. AcknowledgeableConditions expose states to indicate whether a Condition has to be acknowledged or confirmed. The Confirmed Acknowledge model is typically used to differentiate between acknowledging the presence of a Condition and having done something to address the Condition. For example an Operator receiving a motor high temperature Notification calls the Acknowledge method to inform the Server that the high temperature has been observed. The Operator then takes some action such as lowering the load on the motor in order to reduce the temperature. The Operator then calls the Confirm method to inform the Server that a corrective action has been taken. AckedState when FALSE indicates that the Condition instance requires acknowledgement for the reported Condition state. When the Condition instance is acknowledged the AckedState is set to TRUE. ConfirmedState indicates whether it requires confirmation. The two states are substates of the TRUE EnabledState. The EventId used in the Event Notification is considered the identifier of this state and has to be used when calling the methods for acknowledgement or confirmation. A Server may require that previous states be acknowledged. If the acknowledgement of a previous state is still open and a new state also requires acknowledgement, the Server shall create a branch of the Condition instance. In situations where state changes occur in short succession there can be multiple unacknowledged states and the Server has to maintain ConditionBranches for all previous unacknowledged states. These branches will be deleted after they have been acknowledged or if they reached their final state. Clients are expected to keep track of all ConditionBranches where AckedState is FALSE to allow acknowledgement of those. See also for more information about ConditionBranches and the examples in Annex B.1 of Part 9 of the OPC UA Specification. The handling of the AckedState and branches also applies to the ConfirmState. Acknowledges an Event Notification for a Condition instance state where AckedState was set to FALSE. Normally, the MethodId passed to the Call Service is found by browsing the Condition instance in the AddressSpace. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall allow Clients to call the Acknowledge Method by specifying ConditionId as the ObjectId and the well known NodeId of the Method declaration on the AcknowledgeableConditionType as the MethodId. The Method cannot be called on the AcknowledgeableConditionType Node. ResultCode | Description ---------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Bad_ConditionBranchAlreadyAcked | The EventId does not refer to a state that needs acknowledgement. Bad_EventIdUnknown | The specified EventId is not known to the Server. Bad_NodeIdUnknown | The node id refers to a node that does not exist in the server address space. Used to indicate that the specified Condition is not valid or that the Method was called on the ConditionType Node. EventId identifying a particular Event Notification. Only Event Notifications where AckedState/Id was FALSE can be acknowledged. A localized text to be applied to the Condition. Confirms an Event Notification for a Condition instance state where ConfirmedState was set to FALSE. Normally, the MethodId passed to the Call Service is found by browsing the Condition instance in the AddressSpace. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall allow Clients to call the Confirm Method by specifying ConditionId as the ObjectId and the well known NodeId of the Method declaration on the AcknowledgeableConditionType as the MethodId. The Method cannot be called on the AcknowledgeableConditionType Node. Method result codes: ResultCode | Description -------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Bad_ConditionBranchAlreadyConfirmed | The EventId does not refer to a state that needs confirmation. Bad_EventIdUnknown | The specified EventId is not known to the Server. Bad_NodeIdUnknown | The node id refers to a node that does not exist in the server address space. Used to indicate that the specified Condition is not valid or that the Method was called on the ConditionType Node. EventId identifying a particular Event Notification. Only Event Notifications where ConfirmedState/Id was TRUE can be confirmed. A localized text to be applied to the Conditions. Sets the state to unacknownledged and unconfirmed. Updates the effect display name for the enabled state. Initializes a new instance of the class. Initializes a new instance of the class. The template. AckedState when FALSE indicates that the Condition instance requires acknowledgement for the reported Condition state. When the Condition instance is acknowledged the AckedState is set to TRUE. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|------------------|----------------- en | Unacknowledged | Acknowledged de | Unquittiert | Quittiert fr | Non-acquitté | Acquitté Indicates whether the Condition requires confirmation. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|------------------|----------------- en | Unconfirmed | Confirmed de | Unbestätigt | Bestätigt fr | Non-Confirmé | Confirmé Gets or sets the EnabledState Updates the event. The event to update. A class of handle values used by the class. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. An abstract type that extends the AcknowledgeableConditionType by introducing an ActiveState, SuppressedState and ShelvingState. The AlarmConditionType inherits all Properties of the AcknowledgeableConditionType. The following states are substates of the TRUE EnabledState. Shelves an alarm. Shelves an alarm for the specified time. Unshelves an alarm. Suppresses an alarm. Activates an alarm Updates the effect display name for the enabled state. Updates the effective display name for the active state. Initializes a new instance of the class. Initializes a new instance of the class. The template. ActiveState when set to TRUE indicates that the situation the Condition is representing currently exists. When a Condition instance is in the inactive state (ActiveState when set to FALSE), it is representing a situation that has returned to a normal state. The transitions of Conditions to the inactive and Active states are triggered by Server specific actions. Subtypes of the AlarmConditionType will have substate models that further define the Active state. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|------------------|----------------- en | Inactive | Active de | Inaktiv | Aktiv fr | Inactive | Active Gets or sets the AudibleEnabled Gets or sets the AudibleSound Gets or sets the EnabledState Gets or sets the FirstInGroup Gets or sets the FirstInGroupFlag Provides the NodeId of the Variable the Value of which is used as primary input in the calculation of the Alarm state. If this Variable is not in the AddressSpace, a Null NodeId shall be provided. In some systems, an Alarm may be calculated based on multiple Variables Values, it is up to the system to determine which Variable’s NodeId is used. Gets or sets the LatchedState Optional Property used to set the maximum time that an Alarm Condition may be shelved. The value is expressed as duration. Systems can use this Property to prevent permanent Shelving of an Alarm. If this Property is present it will be an upper limit on the duration passed into a TimedShelve method call. If a value that exceeds the value of this property is passed to the TimedShelve method, then a Bad_ShelvingTimeOutOfRange error code is returned on the call. If this Property is present it will also be enforced for the OneShotShelved state, in that a Alarm Condition will transition to the Unshelved state from the OneShotShelved state if the duration specified in this Property expires following a OneShotShelve operation without a change of any of the other items associated with the Condition. Gets or sets the OffDelay Gets or sets the OnDelay Gets or sets the OutOfServiceState Gets or sets the ReAlarmRepeatCount Gets or sets the ReAlarmTime Suggests whether an Alarm shall (temporarily) be prevented from being displayed to the user. It is quite often used to block nuisance Alarms. Gets or sets the SilenceState The SuppressedState and the ShelvingState together result in the SuppressedOrShelved status of the Condition. When an Alarm is in one of the states, the SuppressedOrShelved property will be set TRUE and this Alarm is then typically not displayed by the Client. State transitions associated with the Alarm do occur, but they are not typically displayed by the Clients as long as the Alarm remains in either the Suppressed or Shelved state. Used internally by a Server to automatically suppress Alarms due to system specific reasons. For example, a system may be configured to suppress Alarms that are associated with machinery that is shut down, such as a low level Alarm for a tank that is currently not in use. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|-------------------|----------------- en | Unsuppressed | Suppressed de | Nicht unterdrückt | Unterdrückt fr | Présent | Supprimé Updates the event. The event to update. A class of handle values used by the class. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Used to specify the common behaviour for Alarm Types with multiple mutually exclusive limits. The LimitState is a Substate of the ActiveState and has a IsTrueSubstate reference to the ActiveState. Shelves an alarm. Updates the effect display name for the enabled state. Updates the effective display name for the active state. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the ActiveState Represents the actual limit that is violated in an ExclusiveLimitAlarm. When the ActiveState of the AlarmConditionType is inactive the LimitState shall not be available and shall return NULL on read. Any Events that subscribe for fields from the LimitState when the ActiveState is inactive shall return a NULL for these unavailable fields. Updates the event. The event to update. A class of handle values used by the class. An object that represents a directory that can be accessed via the server. This class implements support for the FileDirectoryType object on the server side. Defines a type for the representation of file directories. It is expected that OPC UA Servers will create vendor specific subtypes of the with additional functionalities like methods for creating symbolic links or setting access permissions. OPC UA Clients providing specialized file transfer user interfaces should be prepared to expose such additional methods to the user. Instances of the ObjectType contain a list of objects representing the subdirectories of the file directory represented by the instance of this ObjectType. Instances of the ObjectType contain a list of objects representing the files in the file directory represented by the instance of this ObjectType. Frees any unmanaged resources. An overrideable version of the Dispose. Gets or sets the node identifier. Gets or sets the directory on disk that is managed by the object. Occurs when a request to create a new directory is received. Occurs when a request to create a new file is received. Occurs when a request to delete a file is received. Occurs when a request to move a file is received. An object used to synchronize access to the file object. Creates a new FileDirectoryType object organized by this object. Method Result Codes Result Code | Description --------------------------|----------------------------------------------------------------------- Bad_BrowseNameDuplicated | A directory with the name already exists. Bad_UserAccessDenied | The user does not have permission to perform the requested operation. The request context. The parent directory. The name of the directory to create. The name is used for the BrowseName and DisplayName of the directory object and also for the directory in the file system. For the BrowseName, the directoryName is used for the name part of the QualifiedName. The namespace index is Server specific. For the DisplayName, the directoryName is used for the text part of the LocalizedText. The locale part is Server specific. The NodeId of the created directory object. Good if the operation succeeds; an error code otherwise. Creates a new object organized by this object. The created file can be written using the method of the . Method Result Codes Result Code | Description --------------------------|----------------------------------------------------------------------- Bad_BrowseNameDuplicated | A file with the name already exists. Bad_UserAccessDenied | The user does not have permission to perform the requested operation. The request context. The file directory model. The name of the file to create. The name is used for the BrowseName and DisplayName of the file object and also for the file in the file system. For the BrowseName, the FileName is used for the name part of the QualifiedName. The namespace index is Server specific. For the DisplayName, the FileName is used for the text part of the LocalizedText. The locale part is Server specific. Flag indicating whether the new file should be opened with the Write and Read bits set in the open mode after the creation of the file. If the flag is set to True, the file is created and opened for writing. If the flag is set to False, the file is just created. The NodeId of the created file object. The FileHandle is returned if RequestFileOpen is set to True. The FileNodeId and the FileHandle can be used to access the new file through the object representing the new file. If RequestFileOpen is set to False, the returned value shall be 0 and shall be ignored by the caller. Good if the operation succeeds; an error code otherwise. Deletes a file or directory organized by this object. Method Result Codes Result Code | Description ----------------------|------------------------------------------------------------------------------- Bad_NotFound | A file or directory with the provided NodeId is not organized by this object. Bad_InvalidState | The file or directory is locked and thus cannot be deleted. Bad_UserAccessDenied | The user does not have permission to perform the requested operation. The request context. The file directory model. The NodeId of the file or directory to delete. In the case of a directory, all file and directory objects below the directory to delete are deleted recursively. Good if the operation succeeds; an error code otherwise. Deletes a file or directory organized by this object. Method Result Codes Result Code | Description ----------------------|------------------------------------------------------------------------------- Bad_NotFound | A file or directory with the provided NodeId is not organized by this object. Bad_InvalidState | The file or directory is locked and thus cannot be deleted. Bad_UserAccessDenied | The user does not have permission to perform the requested operation. The request context. The file directory model. The NodeId of the file or directory to delete. In the case of a directory, all file and directory objects below the directory to delete are deleted recursively. Good if the operation succeeds; an error code otherwise. Moves or copies a file or directory organized by this object to another directory or renames a file or directory. Method Result Codes Result Code | Description --------------------------|------------------------------------------------------------------------------- Bad_BrowseNameDuplicated | A file or directory with the name already exists. Bad_NotFound | A file or directory with the provided NodeId is not organized by this object. Bad_InvalidState | The file or directory is locked and thus cannot be moved or copied. Bad_UserAccessDenied | The user does not have permission to perform the requested operation. The request context. The file directory model. The NodeId of the file or directory to move or copy. The NodeId of the target directory of the move or copy command. If the file or directory is just renamed, the targetDirectory matches the ObjectId passed to the method call. A flag indicating whether a copy of the file or directory should be created at the target directory. The new name of the file or directory in the new location. If the string is empty, the name is unchanged. The NodeId of the moved or copied object. Even if the object is moved, the Server may return a new NodeId. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the FileDirectory methods. The FileDirectory methods. The arguments passed when the CreateDirectoryRequest event is raised. Initializes a new instance of the class. The context. The parent. The new name. Gets the request context passed to the method call. Gets the parent directory. Gets the name of the directory to create. Gets or sets the status code. Gets or sets the new node identifier for the directory. The arguments passed when the CreateFileRequest event is raised. Initializes a new instance of the class. The context. The parent. The new name. if set to true then return a handle to the new file. Gets the request context passed to the open method call. Gets the parent directory. Gets the name of the file to create. Gets a flag indicating if the file should be opened after it is created. Gets or sets the status code. Gets or sets the new node identifier for the file. Gets or sets the new handle for the file. The arguments passed when the DeleteFileRequest event is raised. Initializes a new instance of the class. The context. The parent directory. The file to delete. Gets the request context passed to the method call. Gets the directory containing the file to delete. Gets the file to delete. Gets or sets the status code. The arguments passed when the MoveFileRequest event is raised. Initializes a new instance of the class. The context. The parent directory. The file to move. The target directory. The new name. If set to true then the file is copied. Gets the request context passed to the method call. Gets the parent that contains the file or directory. Gets the file or directory to move or copy. Gets the target directory. Gets the new name for the file or directory. Gets a value indicating whether to make a copy the file. TRUE if make a copy; otherwise, FALSE. Gets or sets the status code. Gets or sets the new node identifier for the file. An object that represents a file that can be accessed via the server. This class implements support for the FileType object on the server side. Any number of open read handles is allowed but only one handle may be open for write at a time. Subclasses may be used to replace the FileStream with other abstract stream implementations. There are two events ( and ) which can be used to determine permissions. See \ref DemoServerExampleFileModel for example code. This ObjectType defines a type for files. Note that all methods on a file require a FileHandle, which is returned in the method. Frees any unmanaged resources. An overrideable version of the Dispose. Occurs when the file is opened. Occurs when the file is closed. Gets or sets the disk file which can be accessed via the file object. This should be null if a subclass implements a more complex I/O model. Gets or sets the maximum size of the file in bytes. Gets or sets the NodeAccessInfo to specify user access in Open method. Used to open a file represented by an Object of FileType. When a client opens a file, it gets a FileHandle that is valid while the session is open. Clients shall use the Method to release the handle when they do not need access to the file anymore. Clients can open the same file several times for reading. A request to open for writing shall return Bad_NotWritable when the file is already opened. The context. The model. Indicates whether the file should be opened only for read operations or for read and write operations and where the initial position is set. The mode is an 8-bit unsigned integer used as bit mask with the structure defined in the following table: Field | Bit | Description ---------------|-----|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Read | 0 | The file is opened for reading. If this bit is not set the Method cannot be executed. Write | 1 | The file is opened for writing. If this bit is not set the Method cannot be executed. EraseExisting | 2 | This bit can only be set if the file is opened for writing (Write bit is set). The existing content of the file is erased and an empty file is provided. Append | 3 | When the Append bit is set the file is opened at end of the file, otherwise at begin of the file. The Method can be used to change the position. See also FileAccessModes enumeration. A handle for the file used in other method calls indicating not the file (this is done by the Object of the Method call) but the access request and thus the position in the file. The FileHandle is generated by the server and is unique for the Session. Clients cannot transfer the FileHandle to another Session but need to get a new FileHandle by calling the Method. The result of the operation. Closes a file represented by a FileType. When a client closes a file, the handle becomes invalid. A handle returned by the method, indicating the access request and thus indirectly the position inside the file. The result of the operation. Reads a part of the file starting from the current file position. The file position is advanced by the number of bytes read. The context. The model. A handle returned by the method, indicating the access request and thus indirectly the position the file. Defines the length in byte that should be returned in data, starting from the current position of the file handle. If the end of file is reached, only all data till the end of the file are returned. If the specified length is longer than the maximum allowed message size of the communication, only those data fitting into the message size are returned. Only positive values are allowed. Contains the returned data of the file. The result of the operation. Writes a part of the file starting from the current file position. The file position is advanced by the number of bytes written The context. The file model. A handle returned by the method, indicating the access request and thus indirectly the position inside the file. Contains the data to be written at the position of the file. It is server-dependent whether the written data are persistently stored if the session is ended without calling the Method with the FileHandle. The result of the operation. Used to set the current position of the FileHandle. The context. The file model. A handle returned by the method, indicating the access request and thus indirectly the position inside the file. The position to be set for the FileHandle in the file. If or is called, it starts at that position. If the position is higher than the file size, the position is set to the end of the file. The result of the operation. Provides the current position of the FileHandle. The context. The file model. A handle returned by the method, indicating the access request and thus indirectly the position inside the file. The position of the FileHandle in the file. If or is called, it starts at that position. The result of the operation. Determines whether the current context has specified access to the file. The request context. The desired access masks. UserAccessMask.Read and UserAccessMask.Write will be evaluated. true, if the specified context has access; otherwise, false. Caches information about an open file handle. The unique id assigned to the file handle The session which owns the file handle. The stream used to read or write. The mode how the stream will be accessed. Gets a value indicating whether the stream is read only. true if the stream is read only; otherwise, false. An object used to synchronize access to the file object. Gets or sets the next file handle to assign. Cleans up any expired handles. Opens a stream for the file referenced by . The handle. If FileOnDisk is null, a memory stream is created. Finds the handle. The context. The file handle. An open handle. Assigns a unique id to the handle and saves the handle. The handle. Closes the stream associated with the handle and sets the size of the File object. The handle. Initializes a new instance of the class. Initializes a new instance of the class. The template. Contains the media type of the file based on RFC 2046. Indicates the number of currently valid file handles on the file. Defines the size of the file in Bytes. When a file is opened for writing the size might not be accurate. Indicates whether the file is writable, taking user access rights into account. The Property does not take into account whether the file is currently opened for writing by another client and thus currently locked and not writable by others. Indicates whether the file is writable. It does not take any user access rights into account, i.e. although the file is writable this may be restricted to a certain user/user group. The Property does not take into account whether the file is currently opened for writing by another client and thus currently locked and not writable by others. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the File methods. The File methods. The arguments passed when the OpenRequested event is raised. Initializes a new instance of the class. The context. The mode. The file being accessed by object. Gets the request context passed to the open file call. Gets the type of access requested. Gets the file that is accessed by the open file call. Gets or sets the stream. Gets or sets the status code. The arguments passed when the CloseRequested event is raised. Initializes a new instance of the class. The context. The stream. Gets the context. Gets the stream. Gets or sets the status code. Gets or sets a value indicating whether the caller should not close the stream. true if the caller should not close the stream; otherwise false. A base class for model controllers. Gets or sets the metadata handle. The metadata handle. Gets or sets the user data. The user data. Gets the metadata handle. The namespace uris. The instance. Gets the value associated with the mapping. The request context. The mapping. The value. null if he mapping was not understood. Sets the value associated with the mapping. The request context. The mapping. The value. True if the mapping was understood. False otherwise. Defines application specific behavoir for the Server object. This ObjectType defines diagnostic information about the OPC UA Server. Initializes a new instance of the class. The server. Gets the metadata handle. The namespace uris. The instance. Gets the server diagnostics. The diagnostics. Gets the session diagnostics. Gets the session security diagnostics. Gets the session security diagnostics. Gets the session security diagnostics. Initializes a new instance of the class. Initializes a new instance of the class. The template. Identifies whether or not diagnostic information is collected by the Server. It can also be used by a client to enable or disable the collection of diagnostic information of the Server. The following settings of the boolean value apply: TRUE indicates that the Server collects diagnostic information, and setting the value to TRUE leads to re setting and enabling the collection. FALSE indicates that no statistic information is collected, and setting the value to FALSE disables the collection without resetting the statistic values. Static diagnostic Nodes that always appear in the address space will return Bad_NotReadable when the Value attribute of such a Node is read or subscribed to and diagnostics are turned off. Dynamic diagnostic nodes (such as the Session nodes) will not appear in the address space when diagnostics are turned off. An array of diagnostic information per sampling rate (see ). There is one entry for each sampling rate currently used by the Server. Its type definition node is the variable type , providing a Variable for each entry in the array (see ). The sampling interval diagnostics are only collected by Servers which use a fixed set of sampling intervals. In these cases, length of the array and the set of contained variables will be determined by the Server configuration and the NodeId assigned to a given sampling interval diagnostics variable shall not change as long as the Server configuration does not change. A Server may not expose the SamplingIntervalDiagnosticsArray if it does not use fixed sampling rates. Contains diagnostic summary information for the Server. See . Contains diagnostic information per session (see ). An array of subscription diagnostic information per subscription (see ). There is one entry for each notification channel actually established in the Server. Its type definition node is the variable type , providing a variable for each entry in the array (see ). Those variables are also used as variables referenced by other variables. Defines application specific behavoir for the Server object. This object type defines diagnostic information about a session of the OPC UA Server. Initializes a new instance of the class. The server. Gets the session diagnostics. The diagnostics. Gets the session diagnostics. The diagnostics. Gets the metadata handle. The namespace uris. The instance. Gets the session diagnostics. Gets the session security diagnostics. Gets the session security diagnostics. Initializes a new instance of the class. Initializes a new instance of the class. The template. Contains general diagnostic information about the session Contains security-related diagnostic information. Because the information of this variable is security-related, it should not be made accessible to all users, but only to authorised users. An array of subscription diagnostic information per opened subscription, (see). Its type definition node is the variable type providing a variable for each entry in the array. Defines application specific behavoir for the Server object. Defines the capabilities supported by the OPC UA Server. Initializes a new instance of the class. The server. Gets the metadata handle. The namespace uris. The instance. Gets the namespace array. Gets the server URI array. Gets the current time. Gets the server status. Gets the build info. Initializes a new instance of the class. Initializes a new instance of the class. The template. A Boolean specifying if the Server is currently generating audit events. It is set to TRUE if the Server generates audit events, otherwise to false. The profiles defined in Part 7 of the OPC UA Specification specify what kind of audit events are generated by the Server. Indicates the time at which the Server is expected to have a ServerStatus.State of RUNNING_0. A Client that observes a shutdown or a ServiceLevel of 0 should either wait until after this time to attempt to reconnect to this Server or enter into slow retry logic. For example, most Clients will attempt to reconnect after a failure immediately and then progressively increase the delay between attempts until some maximum delay. This time can be used to trigger the Client to start its reconnect logic with some delay. Gets or sets the LocalTime
Indicates the time zone the Server is is running in.
Defines an array of namespace URIs. This variable is also referred as namespace table. The indexes into the namespace table are referred to as namespace indexes. Namespace indexes are used in NodeIds in OPC UA Services, rather than the longer namespace URI. Index 0 is reserved for the OPC UA namespace, and index 1 is reserved for the local Server. Clients may read the entire namespace table or they may read individual entries in the namespace table. The Server shall not modify or delete entries of the namespace table while any client has an open session to the Server, because clients may cache the namespace table. A Server may add entries to the namespace table even if clients are connected to the Server. It is recommended that Servers not change the indexes of the namespace table but only add entries, because the client may cache NodeIds using the indexes. Nevertheless, it might not always be possible for Servers to avoid changing indexes in the namespace table. Clients that cache namespace indexes of NodeIds should always check when starting a session to verify that the cached namespace indexes have not changed. Provides a list of objects with additional information about the namespaces used in the Server. See also the description of . Defines an array of Server URIs. This Variable is also referred to as the server table. Each URI in this array represents a globally-unique logical name for a Server within the scope of the network in which it is installed. Each OPC UA Server instance has a single URI that is used in the server table of other OPC UA Servers. Index 0 is reserved for the URI of the local Server. Values above 0 are used to identify remote Servers and are specific to a Server. Part 4 of the OPC UA Specification describes discovery mechanism that can be used to resolve URIs into URLs. The Server URI is case sensitive. The URI of the ServerArray with index 0 shall be identical to the URI of the NamespaceArray with index 1, since both represent the local Server. The indexes into the server table are referred to as server indexes or server names. They are used in OPC UA Services to identify target nodes of references that reside in remote Servers. Clients may read the entire table or they may read individual entries in the table. The Server shall not modify or delete entries of this table while any client has an open session to the Server, because clients may cache the server table. A Server may add entries to the server table even if clients are connected to the Server. Defines the capabilities supported by the OPC UA Server. See for its description. Defines diagnostic information about the OPC UA Server. See for its description. Describes the redundancy capabilities provided by the Server. This object is required even if the Server does not provide any redundancy support. If the Server supports redundancy, then a subtype of is used to describe its capabilities. Otherwise, it provides an object of type with the property RedundancySupport set to none. See also the description of . Contains elements that describe the status of the Server. See for a description of its elements. Describes the ability of the Server to provide its data to the client. The value range is from 0 to 255, where 0 indicates the worst and 255 indicates the best. Part 4 of the OPC UA Specification defines required sub-ranges for different scenarios. The intent is to provide the clients an indication of availability among redundant Servers. Gets or sets the UrisVersion
Defines the version of the ServerArray and the NamespaceArray.
Represents the browse entry point for vendor-defined Server information. This object is required to be present even if there are no vendor-defined objects beneath it. See for its description. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the Server methods. The Server methods. Defines application specific behavoir for the Server object. This complex variable type is used for diagnostic information. Its data variables reflect its data type, having the same semantic (). Initializes a new instance of the class. The server. Gets the subscription diagnostics. The diagnostics. Gets the metadata handle. The namespace uris. The instance. Gets the subscription diagnostics. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the CurrentKeepAliveCount Gets or sets the CurrentLifetimeCount Gets or sets the DataChangeNotificationsCount Gets or sets the DisableCount Gets or sets the DisabledMonitoredItemCount Gets or sets the DiscardedMessageCount Gets or sets the EnableCount Gets or sets the EventNotificationsCount Gets or sets the EventQueueOverflowCount Gets or sets the LatePublishRequestCount Gets or sets the MaxKeepAliveCount Gets or sets the MaxLifetimeCount Gets or sets the MaxNotificationsPerPublish Gets or sets the ModifyCount Gets or sets the MonitoredItemCount Gets or sets the MonitoringQueueOverflowCount Gets or sets the NextSequenceNumber Gets or sets the NotificationsCount Gets or sets the Priority Gets or sets the PublishingEnabled Gets or sets the PublishingInterval Gets or sets the PublishRequestCount Gets or sets the RepublishMessageCount Gets or sets the RepublishMessageRequestCount Gets or sets the RepublishRequestCount Gets or sets the SessionId Gets or sets the SubscriptionId Gets or sets the TransferredToAltClientCount Gets or sets the TransferredToSameClientCount Gets or sets the TransferRequestCount Gets or sets the UnacknowledgedMessageCount The arguments passed when a ReadTrustList event occurs. Initializes a new instance of the class. The model. The context. The masks. Gets the model. The model. Gets the context. The context. Gets the masks. The masks. Gets or sets the status code. The status code. Gets or sets the trust list. The trust list. The arguments passed when a WriteTrustList event occurs. Initializes a new instance of the class. The model. The context. The trust list. Gets the model. The model. Gets the context. The context. Gets the trust list. The trust list. Gets or sets the status code. The status code. Gets or sets a value indicating whether a restart is required. true if a restart is required; otherwise, false. The arguments passed when a AddCertificate event occurs. Initializes a new instance of the class. The model. The context. The certificate. if set to true if the certificate is trusted. Gets the model. The model. Gets the context. The context. Gets the certificate. The certificate. Gets a value indicating whether the certificate is trusted. true if the certificate is trusted; otherwise, false. Gets or sets the status code. The status code. The arguments passed when a RemoveCertificate event occurs. Initializes a new instance of the class. The model. The context. The thumbprint. if set to true if the certificate is a trusted certificate. Gets the model. The model. Gets the context. The context. Gets the thumbprint. The thumbprint. Gets a value indicating whether the certificate is a trusted certificate. true if the certificate is a trusted certificate; otherwise, false. Gets or sets the status code. The status code. An object which represents a trust list. Defines a that can be used to access a trust list. The CertificateManager uses this type to implement the Pull Model. Servers use this type when implementing the Push Model. An instance of a TrustListType must restrict access to appropriate users or applications. This may be a CertificateManager administrative user that can change the contents of a trust list, it may be an administrative user that is reading a trust list to deploy to an application host or it may be an application that can only access the trust list assigned to it. The trust list file is a UA Binary encoded stream containing an instance of TrustListDataType. \todo Open method The Open method shall not support modes other than Read (0x01) and the Write + EraseExisting (0x06). When a Client opens the file for writing, the Server will not actually update the trust list until the method is called. Simply calling Close will discard the updates. The bit masks in the TrustListDataType structure allow the Client to only update part of the trust list. When the method is called, the Server will validate all new Certificates and CRLs. If this validation fails, the trust list is not updated and the Server returns the appropriate certificate error code. If auditing is supported, the CertificateManager shall generate the TrustListUpdatedAuditEventType when the , or methods are called. Occurs when the trust list is opened for reading. Occurs when the trust list has been uploaded and the changes need to be applied. Occurs when the trust list has been uploaded and the changes need to be applied. Occurs when the remove certificate method is called. Gets or sets the store path. The store path. Opens the specified context. The context. The model. The mode. The file handle. The result of the operation. Allows a Client to read only a portion of the trust list. This method can only be used to read the trust list. The context. The model. The parts of the trust list that are include in the file to read. The handle of the newly opened file. The result of the operation. Closes the file and applies the changes to the trust list. It can only be called if the file was opened for writing. If the file cannot be processed, this method still closes the file and discards the data before returning an error. This method is required if the Server supports writes. The structure uploaded includes a mask which specifies which fields are updated. If a bit is not set, the associated field is not changed. The context. The model. Handle of the previously opened file. if set to true a restart is required. The result of the operation. Allows a Client to add a single certificate to the trust list. The Server always validates the certificate before adding it and returns the appropriate error code on failure. This method cannot be called if the file object is open. The context. The model. The DER encoded certificate to add. Flag indicating whether the certificate is not an issuer certificate. If TRUE, the certificate is added to the trusted certificates list. If FALSE, the certificate is added to the issuer certificates list. Any error that occurred during processing. Allows a Client to remove a single certificate from the trust list. It returns Bad_InvalidArgument if the thumbprint does not match a certificate in the trust list. This method cannot be called if the file object is open. The context. The model. The SHA1 hash of the certificate to remove. Flag indicating whether the certificate is not an issuer certificate. If TRUE, the certificate is removed from the trusted certificates list. If FALSE, the certificate is removed from the issuer certificates list. Initializes a new instance of the class. Initializes a new instance of the class. The template. Indicates when the trust list was last updated via trust list object methods. This can be used to determine whether a device has an up to date trust list or to detect unexpected modifications. Out of band changes are not necessarily reported by this value. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. A base class for all node managers. A base class for all node managers. A base class for all node managers. A base class for all node managers. A base class for all node managers. \ingroup UaServerApi A base class for all node managers. Returns the INodeAccessInfo from the Extension defines in a NodeSet XML file The parsed extension. The sum of the number of groups and the number of users must not be greater than 2. If more groups or users are specified, null is returned. Creates a class that can be used to dynamically build data types descriptions. The request context. The settings used to initialize the dictionary. The new schema dictionary object. Each object creates an OPC Binary and XML Schema dictionary for the types added to it. Each object has a NamespaceURI which is used for both dictionaries. By default the same URI is used for the NodeIds created to represent the types, however, this can be overridden. When creating dictionaries the number of types should not get too large. The simplest way to control this is to create a multiple dictionaries with different URIs. Creates the nodes required to represent a generic data type in the address space, The request context. The description of the data type to add. The index of the namespace to use for any new NodeIds. The DataType, DefaultBinary Encoding, OPC Binary TypeDescription, DefaultXML Encoding and XML Schema TypeDescription Nodes are created. The NamespaceIndex overrides any namespace specified in the NodeIds defined in the data type object itself. Gets the supported methods. Gets the node metadata. The request context. The browse handle. The fields to return. The node class filter. The metadata with only the requested fields. null if the node does not have the requested node class. Gets the node attributes. The request context. The browse handle. The expected node class. The subtype of Node depending on the NodeClass. null if the node is not the expected node class. Reads the attribute. The request context. The node handle. The value of the requested attribute. Returns null if the attribute cannot be read with this method (meaning the I/O manager needs to be used). Reads the attribute value for a child node. The data type of the attribute to read. The request context. The node handle. Name of the component. The default value. The value of the variable identified by the component name. The defaultValue if any error occurs. Reads the attribute value for a child node. The data type of the value to read. The request context. The node handle. The browse path. The default value. The value of the variable identified by the browse path. The defaultValue if any error occurs. Writes the attribute. The request context. The node handle. The value to write. Writes the attribute. Returns null if the attribute cannot be written with this method (meaning the I/O manager needs to be used). Writes the attribute value for a child node. The request context. The node handle. Name of the component. The value to write. The result of the operation. Writes the attribute value for a child node. The request context. The node handle. The browse path. The value to write. The result of the operation. Copies the node. The source. If set to true, the value is copied. If set to false, a reference to the value is returned. A copy of the node. Begins the history transaction. The request context. The total item count hint. The timestamps to return. Type of the transaction. The details. The callback called when an operation completes. The callback data. The historical data transaction handle. Good, if the transaction could be created, an error code otherwise. Finishes the history transaction. The transaction. Begins an operation to read raw history data. The operation handle. The value to read. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginHistoryReadDataTransaction must be called when the operation completes. Reads the raw history for a single variable. The request context. The details. The node handle. The index range. The data encoding. The continuation point. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryReadDataTransaction. Creates the history continuation point. The context. The details. The node handle. The index range. The data encoding. The continuation point, null if there is no history data available for the node. Reads the raw history for a group of variables. The request context. The transaction. The details. The operation handles. The values to read. The continuation points. Begins an operation to read processed history data. The operation handle. The value to read. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginHistoryReadDataTransaction must be called when the operation completes. Reads the processed history for a single variable. The request context. The details. The node handle. The aggregate id. The index range. The data encoding. The continuation point. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryReadDataTransaction. Creates the history continuation point. The context. The details. The node handle. The index range. The data encoding. The aggregate id. Revises the aggregate configuration. The context. The node handle. The configuration to use. Whether the variable uses stepped or sloped interpolation. Reads the processed history for a group of variables. The request context. The transaction. The details. The operation handles. The value to read. The continuation points. Begins an operation to read raw history data. The operation handle. The value to read. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginHistoryReadDataTransaction must be called when the operation completes. Reads the history at specific time for a single variable. The request context. The details. The node handle. The index range. The data encoding. The continuation point. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryReadDataTransaction. Creates the history continuation point. The context. The details. The node handle. The index range. The data encoding. Reads the history at specific time for a group of variables. The request context. The transaction. The details. The operation handles. The values to read. The continuation points. Begins the history transaction. The request context. The total item count hint. Type of the transaction. The callback. The callback data. The historical data transaction handle. Good, if the transaction could be created; an error code otherwise. Finishes the history transaction. The transaction. Begins an operation to update raw history data. The operation handle. The details. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginHistoryUpdateDataTransaction must be called when the operation completes. Updates the data history for a single variable. The request context. The node handle. The details. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryReadDataTransaction. Updates the data history for a group of variables. The request context. The transaction. The operation handles. The details. Begins an operation to update structured history data. The operation handle. The details. Good, if successful; Otherwise an error code. If this method returns Good, the callback passed to BeginHistoryUpdateDataTransaction must be called when the operation completes. Updates structured history data for a single variable. The request context. The node handle. The details. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryReadDataTransaction. Updates structured history data for a group of variables. The request context. The transaction. The operation handles. The details. Begins an operation to delete raw history data. The operation handle. The details. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginHistoryUpdateDataTransaction must be called when the operation completes. Delete raw history data for a single variable. The request context. The node handle. The details. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryReadDataTransaction. Delete raw history data for a group of variables. The request context. The transaction. The operation handles. The details. Begins an operation to delete history data at specific times. The operation handle. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginHistoryUpdateDataTransaction must be called when the operation completes. Deletes history data at specific times for a single variable. The request context. The node handle. The details. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryReadDataTransaction. Deletes history data at specific times for a group of variables. The request context. The transaction. The operation handles. The details. Loads a history continuation point. Saves a history continuation point. Called when the node manager is started. Called when the node manager is stopped. Called when a new session is created. The session. Called when a session is activated. The session. Called when a new session is closed. The session. Gets the browse handle for the specified node. The request context. The view. The node id. The handle. Good if successful; An error code otherwise. Gets the view handle for the specified view. The request context. The view. The handle. Good if successful; An error code otherwise. Gets the node handle for the specified node and attribute. The request context. The node id. The attribute id. The handle. Good if successful; An error code otherwise. Gets the notifier handle for the specified notifier. The request context. The node id. The handle. Good if successful; An error code otherwise. Gets the method handle for the specified object and method. The request context. The object id. The method id. The handle. Good if successful; An error code otherwise. Gets the history data handle for the specified variable. The request context. The variable id. The handle. Good if successful; An error code otherwise. Gets the history events handle for the specified notifier. The request context. The notifier id. The handle. Good if successful; An error code otherwise. Begins a browse operation. The request context. The node to browse. The continuation point. If set to true, [release continuation point]. The callback. The callback data. Good if successful; an error code otherwise. Begins a translate browse paths operation. The request context. The node to browse. The relative path. The index. The callback. The callback data. Good if successful; An error code otherwise. Adds the cross reference. The source node id. The manager. The source node is a node managed by the NodeManager being called. This method tells the NodeManager that references from the source exist in another NodeManager. When the source is browsed the NodeManager will call the BrowseCrossReference method on the NodeManger passed to this method. Removes the cross reference. The source node id. The manager. Stores data related to a browse operation. Browses the node specified in the continuation point. The context. The continuation point. The results. A new continuation point if the operation halts. null if the operation completes. Processes the references in the list. /// UserAccessManager.HasAccess is called in Server.InternalClient.GetNodeMetadata. So only references that are allowed are returned. The request context. The continuation point. The references. The results. A new continuation point if the operation halts. null if the operation completes. Stores data related to a translate operation. A browse handle for nodes stored in memory. The built-in handle types for the node manager. Browsing nodes internal to the node manager. Browsing nodes outside to the node manager. The first browse stage that can be used by a subclass. Gets or sets a value indicating whether the access right check for ReadAttribute is disabled for in memory nodes. true if access right check for ReadAttribute is disabled; otherwise, false. UserAccessMask.ReadAttribute has been added in SDK version 2.5. This enum value allows to control access to all attributes but the Value attribute. In older versions of the SDK all non-value attributes could be read. This property can be used to reset to old behavior. Begins the data transaction. The request context. The total item count hint. The max age. The timestamps to return. Type of the transaction. The callback. The callback data. The data transaction handle. Good, if successful; otherwise an error code. Finishes the transaction. The transaction (the value returned from ). Begins a read operation (must not block). The operation handle. The settings. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginDataTransaction must be called when the operation completes. Begins the write. The operation handle. The settings. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginDataTransaction must be called when the operation completes. Begins a start data monitoring operation (must not block). The operation handle. The monitored item id. The settings. The callback. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginDataTransaction must be called when the operation completes. Validates the data encoding. The context. The node handle. The data encoding. Good if the encoding is valid; An error otherwise. Begins a modify data operation (must not block). The operation handle. The settings. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginDataTransaction must be called when the operation completes. Begins a stop data monitoring operation (must not block). The operation handle. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginDataTransaction must be called when the operation completes. Begins a set data monitoring mode operation (must not block). The operation handle. The monitoring mode. The parameters. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginDataTransaction must be called when the operation completes. Finishes the read transaction. The transaction (the value returned from ). Reads the attribute. The request context. The node handle. The index range. The data encoding. A value containing an error code if an error occurs. The attribute value otherwise. Reads the attributes. The request context. The transaction (the value returned from ). The operation handles. The settings. Reads the in memory node. Translates the specified text based on the strings stored in the ResourceManager. The request context. The value to translate.. The translated value. Gets the user access level. The request context. The node id. The user access level for the node id. Reads the mapped node. The request context. The node handle. The index range. The data encoding. The value of the mapped node. Applies the index range and the encoding (modifies the input DataValue). The handle. The input. The index range. The data encoding. A value containing an error code, if an error occurs. The modified input otherwise. Applies the index range and the encoding (modifies the input DataValue). The input. The index range. The data encoding. The value after applying the index range and/or encoding. An error if the index range or encoding is invalid. Applies the data encoding (modifies the input DataValue). The input. The data encoding. The value after applying the encoding. An error if the encoding is invalid. Finishes the write transaction. The transaction (the value returned from ). Writes the value to a node attribute. The request context. The node handle. The index range. The value. The value of the requested attribute. Returns null if the attribute cannot be written with this method (meaning the batch method must be used). Writes a value to a group of node attributes. The request context. The transaction (the value returned from ). The operation handles. The settings. Determines whether this instance can write a value with the specified data type to the node in the specified context. The request context. The node handle. The value. Good, if a write is permitted; an error code otherwise. Reports the data changes. The request context. The node handle. Writes the mapped node. The request context. The node handle. The index range. The value. Good, if successful; an error code otherwise. Finishes the start data monitoring transaction. The transaction (the value returned from ). Start data monitoring for a single node attribute value. Sends an initial DataChange if this operation does not return null and if Read(RequestContext context, NodeAttributeHandle nodeHandle, string indexRange, QualifiedName dataEncoding) does not return null. The request context. The item handle. The settings. The callback. The result of the operation. Returns null if monitoring cannot be started with this method (meaning the batch method must be used). Start data monitoring for a group of node attributes. The request context. The transaction (the value returned from ). The operation handles. The monitored item ids. The settings. The callback. Starts the data monitoring in memory node. The request context. The item handle. The request. The callback. The result. The result of the operation. Starts the data monitoring of a mapped node. The request context. The item handle. The request. The callback. The result. The result of the operation. Finishes the modify data monitoring transaction. The transaction (the value returned from ). Modifies data monitoring for a single node attribute value. The request context. The item handle. The settings. The result of the operation. Returns null if monitoring cannot be started with this method (meaning the batch method must be used). Modifies data monitoring for a group of node attribute values. The request context. The transaction (the value returned from ). The operation handles. The settings. Modifies data monitoring for an in memory node. The request context. The item handle. The settings. The result. The result of the modify data monitoring operation. Modifies data monitoring for a mapped node. The request context. The item handle. The settings. The result. The result of the modify data monitoring operation. Finishes the stop data monitoring transaction. The transaction (the value returned from ). Stops the data monitoring for a single node attribute value. The request context. The item handle. The result of the operation. Returns null, if monitoring cannot be stopped with this method (meaning the batch method must be used). Stops the data monitoring for a group of node attribute values. The request context. The transaction (the value returned from ). The operation handles. Stops data monitoring for an in memory node. The request context. The item handle. The result of the operation. Stops data monitoring for an mapped node. The request context. The item handle. The result of the operation. Finishes the set data monitoring mode transaction. The transaction (the value returned from ). Sets the monitoring mode for a single monitored item. The request context. The item handle. The monitoring mode. The parameters. The result of the operation. Returns null if the monitoring mode cannot be changed with this method (meaning the batch method must be used). Sets the monitoring mode for a group of monitored items. The request context. The transaction (the value returned from ). The operation handles. The monitoring modes. The parameters. Sets the monitoring mode for an in memory node. The request context. The item handle. The monitoring mode. The parameters. The result of the operation. Sets the monitoring mode for a mapped node. The request context. The item handle. The monitoring mode. The parameters. The result of the operation. Called before an in-memory node is read. The request context. The node handle. The node. Called after an in-memory node is updated. The request context. The node handle. The node. Called when data monitoring starts. The request context. The node handle. The sampling interval. Called when data monitoring is modified. The request context. The node handle. The sampling interval. Called when data monitoring is stopped. The request context. The node handle. Stores the state for a monitored item for an in-memory node. Begins the transaction. The request context. The total item count hint. Type of the transaction. The callback to raise when an opereation completes. The callback data. The transaction handle. Good, if the transaction could be created, an error code otherwise. Finishes the transaction. The transaction (the value returned from ). Starts monitoring an item. The operation handle. The settings. The monitored item id. The callback to use when events occur. Good, if the monitored item can be created, an error code otherwise. If this method returns Good, the callback passed to BeginTransaction must be called when the operation completes. Modifies the monitoring for an item. The operation handle. The settings. Good, if the monitored item can be modified, an error code otherwise. If this method returns Good, the callback passed to BeginTransaction must be called when the operation completes. Stops monitoring an item. The operation handle. Good, if the monitored item can be modified, an error code otherwise. If this method returns Good, the callback passed to BeginTransaction must be called when the operation completes. Changes the monitoring mode for an item. The operation handle. The monitoring mode. The parameters. Good, if the monitored item can be modified; an error code otherwise. If this method returns Good, the callback passed to BeginEventTransaction must be called when the operation completes. Called when monitoring starts for a notifier from another IEventManager higher in the hierarchy. The context. The id for the notifier in the other IEventManager. The item handle. The parameters. The callback to use when events occur. Called when monitoring changes for a notifier from another IEventManager higher in the hierarchy. The context. The id for the notifier in the other IEventManager. The item handle. The parameters. Called when monitoring stops for a notifier from another IEventManager higher in the hierarchy. The context. The id for the notifier in the other IEventManager. The item handle. Called when the condition refresh is called for a notifier higher in the hierarchy. The context. The id for the notifier. The item handle. The callback to call with the current state of all conditions. Adds a link from an IEventManager to a notifier. The notifier id. The event manager. Removes a link from IEventManager to a notifier. The notifier id. The manager. Reports an event for the notifier id. The notifier id. The event. Called when event monitoring has started for a notifier. The notifier id. The monitored item. Called when event monitoring has been modified for a notifier. The notifier id. The monitored item. Called when event monitoring has stopped for a notifier. The notifier id. The monitored item. Called when condition refresh has been called for the notifier. The notifier id. The item handle. The callback to use to report the current state of all conditions. Enables a condition. The request context. The condition being enabled. Good, if the condition was enabled successfully. False otherwise. Disables a condition. The request context. The condition being disabled. Good, if the condition was disabled successfully. False otherwise. Adds a comment to a condition. The request context. The condition to add a comment to. The event id. The comment. Good, if the comment was added successfully. False otherwise. Acknowledges a condition. The request context. The condition being acknowledged. The event id. The comment. Good, if the condition was acknowledged successfully. False otherwise. Confirms a condition. The request context. The condition being confirmed. The event id. The comment. Good, if the condition was confirmed successfully. False otherwise. The request context. The alarm to place in. The request context. The alarm to remove. The request context. The alarm to reset. The request context. The alarm to make silent. The request context. The alarm to supress. The request context. The alarm to unsupress. Shelves a condition until the next time it goes into the active state. The request context. The state machine for the condition being shelved. Good, if the condition was shelved successfully. False otherwise. Shelves a condition for a period of time. The request context. The state machine for the condition being shelved. The shelving time. Good, if the condition was shelved successfully. False otherwise. Unshelves a condition. The request context. The state machine for the condition being shelved. Good, if the condition was unshelved successfully. False otherwise. Finishes the start event monitoring transaction. The transaction (the value returned from ). Starts the event monitoring for a single item. The request context. The notifier handle. The monitored item id. The settings. The callback to use when an event occurs. null if the operation needs to be done as batch during FinishEventTransaction. non-null if the operation is complete. Starts the event monitoring for all unprocessed items in the transaction. The request context. The transaction (the value returned from ). The notifier handles. The monitored item ids. The settings. The callbacks to use when an event occurs. Validates the event monitoring request. The request context. The notifier handle. The item to monitor. The parameters. The result of the validation include detailed errors for the event filter. Finishes the modify event monitoring transaction. The transaction (the value returned from ). Modifies the event monitoring for a single item. The request context. The item handle. The settings. null if the operation needs to be done as batch during FinishEventTransaction. non-null if the operation is complete. Modifies the event monitoring for all unprocessed items in the transaction. The request context. The transaction (the value returned from ). The item handles. The settings. Finishes the stop event monitoring transaction. The transaction (the value returned from ). Stops the event monitoring for a single item. The request context. The item handle. null if the operation needs to be done as batch during FinishEventTransaction. non-null if the operation is complete. Stop the event monitoring for all unprocessed items in the transaction. The request context. The transaction (the value returned from ). The item handles. The settings. Finishes the set event monitoring mode transaction. The transaction (the value returned from ). Changes the event monitoring mode for a single item. The request context. The item handle. The monitoring mode. null if the operation needs to be done as batch during FinishEventTransaction. non-null if the operation is complete. Changes the event monitoring mode for all unprocessed items in the transaction. The request context. The transaction (the value returned from ). The item handles. The monitoring modes. Removes a local notifier. The notifier id. The parents. Determines whether the notifier is above the source in the tree. The notifier handle. The source id. true if the notifier is above the source; otherwise, false. Begins the call transaction. The request context. The total item count hint. The callback. The callback data. The call transaction handle. Good if the transaction could be created, an error code otherwise. Begins the method call. The method handle. The input arguments. If this method returns Good, the callback passed to BeginCallTransaction must be called when the operation completes. Finishes the call transaction. The transaction. Gets the method handler. The request context. The method handle. The method dispatcher. null if no handler is available. Calls the method. The request context. The method handle. The input arguments. The result of the operation including any output arguments. Calls the method. The request context. The method handle. The input arguments. The input argument results. The output arguments. Good, if the call succeeded; an error code otherwise. Adds a new node. The request context. The settings. The assigned node id. Good if successful; Otherwise an error code. Determines whether the specified context has permision to add nodes. The context. The parent of the node to add. The reference type from the parent to the node to add. The type definition of the node to add. true, if the context has permission; otherwise, false. Called when a new persistent node is added. The request context. The node. Deletes the node. The request context. The node id. If set to true, the references from other nodes to the node are deleted as well. Good on success; an error code otherwise Collects the nodes to delete. The children of the node are added to nodesToDelete recursicely. The node to delete. The children of the node are added to this list. Determines whether the specified context has permision to delete nodes. The context The node to delete. true, if the context has permission; otherwise, false. Called when a new persistent node is deleted. The request context. The node. This method can be reimplemented in a subclass. The method is called before nodes are added. The request context. The nodes. This method can be reimplemented in a subclass. The method is called after nodes are added. The request context. The nodes. This method can be reimplemented in a subclass. The method is called before nodes are deleted. The request context. The nodes. This method can be reimplemented in a subclass. The method is called after nodes are deleted. The request context. The nodes. This method can be reimplemented in a subclass. The method is called after adding a reference to a node. The request context. The node. The reference type id. Set to true, if the reference is an inverse reference. The target id. This method can be reimplemented in a subclass. The method is called after deleting a reference. The request context. The node. The reference type id. Set to true, if the reference is an inverse reference. The target id. Adds a reference. The request context. The source node id. The reference type id. If set to true, then the reference is a inverse reference. The target node id. If set to true, then the reverse reference is added as well. Good if successful; Otherwise an error code. Determines whether the specified context has permission to add the reference. The context. The source id. The reference type id. If set to true [is inverse]. true if the context has permission; otherwise, false. Called when a new persistent reference is added. The request context. The node. The reference. Deletes the reference. The request context. The source node id. The reference type id. If set to true then the reference is a inverse reference. The target node id. If set to true then the reverse reference is deleted as well. Good if the reference was added. Otherwise an error code. Determines whether the specified context has permission to delete the reference. The context. The source id. The reference type id. If set to true, the reference is inverse. true, if the context has permission; otherwise, false. Called when a new persistent reference is deleted. The request context. The node. The reference. Gets the node id generation settings. The node id generation settings. Creates a new object node. The request context. The settings. The new object node. Creates a new variable node. The request context. The settings. The new variable node. Creates a new method node. The request context. The settings. The new method node. Creates a new view node. The request context. The settings. The new view node. Creates a new object type node. The request context. The settings. The new object type node. Creates a new variable type node. The request context. The settings. The new variable type node. Creates a new data type node. The request context. The information about the DataType node. If DataTypeDefinition is a StructureDefinitionSettings, the properties DataTypeNode and SuperTypeId of StructureDefinitionSettings are set. DefinitionHelper is set to this NodeManager if not set yet. The new data type node. Creates a new reference type node. The request context. The settings. The new reference type node. Creates a new node id. If set to true, the node will be persisted. Index of the namespace. The new node id. The persistent flag indicates that the NodeId will be saved are used after a server restart. This may affect the creation of the NodeId in the subclass. It has no effect on the default implementation. Creates a new NodeId. This method can be overrided to get influence on auto generated NodeIds. The NodeId of the parent node. This argument can be null. This argument can be used to construct the new NodeId from the NodeId of the parent. The default implementation ignores this argument. The BrowseName of the node that shall get a new NodeId. This argument can be used to construct the new NodeId. The default implementation ignores this argument. The NodeClass of the node that shall get a new NodeId. The default implementation ignores this argument. The NamespaceIndex of the new NodeId. The new NodeId. Begins the event history transaction. The request context. The total item count hint. Type of the transaction. The details. The callback. The callback data. The historical event transaction handle. Good, if the transaction could be created; an error code otherwise. Finishes the event history transaction. The transaction. Begins an operation to read event history. The operation handle. The notifier to read. Good, if successful; Otherwise an error code. If this method returns Good the callback passed to BeginHistoryReadEventTransaction must be called when the operation completes. Reads the event history for a single notifier. The request context. The details. The node handle. The continuation point. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryReadEventTransaction. Reads the event history for a group of notifiers. The request context. The transaction. The details. The operation handles. The notifiers to read. The continuation points. Begins the history transaction. The request context. The total item count hint. Type of the transaction. The callback. The callback data. The handle. Good, if the transaction could be created; an error code otherwise. Finishes the history event transaction. The transaction. Begins the history update event. The operation handle. The details. Good, if the transaction could be created; an error code otherwise. If this method returns Good, the callback passed to BeginHistoryUpdateEventTransaction must be called when the operation completes. Updates the event history for a single notifier. The request context. The node handle. The details. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryUpdateEventTransaction. Updates the event history for a group of notifiers. The request context. The transaction. The operation handles. The details. Begins an operation to delete event history. The operation handle. The details. Good, if successful; otherwise an error code. If this method returns Good, the callback passed to BeginHistoryUpdateEventTransaction must be called when the operation completes. Deletes event history for a single notifier. The request context. The node handle. The details. The result if the operation was processed. null if the operation needs to be processed as part of a batch in FinishHistoryUpdateEventTransaction. Deletes event history for a group of notifiers. The request context. The transaction. The operation handles. The details. Initializes a new instance of the class. The server. The namespace uris. Frees any unmanaged resources. An overrideable version of the Dispose. THe default permissions for nodes managed by the node manager. Gets the namespace indexes supported by the node manager. Gets the namespace uris supported by the node manager. Gets or sets the default namespace index. The default namespace index. Gets the server manager. Gets the lock to use when accessing the memory nodes. Gets the set of in memory nodes. Adds the namespace URI. The namespace URI. The index assigned to the namespace URI. Determines whether the node id is invalid. The node id. true if the is node id invalid; otherwise, false. Determines whether the node id is invalid. true if the is node id invalid; otherwise, false. Links an object to a node in the address space. This method can be used if the values of the children are stored in a single instance of a class. The values of instance can be accessed by using the specified mapper. The UserData property of the node will be used to store the instance. So this property must not be set after LinkModelToNode called. This method overwrites the old value of UserData. When calling this method, the NodeHandleType of the children of the node in addressspace with NodeClass Variable is set to InternalPolled. The NodeId of the instance in address space. The instance of the ModelControllerBase class. The sync lock for reading and writing the child nodes. If null, the mapped child node will be used. The mapper (if null a reflection based mapper is used). The minimum sampling interval that will be set as node attribute for children. A handle that can be used to unlink the node. Unlinks an object from a node in the address space. The root id. The handle. A class that maps an object to a node. An object used for synchronization The mapper used to get and set the value The object with the node data Determines whether the reference is in the specified view. The request context. The view. The source handle. The reference type id. if set to true then the reference is an inverse reference. The target id. true if the reference is in the view; otherwise, false. Determines whether the specified context has access to the browse handle. The request context. The browse handle. true if the specified context has access; otherwise, false. Determines whether the specified context has access to the browse handle. The request context. The method handle. true if the specified context has access; otherwise, false. Determines whether the current context has specified access to the handle. The request context. The node handle. The desired access masks. true, if the specified context has access; otherwise, false. Determines whether the specified context has access to the history data handle. The request context. The node handle. The desired access masks. true, if the specified context has access; otherwise, false. Determines whether the specified context has access to the history event handle. The request context. The node handle. true if the specified context has access; otherwise, false. Imports the nodeset from an embedded resource. The assembly (if null the calling assembly is used). The resource path. If an exact match is not found the first resource with a path that ends with the resourcePath is used. Imports the ua nodeset from a file. The file. Imports the nodes from the stream. The istrm. Imports the specified nodeset. The nodeset. Imports the list of nodes. The nodes. Adds the reverse reference. Adds a reverse reference. Sets the method dispatcher for a method. The method id. The dispatcher. If NULL any existing dispatcher is removed. This method overrides the default behavoir for selecting method dispatchers (e.g. overriding the GetMethodDispatcher method or by linking an Objects with Methods to a model object). Sets the permissions for a node. The node id. The permissions for the node. True if the permissions should be applied to all child nodes; false otherwise. Sets the permissions for a node. The parent id. The browse name of the variable. The permissions for the node. Returns the permissions for a node. NodeId of the node. The permissions for the specified node. null if no node with nodeId does snot exist in the NodeManager. Gets the user data for a node. The node id. The user data for the node. The user data for a Node passed as the NodeData in all handles created by the NodeManager. Sets the user data for a node. The node id. The user data. The user data for a Node passed as the NodeData in all handles created by the NodeManager. Sets the user data for the child of a node. The parent id. The browse name of the child. The user data. The user data for a Node passed as the NodeData in all handles created by the NodeManager. Sets the variable configuration. The parent id. The browse name of the variable. Type of the handle. The handle data. The variable if found. null if it could not be found. The variable configuration controls how the NodeManager handles I/O for the variable value. The NodeHandleType defines standard values which can be passed as the handleType. The handleData is passed as the UserData when the NodeAttributeHandle. Sets the variable configuration. The variable id. Type of the handle. The handle data. The variable configuration controls how the NodeManager handles I/O for the variable value. The NodeHandleType defines standard values which can be passed as the handleType. The handleData is passed as the UserData when the NodeAttributeHandle. Sets the variable default value. The parent id. The browse name of the variable to find. The value. True if successful, false otherwise. This method sets the value for an in-memory node. It will not affect the value if the handleType set for the variable is not NodeHandleType.Internal Sets the variable value configuration. The variable id. The value. True if successful, false otherwise. This method sets the value for an in-memory node. It will not affect the value if the handleType set for the variable is not NodeHandleType.Internal Sets the node attribute configuration. The node id. The attribute id. Type of the handle. The handle data. The node attribute configuration controls how the NodeManager handles I/O for the attribute value. The NodeHandleType defines standard values which can be passed as the handleType. The handleData is passed as the UserData when the NodeAttributeHandle. Finds the in memory node. The source id. The reference type id. Set to true, if the reference is an inverse reference. The namespace uris. The browse path. The node. null if the nodeId does not refer to an in-memory node managed by the node manager. Finds the in memory node. The source id. The reference type id. Set to true if the reference is an inverse reference. The browse names. The node. null if the nodeId does not refer to an in-memory node managed by the node manager. Finds the in memory node. The source id. The reference type id. Set to true if the reference is an inverse reference. The browse names. The node. null if the nodeId does not refer to an in-memory node managed by the node manager. Finds the in memory node. The node id. The node. null if the nodeId does not refer to an in-memory node managed by the node manager. An interface for methods that can be called on the trace object. Sets the trace level for the server. The request context. The object which the method is being called on. True is trace is enabled; False otherwise; The level of detail in the trace log. Good if the call succeeds; an appropriate error otherwise. Updates the trace configuration. The request context. The object which the method is being called on. The path to the trace file. The maximum log entries per log file. The maximum number of log file backups. If true new log entries are flushed immediately to disk; If false log writes are buffered. Good if the call succeeds; an appropriate error otherwise. The trace object which allows Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. The implementation for the methods defined on the object. A class that declares constants for all DataTypes in the Model. The identifier for the TraceLevel DataType. A class that declares constants for all Objects in the Model. The identifier for the Trace Object. A class that declares constants for all ObjectTypes in the Model. A class that declares constants for all Methods in the Model. The identifier for the Configure Method. The identifier for the SetTraceLevel Method. A class that declares constants for all ReferenceTyped in the Model. A class that declares constants for all Variables in the Model. The identifier for the EnumStrings Variable. The identifier for the InputArguments Object. The identifier for the DefaultTraceLevel Object. The identifier for the FastTrace Object. The identifier for the MasterTraceEnabled Object. The identifier for the MaxEntriesPerLog Object. The identifier for the MaxLogFileBackups Object. The identifier for the InputArguments Object. The identifier for the TraceFilePath Object. A class that declares constants for all VariableTypes in the Model. A class that declares constants for all DataTypes in the Model. The identifier for the BaseDataType DataType. A class that declares constants for all Methods in the Model. The identifier for the Server_Trace_Configure Method. The identifier for the Server_Trace_SetTraceLevel Method. A class that declares constants for all Objects in the Model. The identifier for the Server_Trace Object. A class that declares constants for all Objects in the Model. A class that declares constants for all ReferenceTypes in the Model. A class that declares constants for all Variables in the Model. The identifier for the TraceLevel_EnumStrings Variable. The identifier for the Server_Trace_Configure_InputArguments Variable. The identifier for the Server_Trace_DefaultTraceLevel Variable. The identifier for the Server_Trace_FastTrace Variable. The identifier for the Server_Trace_MasterTraceEnabled Variable. The identifier for the Server_Trace_MaxEntriesPerLog Variable. The identifier for the Server_Trace_MaxLogFileBackups Variable. The identifier for the Server_Trace_SetTraceLevel_InputArguments Variable. The identifier for the Server_Trace_TraceFilePath Variable. A class that declares constants for all VariableType in the Model. Declares all of the BrowseNames used in the Model. The BrowseName for the Configure component. The BrowseName for the DefaultTraceLevel component. The BrowseName for the FastTrace component. The BrowseName for the MasterTraceEnabled component. The BrowseName for the MaxEntriesPerLog component. The BrowseName for the MaxLogFileBackups component. The BrowseName for the SetTraceLevel component. The BrowseName for the Trace component. The BrowseName for the TraceFilePath component. The BrowseName for the TraceLevel component. Defines constants for all namespaces referenced by the Model. The URI for the OpcUa namespace (.NET code namespace is 'Opc.Ua'). The URI for the OpcUaXsd namespace (.NET code namespace is 'Opc.Ua'). The URI for the Model namespace. The URI for the ModelXsd namespace. The possible encodings for a TraceLevel value. A collection of TraceLevel objects. Initializes the collection with default values. Initializes the collection with an initial capacity. Initializes the collection with another collection. Converts an array to a collection. Converts a collection to an array. Creates a deep copy of the collection. A handle for a query. Gets the view handle. Initializes a new instance of the class. The node manager. The node manager. The user access manager. A transaction for one or more call requests for a single IMethodManager. Initializes a new instance of the class. The request context. The callback to invoke when an operation completes. The callback data. Gets a value indicating whether this transaction has items. true if this transaction has items; otherwise, false. The method handles which are part of the transaction. The input arguments for each method call in the transaction. A transaction for history event request. Initializes a new instance of the class. The request context. Type of the transaction. The callback. The callback data. The history data handles used in the transaction. Gets or sets the details. The details. A transaction for history data request. Initializes a new instance of the class. The request context. Type of the transaction. The callback. The callback data. Gets or sets the timestamps to return. The timestamps to return. Gets or sets the details. The details. The history data handles used in the transaction. A handle for a node which supports event history. Initializes a new instance of the class. The history event read manager. The history event update manager. The node manager. The user access manager. The node id. Gets the manager that handles history event reads for the node. Gets the manager that handles history event updates for the node. A handle for a single history event operation within a request. Initializes a new instance of the class. The node handle. Gets the node handle. Gets the manager that handles history event reads for the node. Gets the manager that handles history event updates for the node. Gets the node id. A transaction for one or more requests for a single IIOManager. Initializes a new instance of the class. The request context. Type of the transaction. The callback to call when an operation completes. The callback data. Gets or sets the max age. Gets or sets the timestamps to return. Gets a value indicating whether this transaction has items. true if this transaction has items; otherwise, false. The node handles used in the transaction (empty if the transaction operates on item handles). The monitored item handles used in the transaction (empty if the transaction operates on node handles). A transaction for one or more requests for a single IEventManager. Initializes a new instance of the class. The request context. Type of the transaction. The callback. The callback data. Gets a value indicating whether this transaction has items. true if this transaction has items; otherwise, false. The notifier handles used in the transaction (empty if the transaction operates on item handles). The monitored item handles used in the transaction (empty if the transaction operates on notifier handles). A base class for handles. Initializes a new instance of the class. The node id. The node manager that created the handle. The user access manager. Gets the node id. Gets the node manager that created the handle. The object that is used to check if the current user has access to the node. Gets the type of the handle assigned by the creator of the handle. The type of the handle. Gets or sets the user data associated with the node by the creator of the node. The node data. Gets or sets the opaque data associated with the handle by the creator of the handle. The handle data. Returns a that represents this instance. A that represents this instance. Returns a that represents this instance. The format. The format provider. A that represents this instance. Initializes the object with default values. Frees any unmanaged resources. An overrideable version of the Dispose. Gets or sets the id. The id. Gets or sets the timestamp. The timestamp. Gets or sets the user data. The user data. An interface to an object which provides access to a historical data archive. Begins iterating the historical values for a datasource. The context. The timestamp where the iterating begins. A iterator object that can be used to navigate the archive. An iterator that points to the first value if multiple values exist at the timestamp. An interface to an object which can provide sequential access the values in a historical archive. Moves forward in time to the next raw data point in the archive. True if successful or false if the current position before the beginning of the archive. Moves backward in time to the next raw data point in the archive. True if successful or false if the current position before the beginning of the archive. Resets the specified timestamp. The timestamp. Gets the value at the specified position. The value or null if no data exists at the current position. Gets the modification info for the value at the specified position. The modification info or null if no modification info exists at the current position. \ingroup UaServerInterfaces An interface to an object that allows reading of historical events. Begins the event history transaction. The request context. The total item count hint. Type of the transaction. The details. The callback. The callback data. The historical event transaction handle. Good if the transaction could be created, an error code otherwise. Finishes the event history transaction. The transaction. Begins an operation to read historical events. The operation handle. The notifier to read. Good if successful; Otherwise an error code. If this method returns Good the callback passed to BeginHistoryReadEventTransaction must be called when the operation completes. A function used to report the results of a history read event operation. The operation handle. The callback data. The result. if set to true then do not block thread. \ingroup UaServerInterfaces An interface to an object that allows updating of historical events. Begins the history transaction. The request context. The total item count hint. Type of the transaction. The callback. The callback data. The handle. Good if the transaction could be created, an error code otherwise. Finishes the history event transaction. The transaction. Begins an operation to update event history. The operation handle. The settings. Good if successful; Otherwise an error code. Begins an operation to delete event history. The operation handle. The settings. Good if successful; Otherwise an error code. A function used to report the results of a history update data operation. The operation handle. The callback data. The result. if set to true then do not block thread. \ingroup UaServerInterfaces An interface to an object that allows updating of historical data. Begins the history transaction. The request context. The total item count hint. Type of the transaction. The callback. The callback data. The historical data transaction handle. Good if the transaction could be created, an error code otherwise. Finishes the history transaction. The transaction. Begins an operation to update raw history data. The operation handle. The details. Good if successful; Otherwise an error code. If this method returns Good the callback passed to BeginHistoryUpdateDataTransaction must be called when the operation completes. Begins an operation to update structured history data. The operation handle. The details. Good if successful; Otherwise an error code. If this method returns Good the callback passed to BeginHistoryUpdateDataTransaction must be called when the operation completes. Begins an operation to delete raw history data. The operation handle. The details. Good if successful; Otherwise an error code. If this method returns Good the callback passed to BeginHistoryUpdateDataTransaction must be called when the operation completes. Begins an operation to delete history data at specific times. The operation handle. The details. Good if successful; Otherwise an error code. If this method returns Good the callback passed to BeginHistoryUpdateDataTransaction must be called when the operation completes. A function used to report the results of a history update data operation. The operation handle. The callback data. The result. if set to true then do not block thread. Functions that can be used to optimize common operations in a NodeManager. Gets the supported methods. Gets the node metadata. The request context. The browse handle. The fields to return. The node class filter. The metadata with only the requested fields. null if the node does not have the requested node class. Gets the node attributes. The request context. The browse handle. The expected node class. The subtype of Node depending on the NodeClass. null if the node is not the expected node class. Reads the attribute. The request context. The node handle. The value of the requested attribute. Returns null if the attribute cannot be read with this method (meaning the I/O manager needs to be used). Reads the attribute value for a child node. The data type of the attribute to read. The request context. The node handle. Name of the component. The default value. The value of the variable identified by the component name. The defaultValue if any error occurs. Reads the attribute value for a child node. The data type of the value to read. The request context. The node handle. The browse path. The default value. The value of the variable identified by the browse path. The defaultValue if any error occurs. Writes the attribute. The request context. The node handle. The value to write. Writes the attribute. Returns null if the attribute cannot be written with this method (meaning the I/O manager needs to be used). Writes the attribute value for a child node. The request context. The node handle. Name of the component. The value to write. The result of the operation. Writes the attribute value for a child node. The request context. The node handle. The browse path. The value to write. The result of the operation. The methods supported by the node manager. The GetNodeMetadata method is supported. The GetNodeAttributes method is supported. The ReadAttribute method is supported. The ReadValueWithName method is supported. The ReadValueWithPath method is supported. The ReadAttribute method is supported. The ReadValueWithName method is supported. The ReadValueWithPath method is supported. \ingroup UaServerInterfaces An interface to an object that manages query operations. Begins a query operation. The request context. The continuation point. if set to true then call is to release the continuation point. The callback. The callback data. Good if successful; An error code otherwise. A delegate to report the result of a query operation. The handle associated with the operation. The callback data associated with the request. The datasets that meet the query criteria. A continuation point if the query is not complete. Any errors parsing the NodeTypes passed in the request. NULL for continued queries. Any errors with the ContentFilter passed in the request, NULL for continued queries. True if the current thread must not be blocked; false otherwise. \ingroup UaServerInterfaces An interface to an object that manages access to methods Begins the call transaction. The request context. The total item count hint. The callback. The callback data. The call transaction handle. Good if the transaction could be created, an error code otherwise. Calls the request finished. The transaction. Begins the call. The operation handle. The input arguments. Good if the transaction could be created, an error code otherwise. If this method returns Good the callback passed to BeginDataTransaction must be called when the operation completes. A function that is called when a call operation completes. The handle. The callback data. The result. if set to true then the current thread should not be blocked. \ingroup UaServerInterfaces An interface to an object that allows reading of historical data. Begins the data history transaction. The request context. The total item count hint. The timestamps to return. Type of the transaction. The details. The callback called when an operation completes. The callback data. The historical data transaction handle. Good if the transaction could be created, an error code otherwise. Finishes the data history transaction. The transaction. Begins an operation to read raw history data. The operation handle. The value to read. Good if successful; Otherwise an error code. If this method returns Good the callback passed to BeginHistoryReadDataTransaction must be called when the operation completes. Begins an operation to read raw history data. The operation handle. The value to read. Good if successful; Otherwise an error code. If this method returns Good the callback passed to BeginHistoryReadDataTransaction must be called when the operation completes. Begins an operation to read raw history data. The operation handle. The value to read. Good if successful; Otherwise an error code. If this method returns Good the callback passed to BeginHistoryReadDataTransaction must be called when the operation completes. A function used to report the results of a history read data operation. The operation handle. The callback data. The result. if set to true then do not block thread. The set of all transaction types. The transaction type is not known. A transaction to read the value of one or more attribute values. A transaction to read the raw history for one or more variables. A transaction to read the processed history for one or more variables. A transaction to read the history at the specified times for one or more variables. A transaction to read the event history for one or more notifiers. A transaction to write the value of one or more attribute values. A transaction to update the history for one or more variables. A transaction to update the history for one or more structured variables. A transaction to delete the raw history for one or more variables. A transaction to delete the history at specific times for one or more variables. A transaction to update the event history for one or more notifiers. A transaction to delete the event history for one or more notifiers. A transaction to call one or more methods. A transaction to create one or more monitored items. A transaction to modify one or more monitored items. A transaction to set the monitoring mode for one or more monitored items. A transaction to delete one or more monitored items. The BaseObjectType is used as type definition whenever there is an object having no more concrete type definitions available. Servers should avoid using this ObjectType and use a more specific type, if possible. This ObjectType is the base ObjectType and all other ObjectTypes shall either directly or indirectly inherit from it. However, it might not be possible for Servers to provide all HasSubtype References from this ObjectType to its subtypes, and therefore it is not required to provide this information. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the PercentDataBad Gets or sets the PercentDataGood Gets or sets the TreatUncertainAsBad Gets or sets the UseSlopedExtrapolation Defines an AggregateFunction supported by a UA Server. For the AggregateFunctionType, the Description Attribute is mandatory. The Description Attribute provides a localized description of the AggregateFunction. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the AlarmCount Gets or sets the AverageAlarmRate Gets or sets the CurrentAlarmRate Gets or sets the MaximumActiveState Gets or sets the MaximumAlarmRate Gets or sets the MaximumReAlarmCount Gets or sets the MaximumUnAck Gets or sets the StartTime Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the AlarmMetrics methods. The AlarmMetrics methods. The interface for methods implemented on the AlarmMetricsModel object. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the IssuerEndpointUrl Gets or sets the ServiceCertificate Gets or sets the ServiceUri Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. An abstract base type for types that describe the purpose of a certificate. Initializes a new instance of the class. Initializes a new instance of the class. The template. An abstract base type for types that describe the purpose of an ApplicationInstance certificate. Initializes a new instance of the class. Initializes a new instance of the class. The template. This type is used to describe Certificates intended for use as an ApplicationInstance certificate. They shall have an RSA key size of 1024 or 2048 bits and are signed with a SHA1 hash. All applications which support the Basic128Rsa15 and Basic256 profiles (see Part 7 of the OPC UA Specification) need a certificate of this type. Initializes a new instance of the class. Initializes a new instance of the class. The template. This type is used to describe certificate s intended for use as an ApplicationInstance certificate. They shall have an RSA key size of 2048, 3072 or 4096 bits and are signed with a SHA256 hash. All applications which support the Basic256Sha256 profile (see Part 7 of the OPC UA Specification) need a certificate of this type. Initializes a new instance of the class. Initializes a new instance of the class. The template. This type is used to describe Certificates that are intended for use as HTTPS certificates. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the AuthenticationProfileUri Gets or sets the ResourceUri Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the DiscoveryAddress Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the DataSetMessageContentMask Gets or sets the NetworkMessageContentMask Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the DataSetClassId Gets or sets the DataSetMessageContentMask Gets or sets the DataSetOffset Gets or sets the DataSetOrdering Gets or sets the GroupVersion Gets or sets the NetworkMessageContentMask Gets or sets the NetworkMessageNumber Gets or sets the ProcessingOffset Gets or sets the PublishingInterval Gets or sets the ReceiveOffset Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the AuthenticationProfileUri Gets or sets the MetaDataQueueName Gets or sets the QueueName Gets or sets the RequestedDeliveryGuarantee Gets or sets the ResourceUri Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the DataSetFieldContentMask Gets or sets the DataSetMetaData Gets or sets the DataSetReaderProperties Gets or sets the DataSetWriterId Gets or sets the Diagnostics Gets or sets the HeaderLayoutUri Gets or sets the KeyFrameCount Gets or sets the MessageReceiveTimeout Gets or sets the MessageSettings Gets or sets the PublisherId Gets or sets the SecurityGroupId Gets or sets the SecurityKeyServices Gets or sets the SecurityMode Gets or sets the Status Gets or sets the SubscribedDataSet Gets or sets the TransportSettings Gets or sets the WriterGroupId Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the DataSetReader methods. The DataSetReader methods. The interface for methods implemented on the DataSetReaderModel object. out: out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the DataSetMessageContentMask Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the ConfiguredSize Gets or sets the DataSetMessageContentMask Gets or sets the DataSetOffset Gets or sets the NetworkMessageNumber Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the AuthenticationProfileUri Gets or sets the MetaDataQueueName Gets or sets the MetaDataUpdateTime Gets or sets the QueueName Gets or sets the RequestedDeliveryGuarantee Gets or sets the ResourceUri Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the DataSetFieldContentMask Gets or sets the DataSetWriterId Gets or sets the DataSetWriterProperties Gets or sets the Diagnostics Gets or sets the KeyFrameCount Gets or sets the MessageSettings Gets or sets the Status Gets or sets the TransportSettings Used as type for DataTypeEncodings. Different kinds of DataTypes are handled differently regarding their encoding and whether this encoding is represented in the AddressSpace. Built-in DataTypes are a fixed set of DataTypes (see Part 6 of the OPC UA Specification for a complete list of Built-in DataTypes). They have no encodings visible in the AddressSpace since the encoding should be known to all OPC UA products. Examples of Built-in DataTypes are Int32 and Double. Simple DataTypes are subtypes of the Built-in DataTypes. They are handled on the wire like the Built-in DataType, i.e. they cannot be distinguished on the wire from their Built-in supertypes. Since they are handled like Built-in DataTypes regarding the encoding they cannot have encodings defined in the AddressSpace. Clients can read the DataType Attribute of a Variable or VariableType to identify the Simple DataType of the Value Attribute. An example of a Simple DataType is Duration. It is handled on the wire as a Double but the Client can read the DataType Attribute and thus interpret the value as defined by Duration. Structured DataTypes are DataTypes that represent structured data and are not defined as Built-in DataTypes. Structured DataTypes inherit directly or indirectly from the DataType Structure. Structured DataTypes may have several encodings and the encodings are exposed in the AddressSpace. How the encoding of Structured DataTypes is handled on the wire is defined in Part 6 of the OPC UA Specification. The encoding of the Structured DataType is transmitted with each value, thus Clients are aware of the DataType without reading the DataType Attribute. The encoding has to be transmitted so the Client is able to interpret the data. An example of a Structured DataType is Argument. Enumeration DataTypes are DataTypes that represent discrete sets of named values. Enumerations are always encoded as Int32 on the wire as defined in Part 6 of the OPC UA Specification. Enumeration DataTypes inherit directly or indirectly from the DataType Enumeration. Enumerations have no encodings exposed in the AddressSpace. To expose the human-readable representation of an enumerated value the DataType Node may have the EnumStrings Property that contains an array of LocalizedText. The Integer representation of the enumeration value points to a position within that array. The EnumValues Property can be used instead of the EnumStrings to support integer representation of enumerations that are not zero-based or have gaps. It contains an array of a Structured DataType containing the integer representation as well as the human-readable representation. An example of an enumeration DataType containing a sparse list of Integers is NodeClass. In addition to the DataTypes described above, abstract DataTypes are also supported, which do not have any encodings and cannot be exchanged on the wire. Variables and VariableTypes use abstract DataTypes to indicate that their Value may be any one of the subtypes of the abstract DataType. An example of an abstract DataType is Integer. Initializes a new instance of the class. Initializes a new instance of the class. The template. Used as type for DataTypeSystems. See Part 3 of the OPC UA Specification for a definition of DataTypeSystems. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the ExtensionFields methods. The ExtensionFields methods. The interface for methods implemented on the ExtensionFieldsModel object. out: The interface for methods implemented on the FileModel object. Closes a file represented by a . When a client closes a file, the handle becomes invalid. A handle returned by the method, indicating the access request and thus indirectly the position inside the file. Provides the current position of the FileHandle. A handle returned by the method, indicating the access request and thus indirectly the position inside the file. The position of the FileHandle in the file. If or is called, it starts at that position. Opens a file represented by an object of . When a client opens a file, it gets a FileHandle that is valid while the session is open. Clients shall use the method to release the handle when they do not need access to the file anymore. Clients can open the same file several times for reading. A request to open for writing shall return Bad_NotWritable when the file is already opened. Indicates whether the file should be opened only for read operations or for read and write operations and where the initial position is set. The mode is an 8-bit unsigned integer used as bit mask with the structure defined in the following table: Field | Bit | Description --------------|-----|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Read | 0 | The file is opened for reading. If this bit is not set the method cannot be executed. Write | 1 | The file is opened for writing. If this bit is not set the method cannot be executed. EraseExisting | 2 | This bit can only be set if the file is opened for writing (Write bit is set). The existing content of the file is erased and an empty file is provided. Append | 3 | When the Append bit is set the file is opened at end of the file, otherwise at begin of the file. The Method can be used to change the position. A handle for the file used in other method calls indicating not the file (this is done by the object of the method call) but the access request and thus the position in the file. The FileHandle is generated by the server and is unique for the Session. Clients cannot transfer the FileHandle to another Session but need to get a new FileHandle by calling the method. Reads a part of the file starting from the current file position. The file position is advanced by the number of bytes read. A handle returned by the method, indicating the access request and thus indirectly the position inside the file. Defines the length in bytes that should be returned in data, starting from the current position of the file handle. If the end of file is reached, all data until the end of the file is returned. The Server is allowed to return less data than the specified length. Only positive values are allowed. Contains the returned data of the file. If the ByteString is empty, it indicates that the end of the file is reached. Sets the current position of the FileHandle. A handle indicating the access request and thus indirectly the position inside the file. The position to be set for the FileHandle in the file. If or is called, it starts at that position. If the position is higher than the file size, the position is set to the end of the file. Writes a part of the file starting from the current file position. The file position is advanced by the number of bytes written A handle returned by the method, indicating the access request and thus indirectly the position inside the file. Contains the data to be written at the position of the file. It is server-dependent whether the written data are persistently stored if the session is ended without calling the method with the FileHandle. Writing an empty or null ByteString returns a Good result code without any effect on the file. This object type defines the file for a namespace provided by the OPC UA Server. It represents an XML address space file using the XML schema defined in Part 6 of the OPC UA Specification. Servers might provide some vendor-specific mechanisms importing parts of an address space as subtype of this object type, for example by defining appropriate methods. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. The interface for methods implemented on the AddressSpaceFileModel object. Provides a way to export the namespace from the Server address space to the XML file represented by the AddressSpaceFileType. Value attributes are only exported if they represent static configuration information. The client is expected to call the ExportNamespace method first to update the XML file and then access the file with the methods defined in the . The interface for methods implemented on the TrustListModel object. Allows a Client to add a single certificate to the trust list. The Server shall verify that the certificate is valid according to the mandatory rules defined in Part 4 of the OPC UA Specification. If an invalid certificate is found, the Server shall return an error and shall not update the trust list. This method cannot be called if the file object is open. Method Result Codes Result Code | Description -----------------------|----------------------------------------------------- Bad_UserAccessDenied | The current user does not have the rights required. Bad_CertificateInvalid | The certificate to add is invalid. Bad_InvalidState | The object is opened. The DER encoded certificate to add. If TRUE, the certificate is added to the trusted certificate s list. If FALSE, the certificate is added to the Issuer certificate s list. Closes the file and applies the changes to the trust list. This method can only be called if the file was opened for writing. If the Close method is called, any cached data is discarded and the trust list is not changed. The Server shall verify that every certificate in the new trust list is valid according to the mandatory rules defined in Part 4 of the OPC UA Specification. If an invalid certificate is found, the Server shall return an error and shall not update the trust list. If only part of the trust list is being updated, the Server creates a temporary trust list that includes the existing trust list plus any updates and validates the temporary trust list. If the file cannot be processed, this method still closes the file and discards the data before returning an error. This method is required if the Server supports updates to the trust list. The structure uploaded includes a mask that specifies which fields are updated. If a bit is not set, the associated field is not changed. Method Result Codes Result Code | Description -----------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------- Bad_UserAccessDenied | The current user does not have the rights required. Bad_CertificateInvalid | The Server could not validate all certificate s in the trust list. The DiagnosticInfo shall specify which certificate (s) are invalid and the specific error. The handle of the previously opened file. A flag indicating whether the method must be called before the new trust list will be used by the Server. Allows a Client to read only the portion of the trust list. This method can only be used to read the trust list. Method Result Codes Result Code | Description ---------------------|----------------------------------------------------- Bad_UserAccessDenied | The current user does not have the rights required. The parts of the trust list that are to be included in the file to read. The handle of the newly opened file. Allows a Client to remove a single certificate from the trust list. This method returns Bad_InvalidArgument if the thumbprint does not match a certificate in the trust list. This method cannot be called if the file object is open. Method Result Codes Result Code | Description ---------------------|----------------------------------------------------- Bad_UserAccessDenied | The current user does not have the rights required. Bad_InvalidArgument | The certificate to remove was not found. Bad_InvalidState | The object is opened. The SHA1 hash of the certificate to remove. If TRUE, the certificate is removed from the trusted certificate s list. If FALSE, the certificate is removed from the Issuer certificate s list. Instances of this Type are used to organise the AddressSpace into a hierarchy of Nodes. They represent the root Node of a subtree, and have no other semantics associated with them. However, the DisplayName of an instance of the FolderType, such as “ObjectTypes”, should imply the semantics associated with the use of it. There are no References specified for this ObjectType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. This type is used for Folders which organize certificate groups in the address space. Initializes a new instance of the class. Initializes a new instance of the class. The template. Represents the default certificate group for applications. This object is used to access the default application trust list and to define the CertificateTypes allowed for the ApplicationInstance certificate. It shall specify the NodeId as a single entry in the CertificateTypes list, or it shall specify one or more subtypes of . Represents the default certificate group for HTTPS communication. This object is used to access the default HTTPS trust list and to define the CertificateTypes allowed for the HTTPS certificate. It shall specify the NodeId as a single entry in the CertificateTypes list or it shall specify one or more subtypes of . Represents the default certificate group for validating user credentials. This object is used to access the default user credential trust list and to define the CertificateTypes allowed for user credentials certificate. trust list and to define the CertificateTypes allowed for user credentials certificate. This object shall leave CertificateTypes list empty. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the DataSetFolder methods. The DataSetFolder methods. The interface for methods implemented on the DataSetFolderModel object. out: out: out: out: out: out: out: out: out: The interface for methods implemented on the FileDirectoryModel object. Creates a new FileDirectoryType object organized by this object. Method Result Codes Result Code | Description -------------------------|----------------------------------------------------------------------- Bad_BrowseNameDuplicated | A directory with the name already exists. Bad_UserAccessDenied | The user does not have permission to perform the requested operation. The name of the directory to create. The name is used for the BrowseName and DisplayName of the directory object and also for the directory in the file system. For the BrowseName, the directoryName is used for the name part of the QualifiedName. The namespace index is Server specific. For the DisplayName, the directoryName is used for the text part of the LocalizedText. The locale part is Server specific. The NodeId of the created directory object. Creates a new object organized by this object. The created file can be written using the method of the . Method Result Codes Result Code | Description -------------------------|----------------------------------------------------------------------- Bad_BrowseNameDuplicated | A file with the name already exists. Bad_UserAccessDenied | The user does not have permission to perform the requested operation. The name of the file to create. The name is used for the BrowseName and DisplayName of the file object and also for the file in the file system. For the BrowseName, the FileName is used for the name part of the QualifiedName. The namespace index is Server specific. For the DisplayName, the FileName is used for the text part of the LocalizedText. The locale part is Server specific. Flag indicating whether the new file should be opened with the Write and Read bits set in the open mode after the creation of the file. If the flag is set to True, the file is created and opened for writing. If the flag is set to False, the file is just created. The NodeId of the created file object. The FileHandle is returned if RequestFileOpen is set to True. The FileNodeId and the FileHandle can be used to access the new file through the object representing the new file. If RequestFileOpen is set to False, the returned value shall be 0 and shall be ignored by the caller. Deletes a file or directory organized by this object. Method Result Codes Result Code | Description ---------------------|------------------------------------------------------------------------------- Bad_NotFound | A file or directory with the provided NodeId is not organized by this object. Bad_InvalidState | The file or directory is locked and thus cannot be deleted. Bad_UserAccessDenied | The user does not have permission to perform the requested operation. The NodeId of the file or directory to delete. In the case of a directory, all file and directory objects below the directory to delete are deleted recursively. Moves or copies a file or directory organized by this object to another directory or renames a file or directory. Method Result Codes Result Code | Description -------------------------|------------------------------------------------------------------------------- Bad_BrowseNameDuplicated | A file or directory with the name already exists. Bad_NotFound | A file or directory with the provided NodeId is not organized by this object. Bad_InvalidState | The file or directory is locked and thus cannot be moved or copied. Bad_UserAccessDenied | The user does not have permission to perform the requested operation. The NodeId of the file or directory to move or copy. The NodeId of the target directory of the move or copy command. If the file or directory is just renamed, the targetDirectory matches the ObjectId passed to the method call. A flag indicating whether a copy of the file or directory should be created at the target directory. The new name of the file or directory in the new location. If the string is empty, the name is unchanged. The NodeId of the moved or copied object. Even if the object is moved, the Server may return a new NodeId. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the KeyCredentialConfigurationFolder methods. The KeyCredentialConfigurationFolder methods. The interface for methods implemented on the KeyCredentialConfigurationFolderModel object. out: Used to identify the operation limits of the OPC UA Server. Initializes a new instance of the class. Initializes a new instance of the class. The template. Indicates the maximum size of the itemsToCreate array when a Client calls the CreateMonitoredItems service, the maximum size of the itemsToModify array when a Client calls the ModifyMonitoredItems service, the maximum size of the monitoredItemIds array when a Client calls the SetMonitoringMode service or the DeleteMonitoredItems service, the maximum size of the linksToAdd and the linksToRemove arrays when a Client calls the SetTriggering service. Indicates the maximum size of the nodesToBrowse array when calling the Browse service or the continuationPoints array when a Client calls the BrowseNext service. Indicates the maximum size of the nodesToRead array when a Client calls the HistoryRead service using the histroyReadDetails RAW, PROCESSED, MODIFIED or ATTIME. Indicates the maximum size of the nodesToRead array when a client calls the HistoryRead Service using the historyReadDetails EVENTS. Indicates the maximum size of the historyUpdateDetails array supported by the Server when a Client calls the HistoryUpdate service. Indicates the maximum size of the historyUpdateDetails array when a Client calls the HistoryUpdate service. Indicates the maximum size of the methodsToCall array when a Client calls the Call service. Indicates the maximum size of the nodesToAdd array when a Client calls the AddNodes service, the maximum size of the referencesToAdd array when a Client calls the AddReferences service, the maximum size of the nodesToDelete array when a Client calls the DeleteNodes service, and the maximum size of the referencesToDelete array when a Client calls the DeleteReferences service. Indicates the maximum size of the nodesToRead array when a Client calls the Read service. Indicates the maximum size of the nodesToRegister array when a Client calls the RegisterNodes service and the maximum size of the nodesToUnregister when calling the UnregisterNodes service. Indicates the maximum size of the browsePaths array when a Client calls the TranslateBrowsePathsToNodeIds service. Indicates the maximum size of the nodesToWrite array when a Client calls the Write service. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the SecurityGroupFolder methods. The SecurityGroupFolder methods. The interface for methods implemented on the SecurityGroupFolderModel object. out: out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the AggregateConfiguration Gets or sets the AggregateFunctions Gets or sets the Definition Gets or sets the ExceptionDeviation Gets or sets the ExceptionDeviationFormat Gets or sets the MaxTimeInterval Gets or sets the MinTimeInterval Gets or sets the StartOfArchive Gets or sets the StartOfOnlineArchive Gets or sets the Stepped The objects for any OPC UA Server supporting Historical Access shall contain a Reference to a HistoryServerCapabilitiesType object. The content of this is already defined by its type definition in Part 5 of the OPC UA Specification. The object extensions are intended to inform a Client of the general capabilities of the server. They do not guarantee that all capabilities will be available for all Nodes. For example, not all Nodes will support Events, or in the case of an aggregating server where underlying servers may not support Insert or a particular Aggregate. In such cases, the HistoryServerCapabilities Property would indicate the capability is supported, and the server would return appropriate StatusCodes for situations where the capability does not apply. All UA servers that support Historical access shall include the HistoryServerCapabilities as part of its ServerCapabilities. Initializes a new instance of the class. Initializes a new instance of the class. The template. Defines if the server supports access to historical data values. A value of True indicates the server supports access to history for HistoricalNodes, a value of False indicates the server does not support access to history for HistoricalNodes. The default value is False. At least one of AccessHistoryDataCapability or AccessHistoryEventsCapability shall have a value of True for the server to be a valid OPC UA Server supporting Historical Access. Defines if the server supports access to historical Events. A value of True indicates the server supports access to history of Events, a value of False indicates the server does not support access to history of Events. The default value is False. At least one of AccessHistoryDataCapability or AccessHistoryEventsCapability shall have a value of True for the server to be a valid OPC UA Server supporting Historical Access. An entry point to browse to all Aggregate capabilities supported by the server for Historical Access. All HistoryAggregates supported by the Server should be able to be browsed starting from this object. Aggregates are defined in Part 13 of the OPC UA Specification. If the Server does not support Aggregates the Folder is left empty. Indicates support for the delete raw values capability. A value of True indicates the server supports the capability to delete raw data values in history. The default value is False. Indicates support for the deletion of Events capability. A value of True indicates the server supports the capability to delete Events in history. The default value is False. Indicates support for the delete raw values capability. A value of True indicates the server supports the capability to delete raw data values in history. The default value is False. Indicates support for Annotations. A value of True indicates the server supports the capability to insert Annotations. Some Servers that support Inserting of Annotations will also support editing and deleting of Annotations. The default value is False. Indicates support for the Insert capability. A value of True indicates the server supports the capability to insert new data values in history, but not overwrite existing values. The default value is False. Indicates support for the Insert capability. A value of True indicates the server supports the capability to insert new Events in history. An insert is not a replace. The default value is False. Defines maximum number of values that can be returned by the server for each HistoricalNode accessed during a request. A value of 0 indicates that the server forces no limit on the number of values it can return. It is valid for a server to limit the number of returned values and return a continuation point even if MaxReturnValues = 0. For example, it is possible that although the server does not impose any restrictions, the underlying system may impose a limit that the server is not aware of. The default value is 0. Specifies the maximum number of Events that a server can return for a HistoricalEventNode. A value of 0 indicates that the server forces no limit on the number of values it can return. It is valid for a server to limit the number of returned values and return a continuation point even if MaxReturnValues = 0. For example, it is possible that although the server does not impose any restrictions, the underlying system may impose a limit that the server is not aware of. The default value is 0. Indicates support for the Replace capability. A value of True indicates the server supports the capability to replace existing data values in history, but will not insert new values. The default value is False. Indicates support for the Replace capability. A value of True indicates the server supports the capability to replace existing Events in history. A replace is not an insert. The default value is False. Indicates support for the Update capability. A value of True indicates the server supports the capability to insert new data values into history if none exists, and replace values that currently exist. The default value is False. Indicates support for the Update capability. A value of True indicates the server supports the capability to insert new Events into history if none exists, and replace values that currently exist. The default value is False. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the EndpointUrls Gets or sets the ProfileUri Gets or sets the ResourceUri Gets or sets the ServiceStatus Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the KeyCredentialConfiguration methods. The KeyCredentialConfiguration methods. The interface for methods implemented on the KeyCredentialConfigurationModel object. out: out: This object type defines the metadata for a namespace provided by the Server. Instances of this object allow Servers to provide more information like version information in addition to the namespace URI. Important information for aggregating Servers is provided by the StaticNodeIdTypes, StaticNumericNodeIdRange and StaticStringNodeIdPattern properties. The browse name of instances of this type shall be derived from the represented namespace. This can, for example, be done by using the index of the namespace in the namespace array as namespaceIndex of the and the namespace URI as name of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the DefaultAccessRestrictions Gets or sets the DefaultRolePermissions Gets or sets the DefaultUserRolePermissions Defines whether all nodes of the namespace are accessible in the Server or only a subset. It is set to FALSE if the full namespace is provided and TRUE if not. Static nodes are identical for all attributes in all Servers, including the Value attribute. For type definition nodes, also the instance declarations shall be identical. That means that for static nodes the semantic is always the same. Namespaces with static nodes are for example namespaces defined by standard bodies like the OPC Foundation. This is important information for aggregating Servers. If the namespace is dynamic and used in several Servers the aggregating Server needs to distinguish the namespace for each aggregated Server. The static nodes of a namespace only need to be handled once, even if it they are used by several aggregated Servers. Contains all nodes and references of the namespace in an XML file where the information model XML schema is defined in Part 6 of OPC UA Specification. The XML file is provided through an AddressSpaceFileType object. Provides the publication date of the namespace version. This property value can be used by Clients to determine the latest version if different versions are provided by different Servers. Contains the namespace represented by an instance of the MetaDataType. Provides version information for the namespace. It is intended for display purposes and shall not be used to programmatically identify the latest version. Provides a list of IdTypes used for static nodes. All nodes in the address space of the namespace using one of the IdTypes in the array shall be static nodes. Provides a list of NumericRanges used for numeric NodeIds of static nodes. If the StaticNodeIdTypes property contains an entry for numeric NodeIds then this property is ignored. Provides a regular expression as defined for the Like operator defined in Part 4 of the OPC UA Specification to filter for string NodeIds of static nodes. If the StaticNodeIdTypes property contains an entry for string NodeIds, this property is ignored. Defines a list of objects provided by the Server. The object type contains a list of objects representing the namespaces in the Server. The browse name of an object shall be derived from the namespace represented by the object. This can, for example, be done by using the index of the namespace in the namespace array as namespaceIndex of the QualifiedName and the namespace URI as name of the QualifiedName. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the NetworkInterface Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Url Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the ConfigurationVersion Gets or sets the DataSetClassId Gets or sets the DataSetMetaData Gets or sets the ExtensionFields Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the PublishedData Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the PublishedDataItems methods. The PublishedDataItems methods. The interface for methods implemented on the PublishedDataItemsModel object. out: out: out: out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the PubSubEventNotifier Gets or sets the Filter Gets or sets the SelectedFields Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the PublishedEvents methods. The PublishedEvents methods. The interface for methods implemented on the PublishedEventsModel object. out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Address Gets or sets the ConnectionProperties Gets or sets the Diagnostics Gets or sets the PublisherId Gets or sets the Status Gets or sets the TransportProfileUri Gets or sets the TransportSettings Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the PubSubConnection methods. The PubSubConnection methods. The interface for methods implemented on the PubSubConnectionModel object. out: out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Counters Gets or sets the DiagnosticsLevel Gets or sets the LiveValues Gets or sets the SubError Gets or sets the TotalError Gets or sets the TotalInformation Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the PubSubDiagnostics methods. The PubSubDiagnostics methods. The interface for methods implemented on the PubSubDiagnosticsModel object. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the LiveValues Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Counters Gets or sets the LiveValues Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Counters Gets or sets the LiveValues Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Counters Gets or sets the LiveValues Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the LiveValues Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Counters Gets or sets the LiveValues Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the GroupProperties Gets or sets the MaxNetworkMessageSize Gets or sets the SecurityGroupId Gets or sets the SecurityKeyServices Gets or sets the SecurityMode Gets or sets the Status Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Diagnostics Gets or sets the MessageSettings Gets or sets the TransportSettings Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the ReaderGroup methods. The ReaderGroup methods. The interface for methods implemented on the ReaderGroupModel object. out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Diagnostics Gets or sets the HeaderLayoutUri Gets or sets the KeepAliveTime Gets or sets the LocaleIds Gets or sets the MessageSettings Gets or sets the Priority Gets or sets the PublishingInterval Gets or sets the TransportSettings Gets or sets the WriterGroupId Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the WriterGroup methods. The WriterGroup methods. The interface for methods implemented on the WriterGroupModel object. out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the SecurityGroups Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the PubSubKeyService methods. The PubSubKeyService methods. The interface for methods implemented on the PubSubKeyServiceModel object. out: out: out: out: out: out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Diagnostics Gets or sets the PublishedDataSets Gets or sets the Status Gets or sets the SupportedTransportProfiles Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. The interface for methods implemented on the PublishSubscribeModel object. out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the State Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the PubSubStatus methods. The PubSubStatus methods. The interface for methods implemented on the PubSubStatusModel object. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. A container for the roles supported by the server. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the RoleSet methods. The RoleSet methods. The interface for methods implemented on the RoleSetModel object. out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Applications Gets or sets the ApplicationsExclude Gets or sets the Endpoints Gets or sets the EndpointsExclude Gets or sets the Identities Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the Role methods. The Role methods. The interface for methods implemented on the RoleModel object. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the KeyLifetime Gets or sets the MaxFutureKeyCount Gets or sets the MaxPastKeyCount Gets or sets the SecurityGroupId Gets or sets the SecurityPolicyUri Defines the capabilities supported by the OPC UA Server. Initializes a new instance of the class. Initializes a new instance of the class. The template. AggregateFunctions is an entry point to browse to all AggregateFunctions supported by the Server. All AggregateFunctions supported by the server should be able to be browsed starting from this object. AggregateFunctions are objects of AggregateFunctionType. An array of LocaleIds that are known to be supported by the Server. The Server might not be aware of all LocaleIds that it supports, because it may provide access to underlying servers, systems or devices that do not report the LocaleIds that they support. Indicates the maximum length of a one or multidimensional array supported by variables of the Server. In a multidimensional array it indicates the overall length. For example, a three-dimensional array of 2x3x10 has the array length of 60. The Server might further restrict the length for individual variables without notice to the client. Servers may use the property MaxArrayLength defined in Part 3 of the OPC UA Specification on individual DataVariables to specify the size on individual values. The individual property may have a larger or smaller value than MaxArrayLength. An integer specifying the maximum number of parallel continuation points of the Browse service that the Server can support per session. The value specifies the maximum the Server can support under normal circumstances, so there is no guarantee that the Server can always support the maximum. The client should not open more Browse calls with open continuation points than exposed in this variable. The value 0 indicates that the Server does not restrict the number of parallel continuation points the client should use. Indicates the maximum number of bytes in a ByteString supported by variables or FileType objects of the Server. The Server might further restrict the ByteString length for individual variables or FileType objects without notice to the Client. Servers may use the property MaxByteStringLength on individual data variables to specify the length on individual values or on FileType objects to specify the maximum size of read and write buffers. The individual property may have larger or smaller values than MaxByteStringLength. An integer specifying the maximum number of parallel continuation points of the HistoryRead services that the Server can support per session. The value specifies the maximum the Server can support under normal circumstances, so there is no guarantee the Server can always support the maximum. The client should not open more HistoryRead calls with open continuation points than exposed in this Variable. The value 0 indicates that the Server does not restrict the number of parallel continuation points the client should use. An integer specifying the maximum number of parallel continuation points of the QueryFirst services that the Server can support per session. The value specifies the maximum the Server can support under normal circumstances, so there is no guarantee that the Server can always support the maximum. The client should not open more QueryFirst calls with open continuation points than exposed in this Variable. The value 0 indicates that the Server does not restrict the number of parallel continuation points the client should use. Indicates the maximum number of characters in strings supported by variables of the Server. The Server might further restrict the string length for individual variables without notice to the client. Servers may use the property MaxStringLength defined in Part 3 of the OPC UA Specification on individual DataVariables to specify the length on individual values. The individual property may have larger or smaller values than MaxStringLength. Defines the minimum supported sample rate, including 0, which is supported by the Server. ModellingRules is an entry point to browse to all ModellingRules supported by the Server. All ModellingRules supported by the Server should be able to be browsed starting from this Object. OperationLimits is an entry point to access information on operation limits of the Server, for example the maximum length of an array in a read service call. Gets or sets the RoleSet
Describes the roles supported by the server.
Lists the profiles that the Server supports. See Part 7 of the OPC UA Specification for the definitions of Server profiles. This list should be limited to the profiles the Server supports in its current configuration. An array of SignedSoftwareCertificates containing all SoftwareCertificates supported by the Server. A SoftwareCertificate identifies capabilities of the Server. It contains the list of profiles supported by the Server. Profiles are described in Part 7 of the OPC UA Specification. This type defines an ObjectType which represents the configuration of a Server which supports Push Management. There is always exactly one instance in the Server address space. Initializes a new instance of the class. Initializes a new instance of the class. The template. The CertificateGroups object organizes the certificate groups supported by the Server. It is described in . Servers shall support the and may support the or the . Servers may support additional certificate groups depending on their requirements. For example, a Server with two network interfaces may need a different trust list for each interface. The second trust list would be represented as a new CertificateGroupType object organized by CertificateGroups Folder. The maximum size of the trust list in bytes. 0 means no limit. If TRUE, the Server announces itself using multicast DNS. It can be changed by writing to the variable. Specifies the capabilities which the Server supports. The value is the same as the value reported to the LocalDiscoveryServer when the Server calls the RegisterServer2 Service. \todo ServerCapabilitiesIdentifiers irgendwo listen? Specifies the PrivateKey formats supported by the Server. Possible values include “PEM” (see RFC 5958, txt file) or “PFX” (see PKCS #12, pdf file). The array is empty if the Server does not allow external Clients to update the PrivateKey. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the ServerConfiguration methods. The ServerConfiguration methods. The interface for methods implemented on the ServerConfigurationModel object. Used to tell the Server to apply any security changes. This method should only be called if a previous call to a method that changed the configuration returns ApplyChangesRequired=true (see ). ApplyChanges can have different meanings depending on the Server architecture. In the ideal case it would only require the endpoints to be closed and reopened. However, it could require a complete Server shutdown and restart. This method requires an encrypted channel and that the Client provides credentials with administrative rights on the Server. Method Result Codes Result Code | Description ---------------------|----------------------------------------------------- Bad_UserAccessDenied | The current user does not have the rights required. Asks the Server to create a PKCS#10 DER encoded certificate request that is signed with the Server’s private key. This request can be then used to request a certificate from a CA that expects requests in this format. See RFC 2986 (txt file) for a description of PKCS#10. This method requires an encrypted channel and that the Client provides credentials with administrative rights on the Server. Method Result Codes Result Code | Description ---------------------|------------------------------------------------------------------------ Bad_InvalidArgument | The CertificateTypeId, certificateGroupId or SubjectName is not valid. Bad_UserAccessDenied | The current user does not have the rights required. The NodeId of the certificate group object which is affected by the request. If null, the is used. The type of certificate being requested. The set of permitted types is specified by the property belonging to the certificate group. The subject name to use in the certificate request. If not specified, the SubjectName from the current certificate is used. Flag indicating whether to create a new private key. If TRUE, the Server shall create a new private key which it stores until the matching signed certificate is uploaded with the method. Previously created private keys may be discarded if was not called before calling this method again. If FALSE, the Server uses its existing private key. Additional entropy which the caller shall provide if RegeneratePrivateKey is TRUE. It shall be at least 32 bytes long. The PKCS#10 DER encoded certificate request. Returns the list of Certificates that have been rejected by the Server. No rules are defined for how the Server updates this list or how long a certificate is kept in the list. It is recommended that every valid but untrusted certificate be added to the rejected list as long as storage is available. Servers should omit older entries from the list returned if the maximum message size is not large enough to allow the entire list to be returned. This method requires an encrypted channel and that the Client provides credentials with administrative rights on the Server. Method Result Codes Result Code | Description ---------------------|----------------------------------------------------- Bad_UserAccessDenied | The current user does not have the rights required. The DER encoded form of the Certificates rejected by the Server. Used to update a certificate for a Server. There are the following three use cases for this method. - The new certificate was created based on a signing request created with the method . In this case, there is no PrivateKey provided. - A new PrivateKey and certificate were created outside the Server and both are updated with this method. - A new certificate was created and signed with the information from the old Certificate. In this case, there is no PrivateKey provided. The Server shall do all normal integrity checks on the certificate and all of the issuer certificates. If errors occur, the Bad_SecurityChecksFailed error is returned. The Server shall report an error if the public key does not match the existing certificate and PrivateKey was not provided. This method requires an encrypted channel and that the Client provides credentials with administrative rights on the Server. This method may require the method to be called. Method Result Codes Result Code | Description -------------------------|------------------------------------------------------------------- Bad_InvalidArgument | The CertificateTypeId or certificateGroupId is not valid. Bad_CertificateInvalid | The certificate is invalid or the format is not supported. Bad_NotSupported | The PrivateKey is invalid or the format is not supported. Bad_UserAccessDenied | The current user does not have the rights required. Bad_SecurityChecksFailed | Some failure occurred verifying the integrity of the certificate. The NodeId of the certificate group object which is affected by the update. If null the DefaultApplicationGroup is used. The type of certificate being updated. The set of permitted types is specified by the property belonging to the certificate group. The DER encoded certificate which replaces the existing certificate. The issuer certificates needed to verify the signature on the new certificate. The format of the private key (PEM or PFX). If the privateKey is not specified the privateKeyFormat is null or empty. The private key encoded in the PrivateKeyFormat. Indicates that the method must be called before the new certificate will be used. This object type defines the redundancy capabilities supported by the OPC UA Server. Initializes a new instance of the class. Initializes a new instance of the class. The template. Indicates what redundancy is supported by the Server. Its values are defined in . It shall be set to NONE_0 for all instances of the ServerRedundancyType using the object type directly (no subtype). Identifies the capabilties of server that supports non-transparent redundancy. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the ServerUriArray
A list of servers in the same redundant set.
Identifies the capabilties of server that supports transparent redundancy. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the CurrentServerId
The ID of the server that is currently in use.
Gets or sets the RedundantServerArray
A list of servers in the same redundant set.
The interface for methods implemented on the ServerModel object. Used to identify the monitored items of a subscription. The intended usage is defined in Part 4 of the OPC UA Specification. Method Result Codes: Result Code | Description --------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------- Bad_SubscriptionIdInvalid | The subscription id is not valid. Bad_UserAccessDenied | User does not have permission to perform the requested operation. The Method was not called in the context of the Session that owns the Subscription. Identifier of the subscription. Array of server handles for all monitored items of the subscription identified by SubscriptionId. Array of client handles for all monitored items of the subscription identified by SubscriptionId Allows a Client to request a state change in the Server. The intended usage is defined in Part 4 of the OPC UA Specification. The Client shall provide credentials with administrative rights when invoking this method on the Server. Method Result Codes: Result Code | Description ---------------------|---------------------------------------------------------- Bad_UserAccessDenied | The current user is not authorized to invoke the method. Bad_InvalidState | The requested state was not accepted by the server. The requested target state for the Server. If the new state is accepted by the Server, the state in the is updated with the new value. Indicates the time at which the Server is expected to be available in the state RUNNING_0. If no estimate is known, a null DateTime shall be provided. This time will be available in the EstimatedReturnTime property. This parameter shall be ignored by the Server and the property EstimatedReturnTime shall be set to null if the new state is RUNNING_0. The number of seconds until a Server shutdown. This parameter is ignored unless the state is set to SHUTDOWN_4 or restart is set to true. A localized text string that describes the reason for the state change request. A flag indicating if the Server should be restarted before it attempts to change into the requested change. If restart is true, the server changes its state to SHUTDOWN_4 before the restart if secondsTillShudown is not 0. Used to get the latest values of the data monitored items of a Subscription. The intended usage is defined in Part 4 of the OPC UA Specification. Method Result Codes: Result Code | Description --------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------- Bad_SubscriptionIdInvalid | The subscription id is not valid. Bad_UserAccessDenied | User does not have permission to perform the requested operation. The Method was not called in the context of the Session that owns the Subscription. Identifier of the subscription to refresh. Used to set a subscription into a mode where monitored item data and event queues are stored and delivered even if an OPC UA Client was disconnected for a longer time or the OPC UA Server was restarted. The intended usage is defined in Part 4 of the OPC UA Specification. Method Result Codes: Result Code | Description --------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Bad_SubscriptionIdInvalid | The subscription id is not valid. Bad_InvalidState | The operation cannot be completed because the object is closed, uninitialized or in some other invalid state. This is returned when a Subscription already contains MonitoredItems. Bad_UserAccessDenied | User does not have permission to perform the requested operation. The Method was not called in the context of the Session that owns the Subscription. Identifier of the subscription. The requested lifetime in hours for the durable subscription. The revised lifetime in hours the server applied to the durable subscription. Defines diagnostic information about the sessions of the OPC UA Server. Initializes a new instance of the class. Initializes a new instance of the class. The template. Provides an array with an entry for each session in the Server having general diagnostic information about a session. Provides an array with an entry for each active session in the Server having security-related diagnostic information about a session. Since this information is security-related, it should not be made accessible to all users, but only to authorised users. The base ObjectType for all StateMachineTypes. It defines a single Variable which represents the current state of the machine. An instance of this ObjectType shall generate an Event whenever a significant state change occurs. The Server decides which state changes are significant. Servers shall use the GeneratesEvent ReferenceType to indicate which Event(s) could be produced by the state machine. Subtypes may add methods which affect the state of the machine. The Executable attribute is used to indicate whether the method is valid given the current state of the machine. The generation of AuditEvents for methods is defined in Part 4 of the OPC UA Specification. A state machine may not be active. In this case, the CurrentState and LastTransition variables shall have a status equal to Bad_StateNotActive. Subtypes may add components which are instances of StateMachineTypes. These components are considered to be sub-states of the state machine. Sub-state machines are only active when the parent machine is in an appropriate state. Events produced by sub-state machines may be suppressed by the parent machine. In some cases, the parent machine will produce a single Event that reflects changes in multiple sub-state machines. is subtype of StateMachineType that provides a mechanism to explicitly define the states and transitions. A Server should use this mechanism if it knows what the possible states are and the state machine is not trivial. Initializes a new instance of the class. Initializes a new instance of the class. The template. Stores the current state of an instance of the StateMachineType. CurrentState provides a human readable name for the current state which may not be suitable for use in application control logic. Applications should use the Id property of CurrentState if they need a unique identifier for the state. Stores the last transition which occurred in an instance of the StateMachineType. LastTransition provides a human readable name for the last transition which may not be suitable for use in application control logic. Applications should use the Id property of LastTransition if they need a unique identifier for the transition. The FiniteStateMachineType is the base ObjectType for state machines that explicitly define the possible states and transitions. Once the states are defined, subtypes shall not add new states. The states of the machine are represented with instances of the StateType ObjectType. Each state shall have a BrowseName which is unique within the state machine and shall have a StateNumber which shall also be unique across all states defined in the state machine. Be aware that states in a sub-state machine may have the same StateNumber or BrowseName as states in the parent machine. A concrete subtype of FiniteStateMachineType shall define at least one state. A state machine may define one state which is an instance of the InitialStateType. This state is the state that the machine goes into when it is activated. The transitions that may occur are represented with instances of the TransitionType. Each transition shall have a BrowseName which is unique within the state machine and may have a TransitionNumber which shall also be unique across all transitions defined in the state machine. The initial state for a transition is a StateType object which is the target of a FromState reference. The final state for a transition is a StateType object which is the target of a ToState reference. The FromState and ToState references shall always be specified. A transition may produce an event. The event is indicated by a HasEffect reference to a subtype of BaseEventType. The StateMachineType shall have GeneratesEvent references to the targets of a HasEffect reference for each of its transitions. A FiniteStateMachineType may define methods that cause a transition to occur. These methods are targets of HasCause references for each of the transitions that may be triggered by the method. The Executable attribute for a method is used to indicate whether the current state of the machine allows the method to be called. A FiniteStateMachineType may have sub-state machines which are represented as instances of StateMachineType ObjectTypes. Each state shall have a HasSubStateMachine reference to the StateMachineType object which represents the child states. The SubStateMachine is not active if the parent state is not active. In this case the CurrentState and LastTransition variables of the sub-state machine shall have a status equal to Bad_StateNotActive. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the AvailableStates Gets or sets the AvailableTransitions Stores the current state of an instance of the FiniteStateMachineType. CurrentState provides a human readable name for the current state which may not be suitable for use in application control logic. Applications should use the Id property of CurrentState if they need a unique identifier for the state. Stores the last transition which occurred in an instance of the FiniteStateMachineType. LastTransition provides a human readable name for the last transition which may not be suitable for use in application control logic. Applications should use the Id property of LastTransition if they need a unique identifier for the transition. Defines the state machine used by AlarmTypes that handle multiple mutually exclusive limits. It is created by extending the FiniteStateMachineType. The ExclusiveLimitStateMachine defines the sub state machine that represents the actual level of a multilevel Alarm when it is in the Active state. The sub state machine defined here includes High, Low, HighHigh and LowLow states. This model also includes in its transition state a series of transitions to and from a parent state, the inactive state. This state machine as it is defined shall be used as a sub state machine for a state machine which has an Active state. This Active state could be part of a “level” Alarm or “deviation” Alarm or any other Alarm state machine. The LowLow, Low, High, HighHigh are typical for many industries. Vendors can introduce substate models that include additional limits; they may also omit limits in an instance. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the FileTransferStateMachine methods. The FileTransferStateMachine methods. The interface for methods implemented on the FileTransferStateMachineModel object. A state machine for a program. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the AutoDelete Gets or sets the CurrentState Gets or sets the Deletable Gets or sets the FinalResultData Gets or sets the LastTransition Gets or sets the ProgramDiagnostics Gets or sets the RecycleCount Defines a substate machine that represents an advanced Alarm filtering model. The state model supports two types of Shelving: OneShotShelving and TimedShelving. The illustration includes the allowed transitions between the various substates. Shelving is an Operator initiated activity. \todo Add illustration? In OneShotShelving, a user requests that an Alarm be Shelved for its current Active state. This type of Shelving is typically used when an Alarm is continually occurring on a boundary (i.e. a Condition is jumping between High Alarm and HighHigh Alarm, always in the Active state). The One Shot Shelving will automatically clear when an Alarm returns to an inactive state. Another use for this type of Shelving is for a plant area that is shut down i.e. a long running Alarm such as a low level Alarm for a tank that is not in use. When the tank starts operation again the Shelving state will automatically clear. In TimedShelving, a user specifies that an Alarm be shelved for a fixed time period. This type of Shelving is quite often used to block nuisance Alarms. For example, an Alarm that occurs more than ten times in a minute may get shelved for a few minutes. In all states, the Unshelve can be called to cause a transition to the Unshelve state; this includes Un-shelving an Alarm that is in the TimedShelve state before the time has expired and the OneShotShelve state without a transition to an inactive state. The “Time Expired” transition is simply a system generated transition that occurs when the time value defined as part of the “Timed Shelved Call” has expired. The “Any Transition Occurs” transition is also a system generated transition; this transition is generated when the Condition goes to an inactive state. \todo Reference to illustration The ShelvedStateMachine includes a hierarchy of substates. It supports all transitions between Unshelved, OneShotShelved and TimedShelved. This FiniteStateMachine supports three Active states; Unshelved, TimedShelved and OneShotShelved. It also supports six transitions. This FiniteStateMachine also supports three methods: , and . Initializes a new instance of the class. Initializes a new instance of the class. The template. Specifies the remaining time in milliseconds until the Alarm automatically transitions into the Unshelved state. For the TimedShelved state this time is initialised with the ShelvingTime argument of the TimedShelve method call. For the OneShotShelved state the UnshelveTime will be a constant set to the maximum Duration except if a MaxTimeShelved Property is provided. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the ShelvedStateMachine methods. The ShelvedStateMachine methods. The interface for methods implemented on the ShelvedStateMachineModel object. Sets the AlarmCondition to the OneShotShelved state. Normally, the MethodId found in the Shelving child of the Condition instance and the NodeId of the Shelving object as the ObjectId are passed to the Call Service. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall also allow Clients to call the OneShotShelve method by specifying ConditionId as the ObjectId. The method cannot be called with an ObjectId of the ShelvedStateMachineType Node. Method Result Codes ResultCode | Description ----------------------------|---------------------------------------------------------------------------------------- Bad_ConditionAlreadyShelved | The Alarm is already in a shelved state. The Alarm is already in OneShotShelved state. Sets the AlarmCondition to the TimedShelved state. Normally, the MethodId found in the Shelving child of the Condition instance and the NodeId of the Shelving object as the ObjectId are passed to the Call Service. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall also allow Clients to call the TimedShelve method by specifying ConditionId as the ObjectId. The method cannot be called with an ObjectId of the ShelvedStateMachineType Node. Method Result Codes ResultCode | Description ----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------- Bad_ConditionAlreadyShelved | The Alarm is already in a shelved state. The Alarm is already in TimedShelved state and the system does not allow a reset of the shelved timer. Bad_ShelvingTimeOutOfRange | The provided Shelving time is outside the range allowed by the Server for Shelving. \todo Include comments? Parameters and Result Codes? Specifies a fixed time for which the Alarm is to be shelved. The Server may refuse the provided duration. If a MaxTimeShelved Property exist on the Alarm than the Shelving time shall be less than or equal to the value of this Property. Unshelve sets the AlarmCondition to the Unshelved state. Normally, the MethodId found in the Shelving child of the Condition instance and the NodeId of the Shelving object as the ObjectId are passed to the Call Service. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall also allow Clients to call the Unshelve method by specifying ConditionId as the ObjectId. The method cannot be called with an ObjectId of the ShelvedStateMachineType Node. Method Result Codes: ResultCode | Description ------------------------|-------------------------------------------------- Bad_ConditionNotShelved | The Alarm is not in the requested shelved state. States of a FiniteStateMachine are represented as objects of the StateType. Initializes a new instance of the class. Initializes a new instance of the class. The template. A number for the state that is unique across all states defined in the state machine. An object of the InitialStateType represents the state that a FiniteStateMachine enters when it is activated. Each FiniteStateMachine can have at most one state of type InitialStateType, but a FiniteStateMachine does not have to have a state of this type. A sub-state machine goes into its initial state whenever the parent state is entered. However, a state machine may define a transition that goes directly to a state of the sub-state machine. In this case the sub-state machine goes into that state instead of the initial State. If no initial state for a sub-state machine exists and the state having the sub-state machine is entered directly, then the state of the sub-state machine is server-specific. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the DataSetMetaData Gets or sets the MessageReceiveTimeout Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the TargetVariables Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the TargetVariables methods. The TargetVariables methods. The interface for methods implemented on the TargetVariablesModel object. out: out: Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the ClientProcessingTimeout Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. Gets or sets the TemporaryFileTransfer methods. The TemporaryFileTransfer methods. The interface for methods implemented on the TemporaryFileTransferModel object. out: out: out: out: out: out: Transitions of a FiniteStateMachine are represented as objects of the ObjectType TransitionType. Each valid transition shall have exactly one FromState reference and exactly one ToState reference, each pointing to an object of the ObjectType StateType. Each transition can have one or more HasCause references pointing to the cause that triggers the transition. Each transition can have one or more HasEffect references pointing to the effects that occur when the transition was triggered. Initializes a new instance of the class. Initializes a new instance of the class. The template. A number for the transition that is unique across all transitions defined in the state machine. This object type defines a placeholder object for vendor-specific information about the OPC UA Server. This object type defines an empty object type that has no components. It shall be subtyped by vendors to define their vendor-specific information. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the NetworkMessageContentMask Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the DataSetOrdering Gets or sets the GroupVersion Gets or sets the NetworkMessageContentMask Gets or sets the PublishingOffset Gets or sets the SamplingOffset Initializes a new instance of the class. Initializes a new instance of the class. The template. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the AuthenticationProfileUri Gets or sets the QueueName Gets or sets the RequestedDeliveryGuarantee Gets or sets the ResourceUri Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the MessageRepeatCount Gets or sets the MessageRepeatDelay OPC UA includes support for security audit trails with traceability between Client and Server audit logs. OPC UA defines audit events for security related client actions, like creating a connection with a server, and also audit events for actions changing the system, like write calls to variables or method calls. If a security-related problem is detected at the Server, the associated Client audit log entry can be located and examined. OPC UA also provides the capability for Servers to generate Event Notifications that report auditable Events to Clients capable of processing and logging them. OPC UA defines security audit parameters that can be included in audit log entries and in audit Event Notifications. AuditEvents are Events of AuditEventType or subtypes that are generated as a result of an action taken on the Server by a Client of the Server. For example, in response to a Client issuing a write to a Variable, the Server would generate an AuditEvent describing the Variable as the source and the user and Client session as the initiators of the Event. OPC UA Servers create audit events for an auditable action request. If the action is accepted, then an action AuditEvent is generated and processed by the Server. If the action is not accepted due to security reasons, a security AuditEvent is generated and processed by the Server. The Server may involve the underlying device or system in the process, but it is the Server’s responsibility to provide the Event to any interested Clients. Clients are free to subscribe to Events from the Server and will receive the AuditEvents in response to normal Publish requests. Initializes a new instance of the class. Initializes a new instance of the class. The template. Identifies the time the user initiated the action that resulted in the AuditEvent being generated. It differs from the Time Property because this is the time the server generated the AuditEvent documenting the action. Contains the human-readable AuditEntryId. All action requests include a human readable AuditEntryId. The AuditEntryId is included in the AuditEvent to allow human readers to correlate an Event with the initiating action. The AuditEntryId typically contains who initiated the action and from where it was initiated. Identifies the user of the client requesting an action. The ClientUserId can be obtained from the UserIdentityToken passed in the ActivateSession call. If the UserIdentityToken is a UserNameIdentityToken, then the ClientUserId is the UserName. If the UserIdentityToken is an X509IdentityToken, then the ClientUserId is the X509 Subject Name of the certificate. If the UserIdentityToken is an IssuedIdentityToken, then the ClientUserId should be a string that represents the owner of the token. The best choice for the string depends on the type of IssuedIdentityToken. If an AnonymousIdentityToken was used, the value is null. Uniquely identifies the Server generating the Event. It identifies the Server uniquely even in a server-controlled transparent redundancy scenario where several Servers may use the same URI. Identifies whether the requested action could be performed. Set Status to TRUE if the requested action could be performed, or to FALSE if not. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of node management related Events. This type follows all behaviours of its parent type. This EventType inherits all Properties of the . There are no additional Properties defined for this EventType. The SourceNode for Events of this type should be assigned to the Server object. The SourceName for Events of this type should be “NodeManagement/” and the Service that generates the Event (e.g. AddNodes, AddReferences, DeleteNodes, DeleteReferences). Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for Events generated from calling the AddNodes Service defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the . The SourceName for Events of this type should be “NodeManagement/AddNodes”. The additional Properties defined for this EventType reflect parameters of the Service call that triggers the Event. Initializes a new instance of the class. Initializes a new instance of the class. The template. The NodesToAdd parameter of the AddNodes Service call. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for Events generated from calling the AddReferences Service defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the . The SourceName for Events of this type should be “NodeManagement/AddReferences”. The additional Properties defined for this EventType reflect parameters of the Service call that triggers the Event. Initializes a new instance of the class. Initializes a new instance of the class. The template. The referencesToAdd parameter of the AddReferences Service call. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for Events generated from calling the DeleteNodes Service defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the AuditNodeManagementEventType. The SourceName for Events of this type should be “NodeManagement/DeleteNodes”. The additional Properties defined for this EventType reflect parameters of the Service call that triggers the Event. Initializes a new instance of the class. Initializes a new instance of the class. The template. The nodesToDelete parameter of the DeleteNodes Service call. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for Events generated from calling the DeleteReferences Service defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the . The SourceName for Events of this type should be “NodeManagement/DeleteReferences”. The additional Properties defined for this EventType reflect parameters of the Service call that triggers the Event. Initializes a new instance of the class. Initializes a new instance of the class. The template. The referencesToDelete parameter of the DeleteReferences Service call. Updates the event. The event to update. A class of handle values used by the class. This EventType is a subtype of and is used only for categorization of security-related Events. This type follows all behaviour of its parent type. There are no additional Properties defined for this EventType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the StatusCodeId Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used only for categorization of certificate related Events. This type follows all behaviours of its parent type. These AuditEvents will be generated for certificate errors in addition to other AuditEvents related to service calls. This EventType inherits all Properties of the AuditSecurityEventType. The SourceName for Events of this type should be “Security/Certificate”. Initializes a new instance of the class. Initializes a new instance of the class. The template. The certificate that encountered a validation issue. Additional subtypes of this EventType will be defined representing the individual validation errors. This certificate can be matched to the Service that passed it (Session or SecureChannel Service Set) since the AuditEvents for these Services also include the certificate. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used only for categorization of certificate related Events. This type follows all behaviours of its parent type. This AuditEvent is generated if the HostName in the URL used to connect to the Server is not the same as one of the HostNames specified in the certificate, or if the application and Software certificates contain an application or product URI that does not match the URI specified in the ApplicationDescription provided with the certificate. For more details on certificates see Part 4 of the OPC UA Specification. This EventType inherits all Properties of the . The SourceName for Events of this type should be “Security/Certificate”. Initializes a new instance of the class. Initializes a new instance of the class. The template. The string that represents the host name passed in as part of the URL that is found to be invalid. If the host name was not invalid, it can be null. The URI that was passed in and found to not match what is contained in the certificate. If the URI was not invalid, it can be null. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used only for categorization of certificate related Events. This type follows all behaviours of its parent type. This AuditEvent is generated if the current time is outside the validity period’s start date and end date. This EventType inherits all Properties of the AuditCertificateEventType. The SourceName for Events of this type should be “Security/Certificate”. The Message Variable shall include a description of why the certificate was expired (i.e. time before start or time after end). There are no additional Properties defined for this EventType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used only for categorization of certificate related Events. This type follows all behaviours of its parent type. This AuditEvent is generated if the certificate structure is invalid or if the certificate has an invalid signature. This EventType inherits all Properties of the . The SourceName for Events of this type should be “Security/Certificate”. The Message shall include a description of why the certificate is invalid. There are no additional Properties defined for this EventType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used only for categorization of certificate related Events. This type follows all behaviours of its parent type. This AuditEvent is generated if a certificate set of uses does not match the requested use for the certificate (i.e. application, Software or Certificate Authority). This EventType inherits all Properties of the . The SourceName for Events of this type should be “Security/Certificate”. The Message Variable shall include a description of the misuse of the certificate. There are no additional Properties defined for this EventType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used only for categorization of certificate related Events. This type follows all behaviours of its parent type. This AuditEvent is generated if a certificate has been revoked or if the revocation list is not available (i.e. a network interruption prevents the application from accessing the list). This EventType inherits all Properties of the . The SourceName for Events of this type should be “Security/Certificate”. The Message Variable shall include a description of why the certificate is revoked (was the revocation list unavailable or was the certificate on the list). There are no additional Properties defined for this EventType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used only for categorization of certificate related Events. This type follows all behaviours of its parent type. This AuditEvent is generated if the certificate is not trusted, that is, if the Issuer certificate is unknown. This EventType inherits all Properties of the . The SourceName for Events of this type should be “Security/Certificate”. The Message Variable shall include a description of why the certificate is not trusted. If a trust chain is involved, then the certificate that failed in the trust chain should be described. There are no additional Properties defined for this EventType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of security-related Events from the SecureChannel Service Set defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the . SourceNode for Events of this type should be assigned to the Server object. The SourceName for Events of this type should be “SecureChannel/” followed by the Service that generates the Event (e.g. SecureChannel/OpenSecureChannel or SecureChannel/CloseSecureChannel). If the ClientUserId is not available for a CloseSecureChannel call, then this parameter shall be set to “System/CloseSecureChannel”. Initializes a new instance of the class. Initializes a new instance of the class. The template. Uniquely identifies the SecureChannel. The application shall use the same identifier in all AuditEvents related to the Session Service Set ( , and their subtypes) and the SecureChannel Service Set ( and its subtypes). Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for Events generated from calling the OpenSecureChannel Service defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the . SourceName for Events of this type should be “SecureChannel/OpenSecureChannel”. The ClientUserId is not available for this call, thus this parameter shall be set to “System/OpenSecureChannel”. The additional Properties defined for this EventType reflect parameters of the Service call that triggers the Event. Initializes a new instance of the class. Initializes a new instance of the class. The template. The clientCertificate parameter of the OpenSecureChannel Service call. A thumbprint of the ClientCertificate. See Part 6 of the OPC UA Specification for details on thumbprints. The requestedLifetime parameter of the OpenSecureChannel Service call. The requestType parameter of the OpenSecureChannel Service call. The securityMode parameter of the OpenSecureChannel Service call. The securityPolicyUri parameter of the OpenSecureChannel Service call. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of security-related Events from the Session Service Set defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the . If the Event is generated by a TransferSubscriptions Service call, the SourceNode should be assigned to the SessionDiagnostics object that represents the session. The SourceName for Events of this type should be “Session/TransferSubscriptions”. Otherwise, the SourceNode for Events of this type should be assigned to the Server object. The SourceName for Events of this type should be “Session/” and the Service that generates the Event (e.g. CreateSession, ActivateSession or CloseSession). Initializes a new instance of the class. Initializes a new instance of the class. The template. The SessionId of the session that the Service call was issued on. In the CreateSession Service this shall be set to the newly created SessionId. If no session context exists (e.g. for a failed CreateSession Service call), the SessionId is set to null. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for Events generated from calling the ActivateSession Service defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the . The SourceName for Events of this type should be “Session/ActivateSession”. The additional Properties defined for this EventType reflect parameters of the Service call that triggers the Event. Initializes a new instance of the class. Initializes a new instance of the class. The template. The clientSoftwareCertificates parameter of the ActivateSession Service call. Uniquely identifies the SecureChannel. The application shall use the same identifier in all AuditEvents related to the Session Service Set ( , and their subtypes) and the SecureChannel Service Set ( and its subtypes). The userIdentityToken parameter of the ActivateSession Service call. For Username/Password tokens the password should not be included. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for Events generated from calling the Cancel Service defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the . The SourceName for Events of this type should be “Session/Cancel”. The additional Properties defined for this EventType reflect parameters of the Service call that triggers the Event. Initializes a new instance of the class. Initializes a new instance of the class. The template. The requestHandle parameter of the Cancel Service call. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for Events generated from calling the CreateSession Service defined in Part 4 of the OPC UA Specification. This EventType inherits all Properties of the AuditSessionEventType. The SourceName for Events of this type should be “Session/CreateSession”. The ClientUserId is not available for this call thus this parameter shall be set to the “System/CreateSession”. The additional Properties defined for this EventType reflect parameters of the Service call that triggers the Event. Initializes a new instance of the class. Initializes a new instance of the class. The template. The clientCertificate parameter of the CreateSession Service call. A thumbprint of the ClientCertificate. See Part 6 of the OPC UA Specification for details on thumbprints. The returned revisedSessionTimeout parameter of the CreateSession Service call. Uniquely identifies the SecureChannel The application shall use the same identifier in all AuditEvents related to the Session Service Set ( , and their subtypes) and the SecureChannel Service Set ( and its subtypes). Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for Events generated from calling the CreateSession Service defined in Part 4 of the OPC UA Specification if the EndpointUrl used in the service call does not match the Server’s HostNames (see Part 4 of the OPC UA Specification for details). This EventType inherits all Properties of the . The additional Properties defined for this EventType reflect parameters of the Service call that triggers the Event. Initializes a new instance of the class. Initializes a new instance of the class. The template. The endpointUrl parameter of the CreateSession Service call. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of update related Events. This type follows all behaviours of its parent type. This EventType inherits all Properties of the . The SourceNode for Events of this type should be assigned to the NodeId that was changed. The SourceName for Events of this type should be “Attribute/” and the Service that generated the event (e.g. Write, HistoryUpdate). Note that one Service call may generate several Events of this type, one per changed value. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of history update related Events. This type follows all behaviours of its parent type. This EventType inherits all Properties of the . Subtypes of this EventType are defined in Part 11 of the OPC UA Specification, representing the different possibilities to manipulate historical data. Initializes a new instance of the class. Initializes a new instance of the class. The template. Identifies the DataTypeId for the extensible parameter used by the HistoryUpdate. This parameter indicates the type of HistoryUpdate being performed. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of history delete related Events. This type follows all behaviour of its parent type. It inherits all Properties of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Identifies the NodeId that was used for the delete operation. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of history delete related Events. This type follows all behaviour of its parent type. It inherits all Properties of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Identifies the value that contained history before the delete. A server should report all deleted values. It is acceptable for a server that does not have this information to report a null v alue. The OldValues will contain a value in the DataType and encoding used for writing the value. Reflects the request time parameter of the call. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of history delete related Events. This type follows all behaviour of its parent type. It inherits all Properties of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Reflects the EventIds parameter of the call. Identifies the value that contained history before the delete. A server should report all deleted values. It is acceptable for a server that does not have this information to report a null value. The OldValues will contain will contain an Event with the appropriate fields, each with appropriately encoded values. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of history delete related Events. This type follows all behaviour of its parent type. It inherits all Properties of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Reflects the ending time parameter of the call. Reflects the isDeleteModified parameter of the call. Identifies the value that contained history before the delete. A server should report all deleted values. It is acceptable for a server that does not have this information to report a null value. The OldValues will contain a value in the DataType and encoding used for writing the value. Reflects the starting time parameter of the call. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of History Event update related Events. This type follows all behaviour of its parent type. It inherits all Properties of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Reflects the Event filter passed on the call to select the Events that are to be updated. Identifies the value that was written to the Event. Both the NewValue and the OldValue will contain an Event with the appropriate fields, each with appropriately encoded values. Identifies the value that the Event contained before the write. It is acceptable for a server that does not have this information to report a null value. And in the case of an insert it is expected to be a null value. Both the NewValue and the OldValue will contain an Event with the appropriate fields, each with appropriately encoded values. This enumeration reflects the parameter on the Service call. Identifies the Attribute that was written on the SourceNode. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of history value update related Events. This type follows all behaviour of its parent type. It inherits all Properties of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Identifies the value that was written to the Event. Both the NewValue and the OldValue will contain a value in the DataType and encoding used for writing the value Identifies the value that the Event contained before the write. It is acceptable for a server that does not have this information to report a null value. And in the case of an insert it is expected to be a null value. Both the NewValue and the OldValue will contain a value in the DataType and encoding used for writing the value. This enumeration reflects the parameter on the Service call. Identifies the Attribute that was written on the SourceNode. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of write update related Events. This type follows all behaviours of its parent type. This EventType inherits all Properties of the AuditUpdateEventType. The SourceName for Events of this type should be “Attribute/Write”. Initializes a new instance of the class. Initializes a new instance of the class. The template. Identifies the Attribute that was written on the SourceNode. Identifies the index range of the written Attribute if the Attribute is an array. If the Attribute is not an array or the whole array was written, the IndexRange is set to null. Identifies the value that was written to the SourceNode. If the IndexRange is provided, only the values in the provided range are shown. Both the NewValue and the OldValue will contain a value in the DataType and encoding used for writing the value. Identifies the value that the SourceNode contained before the write. If the IndexRange is provided, only the value of that range is shown. It is acceptable for a Server that does not have this information to report a null value. Both the NewValue and the OldValue will contain a value in the DataType and encoding used for writing the value. Updates the event. The event to update. A class of handle values used by the class. This is a subtype of and is used for categorization of Method related Events. This type follows all behaviours of its parent type. This EventType inherits all Properties of the . The SourceNode for Events of this type should be assigned to the NodeId of the object that the method resides on. The SourceName for Events of this type should be “Attribute/Call”. Note that one Service call may generate several Events of this type, one per method called. This EventType should be further subtyped to better reflect the functionality of the method and to reflect changes to the address space or updated values triggered by the method. Initializes a new instance of the class. Initializes a new instance of the class. The template. Identifies the input Arguments for the method. This parameter can be null if no input arguments where provided. Identifies the method that was called. Updates the event. The event to update. A class of handle values used by the class. This EventType is used to subsume all Audit Condition EventTypes. Audit Condition EventTypes inherit all Properties of the . Unless a subtype overrides the definition, the inherited properties of the Condition will be used as defined. - The inherited Property SourceNode shall be filled with the ConditionId. - The SourceName shall be “Method/” and the name of the Service that generated the Event (e.g. Disable, Enable, Acknowledge, etc). This Event Type can be further customized to reflect particular Condition related actions. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This EventType is used to indicate acknowledgement or confirmation of one or more Conditions. Initializes a new instance of the class. Initializes a new instance of the class. The template. Contains the actual comment that was added, it may be a blank comment or a null. This event field shall contain the id of the Event that was acknowledged. Updates the event. The event to update. A class of handle values used by the class. This EventType is used to report an AddComment action. Initializes a new instance of the class. Initializes a new instance of the class. The template. Contains the actual comment that was added. This field shall contain the id of the event for which the comment was added. Updates the event. The event to update. A class of handle values used by the class. This EventType is used to report a Confirm action. Initializes a new instance of the class. Initializes a new instance of the class. The template. Contains the actual comment that was added, it may be a blank comment or a null. This event field shall contain the id of the Event that was confirmed. Updates the event. The event to update. A class of handle values used by the class. This EventType is used to indicate a change in the enabled state of a Condition instance. The SourceName shall indicate Method/Enable or Method/Disable. If the audit Event is not the result of a method call, but due to an internal action of the Server, the SourceName shall reflect Enable or Disable, it may be preceded by an appropriate description such as “Internal/Enable” or “Remote/Enable”. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This EventType is used to report a Respond action. Initializes a new instance of the class. Initializes a new instance of the class. The template. This event field shall contain the response that was selected. Updates the event. The event to update. A class of handle values used by the class. This EventType is used to indicate a change to the Shelving state of a Condition instance. Initializes a new instance of the class. Initializes a new instance of the class. The template. If the method indicates a TimedShelve operation, this field shall contain the duration for which the Alarm is to be shelved. For other Shelving methods, this parameter may be omitted or null. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the NewStateId Gets or sets the OldStateId Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the TransitionNumber Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Transition Updates the event. The event to update. A class of handle values used by the class. This event is raised when the application certificate is changed. This is the result of a method completing successfully or failing. This EventType inherits all properties of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Specifies the certificate group that was affected by the update. Specifies the type of Certificate that was updated. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the ResourceUri Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This event is raised when a trust list is changed. This is the result of a method on a TrustListType object being called. It shall also be raised when the or method causes an update to the trust list. This EventType inherits all Properties of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. BaseType for ModelChangeEvents. This Event does not contain information about the changes but only indicates that changes occurred. Therefore the Client shall assume that any or all of the Nodes may have changed. This EventType inherits all Properties of the BaseEventType. There are no additional Properties defined for this EventType. The SourceNode for Events of this type should be the Node of the View that gives the context of the changes. If the whole AddressSpace is the context, the SourceNode is set to the NodeId of the Server object. The SourceName for Events of this type should be the String part of the BrowseName of the View; for the whole AddressSpace it should be “Server”. Two types of ModelChangeEvents are defined: the BaseModelChangeEvent that does not contain any information about the changes and the GeneralModelChangeEvent that identifies the changed Nodes via an array. The precision used depends on both the capability of the OPC UA Server and the nature of the update. An OPC UA Server may use either ModelChangeEvent type depending on circumstances. It may also define subtypes of these EventTypes adding additional information. To ensure interoperability, one should follow the guidelines for Events listed below. - If the array of the GeneralModelChangeEvent is present, then it should identify every Node that has changed since the preceding ModelChangeEvent. - The OPC UA Server should emit exactly one ModelChangeEvent for an update or series of updates. It should not issue multiple types of ModelChangeEvent for the same update. - Any Client that responds to ModelChangeEvents should respond to any Event of the including its subtypes like the . If a Client is not capable of interpreting additional information of the subtypes of the , it should treat Events of these types the same way as Events of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Contains information about the Node that was changed and the action that occurred to cause the ModelChangeEvent (e.g. add a Node, delete a Node, etc.). If the affected Node is a Variable or object, then the TypeDefinitionNode is also present. To allow Event compression, a GeneralModelChangeEvent contains an array of changes. This EventType inherits all Properties of the BaseModelChangeEventType. Two types of ModelChangeEvents are defined: the BaseModelChangeEvent that does not contain any information about the changes and the GeneralModelChangeEvent that identifies the changed Nodes via an array. The precision used depends on both the capability of the OPC UA Server and the nature of the update. An OPC UA Server may use either ModelChangeEvent type depending on circumstances. It may also define subtypes of these EventTypes adding additional information. To ensure interoperability, one should follow the guidelines for Events listed below. - If the array of the GeneralModelChangeEvent is present, then it should identify every Node that has changed since the preceding ModelChangeEvent. - The OPC UA Server should emit exactly one ModelChangeEvent for an update or series of updates. It should not issue multiple types of ModelChangeEvent for the same update. - Any Client that responds to ModelChangeEvents should respond to any Event of the including its subtypes like the . If a Client is not capable of interpreting additional information of the subtypes of the , it should treat Events of these types the same way as Events of the . Initializes a new instance of the class. Initializes a new instance of the class. The template. Reflects the changes that issued the ModelChangeEvent. It shall contain at least one entry in its array. Updates the event. The event to update. A class of handle values used by the class. Event that indicates a change of the AddressSpace semantics. The change consists of a change to the Value Attribute of a Property. The SemanticChangeEvent contains information about the Node owning the Property that was changed. If this is a Variable or object, the TypeDefinitionNode is also present. The SemanticChange bit of the AccessLevel Attribute of a Property indicates whether changes of the Property value are considered for SemanticChangeEvents The ViewVersion and NodeVersion Properties do not change due to the publication of a SemanticChangeEvent. There is no standard way to identify which Nodes trigger a SemanticChangeEvent and which Nodes do not. SemanticChangeEvents are handled in the context of a View the same way as ModelChangeEvents. SemanticChangeEvents can be compressed the same way as ModelChangeEvents. This EventType inherits all Properties of the BaseEventType. There are no additional Properties defined for this EventType. The SourceNode for Events of this type should be the Node of the View that gives the context of the changes. If the whole AddressSpace is the context, the SourceNode is set to the NodeId of the Server object. The SourceName for Events of this type should be the String part of the BrowseName of the View, for the whole AddressSpace it should be “Server”. Initializes a new instance of the class. Initializes a new instance of the class. The template. Reflects the changes that issued the SemanticChangeEvent. Updates the event. The event to update. A class of handle values used by the class. The interface for methods implemented on the ConditionModel object. Applies a comment to a specific state of a Condition instance. Normally, the NodeId of the object instance as the ObjectId is passed to the Call Service. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall also allow Clients to call the AddComment method by specifying ConditionId as the ObjectId. The method cannot be called with an ObjectId of the ConditionType Node. Method Result Codes ResultCode | Description -------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Bad_MethodInvalid | The method id does not refer to a method for the specified object. The MethodId provided does not correspond to the ObjectId provided. Bad_EventIdUnknown | The specified EventId is not known to the Server. Bad_NodeIdUnknown | The node id refers to a node that does not exist in the server address space. Used to indicate that the specified Object is not valid or that the method was called on the ConditionType Node. The identifier for the event to comment. The comment to add to the condition. Changes a Condition instance to the Disabled state. Normally, the NodeId of the object instance as the ObjectId is passed to the Call Service. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall allow Clients to call the Disable method by specifying ConditionId as the ObjectId. The method cannot be called with an ObjectId of the ConditionType node. Method Result Codes ResultCode | Description -----------------------------|---------------------------------------------- Bad_ConditionAlreadyDisabled | The addressed Condition is already disabled. Changes a Condition instance to the enabled state. Normally, the NodeId of the object instance as the ObjectId is passed to the Call Service. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall allow Clients to call the Enable method by specifying ConditionId as the ObjectId. The method cannot be called with an ObjectId of the ConditionType Node. If the condition instance is not exposed, it may be difficult for a Client to determine the ConditionId for a disabled condition. Method Result Codes ResultCode | Description ----------------------------|--------------------------------------------- Bad_ConditionAlreadyEnabled | The addressed Condition is already enabled. The interface for methods implemented on the AcknowledgeableConditionModel object. Acknowledges an Event Notification for a Condition instance state where AckedState is FALSE. Normally, the NodeId of the object instance as the ObjectId is passed to the Call Service. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall also allow Clients to call the Acknowledge method by specifying ConditionId. The method cannot be called with an ObjectId of the AcknowledgeableConditionType Node. ResultCode | Description --------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Bad_ConditionBranchAlreadyAcked | The EventId does not refer to a state that needs acknowledgement. Bad_MethodInvalid | The method id does not refer to a method for the specified object or ConditionId. Bad_EventIdUnknown | The specified EventId is not known to the Server. Bad_NodeIdInvalid | The node id refers to a node that does not exist in the server address space. Used to indicate that the specified ObjectId is not valid or that the method was called on the ConditionType Node. EventId identifying a particular Event Notification. Only Event Notifications where AckedState/Id was FALSE can be acknowledged. A localized text to be applied to the Condition. Confirms an Event Notification for a Condition instance state where ConfirmedState was set to FALSE. Normally, the NodeId of the object instance as the ObjectId is passed to the Call Service. However, some Servers do not expose Condition instances in the AddressSpace. Therefore all Servers shall also allow Clients to call the Confirm method by specifying ConditionId as the ObjectId. The method cannot be called with an ObjectIf of the AcknowledgeableConditionType Node. \todo Add Comments from spec? Method Result Codes ResultCode | Description ------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Bad_ConditionBranchAlreadyConfirmed | The EventId does not refer to a state that needs confirmation. Bad_MethodInvalid | The method id does not refer to a method for the specified object or ConditionId. Bad_EventIdUnknown | The specified EventId is not known to the Server. Bad_NodeIdUnknown | The node id refers to a node that does not exist in the server address space. Used to indicate that the specified ObjectId is not valid or that the method was called on the ConditionType Node. EventId identifying a particular Event Notification. Only Event Notifications where ConfirmedState/Id was TRUE can be confirmed. A localized text to be applied to the Conditions. The interface for methods implemented on the AlarmConditionModel object. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the ExpectedTime Gets or sets the TargetValueNode Gets or sets the Tolerance Updates the event. The event to update. A class of handle values used by the class. Used to classify Types into Alarm Conditions where the input for the Alarm may take on only a certain number of possible values (e.g. true/false, running/stopped/terminating). Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. A specialization of the DiscreteAlarmType intended to represent a discrete Condition that is considered to be not normal. This subtype is usually used to indicate that a discrete value is in an Alarm state, it is active as long as a non-normal value is present. Initializes a new instance of the class. Initializes a new instance of the class. The template. The NormalState Property is a Property that points to a Variable which has a value that corresponds to one of the possible values of the Variable pointed to by the InputNode Property where the NormalState Property Variable value is the value that is considered to be the normal state of the Variable pointed to by the InputNode Property. When the value of the Variable referenced by the InputNode Property is not equal to the value of the NormalState Property the Alarm is Active. If this Variable is not in the AddressSpace, a Null NodeId shall be provided. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Used by a Server to indicate that an underlying system that is providing Alarm information is having a communication problem and that the Server may have invalid or incomplete Condition state in the Subscription. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. A SystemOffNormalAlarmType raised by the Server when the Server’s certificate is within the ExpirationLimit of expiration. This alarm automatically returns to normal when the certificate is updated. Initializes a new instance of the class. Initializes a new instance of the class. The template. The certificate that is about to expire. Describes the purpose of a certificate. The date and time this certificate will expire. Gets or sets the ExpirationLimit Updates the event. The event to update. A class of handle values used by the class. A specialization of the OffNormalAlarmType intended to represent an equipment trip Condition The Alarm becomes active when the monitored piece of equipment experiences some abnormal fault such as a motor shutting down due to an overload Condition. This Type is mainly used for categorization. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. An abstract type used to provide a base Type for AlarmConditions with multiple limits Alarms can be modelled with multiple exclusive substates and assigned limits or they may be modelled with non exclusive limits that can be used to group multiple states together. Four optional limits are defined that configure the states of the derived limit Alarm Types: HighHighLimit, HighLimit, LowLimit, and LowLowLimit. These Properties shall be set for any Alarm limits that are exposed by the derived limit Alarm Types. These Properties are listed as optional but at least one is required. For cases where an underlying system cannot provide the actual value of a limit, the limit Property shall still be provided, but will have its AccessLevel set to not readable. It is assumed that the limits are described using the same Engineering Unit that is assigned to the variable that is the source of the alarm. For Rate of change limit alarms, it is assumed this rate is units per second unless otherwise specified. The Alarm limits listed may cause an Alarm to be generated when a value equals the limit or it may generate the Alarm when the limit is exceeded, (i.e. the Value is above the limit for HighLimit and below the limit for LowLimit). The exact behaviour when the value is equal to the limit is Server specific. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the BaseHighHighLimit Gets or sets the BaseHighLimit Gets or sets the BaseLowLimit Gets or sets the BaseLowLowLimit Gets or sets the HighHighLimit Gets or sets the HighLimit Gets or sets the LowLimit Gets or sets the LowLowLimit Updates the event. The event to update. A class of handle values used by the class. A special deviation alarm utilized with multiple mutually exclusive limits. A deviation Alarm is commonly used to report an excess deviation between a desired set point level of a process value and an actual measurement of that value. The deviation Alarm becomes active when the deviation exceeds or drops below a defined limit. For example if a set point had a value of 10 and the high deviation Alarm limit were set for 2 and the low deviation Alarm limit had a value of -1 then the low sub state is entered if the process value dropped to below 9; the high sub state is entered if the process value became larger than 12. If the set point were changed to 11 then the new deviation values would be 10 and 13 respectively. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the BaseSetpointNode Provides the NodeId of the set point used in the deviation calculation. If this Variable is not in the AddressSpace, a Null NodeId shall be provided. Updates the event. The event to update. A class of handle values used by the class. The ExclusiveLevelAlarmType is a special level Alarm utilized with multiple mutually exclusive limits. A level Alarm is commonly used to report when a limit is exceeded. It typically relates to an instrument – e.g. a temperature meter. The level Alarm becomes active when the observed value is above a high limit or below a low limit. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. A Rate of Change Alarm utilized with multiple mutually exclusive limits. A Rate of Change Alarm is commonly used to report an unusual change or lack of change in a measured value related to the speed at which the value has changed. The Rate of Change Alarm becomes active when the rate at which the value changes exceeds or drops below a defined limit. A Rate of Change is measured in some time unit, such as seconds or minutes and some unit of measure such as percent or meter. For example, a tank may have a High limit for the Rate of Change of its level (measured in meters) which would be 4 meters per minute. If the tank level changes at a rate that is greater than 4 meters per minute then the High sub state is entered. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the EngineeringUnits Updates the event. The event to update. A class of handle values used by the class. Used to specify the common behaviour for Alarm Types with multiple non-exclusive limits HighHighState, HighState, LowState, and LowLowState represent the non-exclusive states. As an example, it is possible that both HighState and HighHighState are in their TRUE state. Vendors may choose to support any subset of these states. Four optional limits are defined that configure these states. At least the HighState or the LowState shall be provided even though all states are optional. It is implied by the definition of a HighState and a LowState, that these groupings are mutually exclusive. A value cannot exceed both a HighState value and a LowState value simultaneously. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the ActiveState Represents one of the four non-exclusive states. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|---------------------|------------------- en | HighHigh inactive | HighHigh active de | HighHigh inaktiv | HighHigh aktiv fr | Très Haute Inactive | Très Haute active Represents one of the four non-exclusive states. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|------------------|----------------- en | High inactive | High active de | High inaktiv | High aktiv fr | Haute inactive | Haute active Represents one of the four non-exclusive states. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|---------------------|------------------- en | LowLow inactive | LowLow active de | LowLow inaktiv | LowLow aktiv fr | Très basse inactive | Très basse active Represents one of the four non-exclusive states. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|------------------|----------------- en | Low inactive | Low active de | Low inaktiv | Low aktiv fr | Basse inactive | Basse active Updates the event. The event to update. A class of handle values used by the class. A special level Alarm utilized with one or more non-exclusive states. For example if a set point had a value of 10 and the high deviation Alarm limit were set for 2 and the low deviation Alarm limit had a value of -1 then the low sub state is entered if the process value dropped to below 9; the high sub state is entered if the process value became larger than 12. If the set point were changed to 11 then the new deviation values would be 10 and 13 respectively. If for example both the High and HighHigh states need to be maintained as active at the same time this AlarmType should be used. The NonExclusiveDeviationAlarmType is based on the NonExclusiveLimitAlarmType. A deviation Alarm is commonly used to report an excess deviation between a desired set point level of a process value and an actual measurement of that value. The deviation Alarm becomes active when the deviation exceeds or drops below a defined limit. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the BaseSetpointNode Provides the NodeId of the set point used in the deviation calculation. If this Variable is not in the AddressSpace, a Null NodeId shall be provided. Updates the event. The event to update. A class of handle values used by the class. A special level Alarm utilized with one or more non-exclusive states. If for example both the High and HighHigh states need to be maintained as active at the same time this AlarmType should be used. A level Alarm is commonly used to report when a limit is exceeded. It typically relates to an instrument – e.g. a temperature meter. The level Alarm becomes active when the observed value is above a high limit or below a low limit. The NonExclusiveLevelAlarmType is based on the NonExclusiveLimitAlarmType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. A special level Alarm utilized with one or more non-exclusive states. If for example both the High and HighHigh states need to be maintained as active at the same time this AlarmType should be used. A Rate of Change Alarm is commonly used to report an unusual change or lack of change in a measured value related to the speed at which the value has changed. The Rate of Change Alarm becomes active when the rate at which the value changes exceeds or drops below a defined limit. A Rate of Change is measured in some time unit, such as seconds or minutes and some unit of measure such as percent or meter. For example a tank may have a High limit for the Rate of Change of its level (measured in meters) which would be 4 meters per minute. If the tank level changes at a rate that is greater than 4 meters per minute then the High sub state is entered. The NonExclusiveRateOfChangeAlarmType is based on the NonExclusiveLimitAlarmType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the EngineeringUnits Updates the event. The event to update. A class of handle values used by the class. Used to represent Conditions as dialogs. The DialogConditionType inherits all Properties of the ConditionType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Provides the index of the response in the ResponseOptionSet array that will cause the Dialog to go into the inactive state without proceeding with the operation described by the prompt. This allows a Client to identify the Cancel option if a special handling for this option is available. If no Cancel option is available the value of this Property is -1. Identifies the response option that should be shown as default to the user. It is the index in the ResponseOptionSet array. If no response option is the default, the value of the Property is -1. DialogState when set to TRUE indicates that the Dialog is active and waiting for a response. Recommended state names for LocaleIds are listed in the following table. LocaleId | FALSE State Name | TRUE State Name ---------|------------------|----------------- en | Inactive | Active de | Inaktiv | Aktiv fr | Inactive | Active Gets or sets the EnabledState Contains the last response provided by a Client in the Respond method. If no previous response exists then the value of the Property is -1. Provides the index of the OK option in the ResponseOptionSet array. This choice is the response that will allow the system to proceed with the operation described by the prompt. This allows a Client to identify the OK option if a special handling for this option is available. If no OK option is available the value of this Property is -1. Prompt is a dialog prompt to be shown to the user. Specifies the desired set of responses as array of LocalizedText. The index in this array is used for the corresponding fields like DefaultResponse, LastResponse and SelectedOption in the Respond method. The recommended Dialog response option names in different locales are listed in the following table. Locale “en” | Locale “de” ------------|------------- Ok | OK Cancel | Abbrechen Yes | Ja No | Nein Abort | Abbrechen Retry | Wiederholen Ignore | Ignorieren Next | Nächster Previous | Vorheriger Typical combinations of response options are - OK - OK, Cancel - Yes, No, Cancel - Abort, Retry, Ignore - Retry, Cancel - Yes, No Updates the event. The event to update. A class of handle values used by the class. Gets the method dispatcher. The context. The object id. The method id. Dispatches the method. The context. The method handle. The input arguments. The input argument results. The output arguments. The interface for methods implemented on the DialogConditionModel object. Respond is used to pass the selected response option and end the dialog. DialogState will return to FALSE. Method Result Codes ResultCode | Description --------------------------|-------------------------------------------------------------------------- Bad_DialogNotActive | The DialogConditionType instance is not in Active state. Bad_DialogResponseInvalid | The selected option is not a valid index in the ResponseOptionSet array. Selected index of the ResponseOptionSet array. Generated when an internal queue of a MonitoredItem subscribing for Events in the Server overflows. This EventType inherits all Properties of the BaseEventType. The SourceNode for Events of this type shall be assigned to the NodeId of the Server object. The SourceName for Events of this type shall be “Internal/EventQueueOverflow”. This Event is generated when the first Event has to be discarded on a MonitoredItem subscribing for Events. It is put into the Queue of the MonitoredItem in addition to the size of the Queue defined for this MonitoredItem without discarding any other Event. If discardOldest is set to TRUE, it is put at the beginning of the queue and is never discarded, otherwise at the end. An aggregating Server shall not pass on such an Event. It shall be handled like other connection error scenarios Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Generated to identify the progress of an operation. An operation can be a Service call or something application specific like a program execution. This EventType inherits all Properties of the BaseEventType. The SourceNode for Events of this type shall be assigned to the NodeId of the Session object where the operation was initiated. The SourceName for Events of this type shall be “Service/[Service Name as defined in Part 4 of the OPC UA Specification]” when the progress of a Service call is exposed. It is recommended that Servers only expose ProgressEvents for Service calls to the Session that invoked the Service. Initializes a new instance of the class. Initializes a new instance of the class. The template. Contains context information about what operation progress is reported. In the case of Service calls it shall be a UInt32 containing the requestHandle of the RequestHeader of the Service call. Contains the percentage completed of the progress. The value shall be between 0 and 100, where 100 identifies that the operation has been finished. Updates the event. The event to update. A class of handle values used by the class. Event which is generated as a result of some Event that occurs within the Server or by a system that the Server is representing. This EventType inherits all Properties of the BaseEventType. There are no additional Properties defined for this EventType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Event that indicates a failure in a device of the underlying system. This EventType inherits all Properties of the SystemEventType. There are no additional Properties defined for this EventType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the ConnectionId Gets or sets the GroupId Gets or sets the State Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Error Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the Actual Gets or sets the Maximum Updates the event. The event to update. A class of handle values used by the class. This EventType is used by a Server to mark the end of a Refresh Notification cycle. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This EventType is used by a Server to indicate that a significant change has occurred in the Server or in the subsystem below the Server that may or does invalidate the Condition state of a Subscription. When a Server detects an Event queue overflow, it shall track if any Condition Events have been lost, if any Condition Events were lost, it shall issue a RefreshRequiredEventType Event to the Client after the Event queue is no longer in an overflow state. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. This EventType is used by a Server to mark the beginning of a Refresh Notification cycle. Initializes a new instance of the class. Initializes a new instance of the class. The template. Updates the event. The event to update. A class of handle values used by the class. Event that indicates a status change in a system. For example, if the status indicates that an underlying system is not running, then a Client cannot expect any Events from the underlying system. A Server can identify its own status changes using this EventType. This EventType inherits all Properties of the SystemEventType. The SourceNode and the SourceName shall identify the system. The system can be the Server itself or some underlying system. Initializes a new instance of the class. Initializes a new instance of the class. The template. Specifies the current state of the system. Changes to the ServerState of the system shall trigger a SystemStatusChangeEvent, when the event is supported by the system. Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the FromState Gets or sets the ToState Gets or sets the Transition Updates the event. The event to update. A class of handle values used by the class. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the IntermediateResult Updates the event. The event to update. A class of handle values used by the class. The BaseVariableType is the abstract base type for all other variable types. However, only the and the directly inherit from this type. There are no references, except for HasSubtype references, specified for this variable type. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. A typed object which represents a BaseVariableType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. This VariableType is used as the type definition whenever there is a DataVariable having no more concrete type definition available. This VariableType is the base VariableType for VariableTypes of DataVariables, and all other VariableTypes of DataVariables shall either directly or indirectly inherit from it. However, it might not be possible for Servers to provide all HasSubtype References from this VariableType to its subtypes, and therefore it is not required to provide this information. The BaseDataVariableType is a subtype of the BaseVariableType. There are no References except for HasSubtype References specified for this VariableType. Initializes a new instance of the class. Initializes a new instance of the class. The template. A typed object which represents a BaseDataVariableType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the Rate Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the AgencyId Gets or sets the ListId Gets or sets the VersionId This complex variable type is used for information about the Server status. Its data variables reflect its data type having the same semantic (see ). Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the BuildDate Gets or sets the BuildNumber Gets or sets the ManufacturerName Gets or sets the ProductName Gets or sets the ProductUri Gets or sets the SoftwareVersion Various information elements of a Condition are not considered to be states. However, a change in their value is considered important and supposed to trigger an Event Notification. These information elements are called ConditionVariables. ConditionVariables are represented by a ConditionVariableType. It defines the mandatory Property SourceTimestamp. Initializes a new instance of the class. Initializes a new instance of the class. The template. SourceTimestamp indicates the time of the last change of the Value of this ConditionVariable. It shall be the same time that would be returned from the Read Service inside the DataValue structure for the ConditionVariable Value Attribute. A typed object which represents a ConditionVariableType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. This VariableType defines the general characteristics of a DataItem. All other DataItem Types derive from it. It defines the optional properties Definition and ValuePrecision. The DataItemType derives from the BaseDataVariableType. Initializes a new instance of the class. Initializes a new instance of the class. The template. A vendor-specific, human readable string that specifies how the value of this DataItem is calculated. Definition is non-localized and will often contain an equation that can be parsed by certain clients. Example: Definition::="(TempA - 25) + TempB" Specifies the maximum precision that the server can maintain for the item based on restrictions in the target environment. ValuePrecision can be used for the following DataTypes: - For Float and Double values it specifies the number of digits after the decimal place. - For DateTime values it indicates the minimum time difference in nanoseconds. For example, a ValuePrecision of 20 000 000 defines a precision of 20 ms. The ValuePrecision Property is an approximation that is intended to provide guidance to a Client. A Server is expected to silently round any value with more precision that it supports. This implies that a Client may encounter cases where the value read back from a Server differs from the value that it wrote to the Server. This difference shall be no more than the difference suggested by this Property. A typed object which represents a DataItemType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. This VariableType defines the general characteristics of an AnalogItem. The AnalogItemType derives from the DataItemType. The StatusCode delivered with the value also contains an informational bit called SemanticsChanged. Servers that implement Data Access shall set this Bit in notifications if EURange (could change the behaviour of a Subscription if a PercentDeadband filter is used) or EngineeringUnits (could create problems if the client uses the value to perform calculations) Properties are changed. Clients that use any of these Properties should re-read them before they process the data value. In addition a server can send SemanticChangeEvents if the value of the properties EURange and EngineeringUnits are changed. To indicate this capability, the SemanticChange flag must be set in the AccessLevel and UserAccessLevel attributes of this variable. Initializes a new instance of the class. Initializes a new instance of the class. The template. Specifies the units for the AnalogItem value (e.g., DEGC, hertz, seconds). Understanding the units of a measurement value is essential for a uniform system. In an open system in particular where servers from different cultures might be used, it is essential to know what the units of measurement are. Based on such knowledge, values can be converted if necessary before being used. Therefore, although defined as optional, support of the EngineeringUnits Property is strongly advised. To facilitate interoperability, OPC UA specifies how to apply the widely accepted “Codes for Units of Measurement (Recommendation No. 20)” published by the “United Nations Centre for Trade Facilitation and Electronic Business” (see UN/CEFACT). It uses and is based on the International System of Units (SI Units) but in addition provides a fixed code that can be used for automated evaluation. This recommendation has been accepted by many industries on a global basis. The class UaEUInformation provides helper functions to create the unit information from a unitId provided as enumeration. The methods are UaEUInformation::fromUnitId and UaEUInformation::setEUInformation. Defines the value range likely to be obtained in normal operation. It is intended for such use as automatically scaling a bar graph display. Sensor or instrument failure or deactivation can result in a returned item value which is actually outside of this range. Client software must be prepared to deal with this possibility. Similarly a client may attempt to write a value that is outside of this range back to the server. The exact behaviour (accept, reject, clamp, etc.) in this case is server-dependent. However, in general servers shall be prepared to handle this. The EURange is also used as base for the calculation of the PercentDeadband. Defines the value range that can be returned by the instrument. Although defined as optional, it is strongly recommended for Servers to support this Property. Without an InstrumentRange being provided, Clients will commonly assume the full range according to the DataType. A typed object which represents a AnalogItemType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. This VariableType is an abstract type. Only derived types like MultiStateDiscreteType or TwoStateDiscreteType can be instantiated. However, it might be used in a filter when browsing or querying. Initializes a new instance of the class. Initializes a new instance of the class. The template. A typed object which represents a DiscreteItemType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. Defines the general characteristics of a DiscreteItem that can have more than two states. The value of the DiscreteItem is delivered as UInteger but the EnumStrings Property defined by the MultiStateDiscreteType provides display strings for every possible state value. The EnumStrings Property is also used for Enumeration DataTypes. The StatusCode delivered with the value also contains an informational bit called SemanticsChanged. Servers that implement Data Access shall set this Bit in notifications if the EnumStrings (changes can cause misinterpretation by users or (scripting) programs) Property is changed. Clients that use any of these Properties should re-read them before they process the data value. In addition a server can send SemanticChangeEvents if the value of the Property EnumStrings is changed. To indicate this capability, the SemanticChange flag must be set in the AccessLevel and UserAccessLevel attributes of this variable. Initializes a new instance of the class. Initializes a new instance of the class. The template. EnumStrings is a string lookup table corresponding to sequential numeric values of the variable (0, 1, 2, etc.). Example:"OPEN""CLOSE""IN TRANSIT" etc. Here the string"OPEN" corresponds to 0, "CLOSE" to 1 and"IN TRANSIT" to 2. If the item contains an array then this lookup table shall apply to all elements in the array. The EnumStrings Property is also used for Enumeration DataTypes. A typed object which represents a MultiStateDiscreteType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. This VariableType defines the general characteristics of a DiscreteItem that can have more than two states and where the state values (the enumeration) do not consist of consecutive numeric values (may have gaps) or where the enumeration is not zero-based. The MultiStateValueDiscreteType derives from the DiscreteItemType. MultiStateValueDiscrete Variables can have any numeric Data Type; this includes signed and unsigned integers from 8 to 64 Bit length. The numeric representation of the current enumeration value is provided via the Value Attribute of the MultiStateValueDiscrete Variable. Initializes a new instance of the class. Initializes a new instance of the class. The template. An array of EnumValueType where each entry of the array represents one enumeration value with its integer notation, a human-readable representation, and help information. This represents enumerations with integers that are not zero-based or have gaps (e.g. 1, 2, 4, 8, 16). See for the definition of this type. MultiStateValueDiscrete Variables expose the current integer notation in their Value Attribute. Clients will often read the EnumValues Property in advance and cache it to look up a name or help whenever they receive the numeric representation. Provides the localized text representation of the enumeration value. It can be used by Clients only interested in displaying the text to subscribe to the Property instead of the Value Attribute. A typed object which represents a MultiStateValueDiscreteType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. This VariableType defines the general characteristics of a DiscreteItem that can have two states. The value of the DiscreteItem is delivered as boolean but the TrueState and FalseState properties defined by the TwoStateDiscreteType provides display strings for the two possible states. The StatusCode delivered with the value also contains an informational bit called SemanticsChanged. Servers that implement Data Access shall set this Bit in notifications if any of the FalseState or TrueState (changes can cause misinterpretation by users or (scripting) programs) Properties are changed. Clients that use any of these Properties should re-read them before they process the data value. In addition a server can send SemanticChangeEvents if the value of the Property EnumStrings is changed. To indicate this capability, the SemanticChange flag must be set in the AccessLevel and UserAccessLevel attributes of this variable. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. FalseState contains a string to be associated with this DataItem when it is FALSE. This is typically used for a contact when it is in the open (zero) state. for example:"STOP","OPEN","DISABLE","UNSAFE", etc. If the item contains an array then this lookup table shall apply to all elements in the array. TrueState contains a string to be associated with this DataItem when it is TRUE. This is typically used for a contact when it is in the closed (non-zero) state. for example:"RUN","CLOSE","ENABLE","SAFE", etc. If the item contains an array then this lookup table shall apply to all elements in the array. Used as the type for the DataTypeDescriptions. There are no References specified for this VariableType. It defines the optional properties DataTypeVersion and DictionaryFragment. DataTypeVersion indicates whether the type description of the DataType has changed. Changes to the DataTypeVersion may impact the operation of Subscriptions. If the DataTypeVersion changes for a Variable that is being monitored for a Subscription and that uses this DataTypeDescription, then the next data change Notification sent for the Variable will contain a status that indicates the change in the DataTypeDescription. \todo Modify text for DictionaryFragment. In some scenarios an OPC UA Server may have resource limitations which make it impractical to expose large DataTypeDictionaries. In these scenarios the Server may be able to provide access to descriptions for individual DataTypes even if the entire dictionary cannot be read. For this reason, this standard defines a Property for the DataTypeDescription called DictionaryFragment. This Property is a ByteString that contains a subset of the DataTypeDictionary which describes the format of the DataType associated with the DataTypeDescription. Thus, the Server splits the large DataTypeDictionary into several small parts and Clients can access without affecting the overall system performance. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. DataTypeVersion indicates whether the type description of the DataType has changed. A ByteString that contains a subset of the DataTypeDictionary which describes the format of the DataType associated with the DataTypeDescription. This VariableType is used as the type for the DataTypeDictionaries. There are no References specified for this VariableType. It defines the optional properties DataTypeVersion and NamespaceUri. \todo Is this paragraph clear? Context from Spec missing... Changes in DataTypeDictionaries may be a result of a change to a type description, but it is more likely that dictionary changes are a result of the addition or deletion of type descriptions. This includes changes made while the Server is offline so that the new version is available when the Server restarts. Clients may subscribe to the DataTypeVersion Property to determine if the DataTypeDictionary has changed since it was last read. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Clients may subscribe to the DataTypeVersion Property to determine if the DataTypeDictionary has changed since it was last read. Gets or sets the Deprecated
Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute.
The URI for the namespace described by the Value Attribute of the DataTypeDictionary. This VariableType is used to represent a bit mask. Each array element of the OptionSetValues Property contains either the human-readable representation for the corresponding bit used in the option set or an empty LocalizedText for a bit that has no specific meaning. The order of the bits of the bit mask maps to a position of the array, i.e. the first bit (least significant bit) maps to the first entry in the array, etc. The DataType of this VariableType shall be capable of representing a bit mask. It shall be either a numeric DataType representing a signed or unsigned integer, or a ByteString. For example, it can be the BitFieldMaskDataType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Provides the bit mask in an array of Booleans. This allows subscribing to individual entries of the bit mask. The order of the bits of the bit mask points to a position of the array, i.e. the first bit points to the first entry in the array, etc. Gets or sets the OptionSetValues A typed object which represents a OptionSetType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the CreateClientName Gets or sets the CreateSessionId Gets or sets the InvocationCreationTime Gets or sets the LastMethodCall Gets or sets the LastMethodCallTime Gets or sets the LastMethodInputArguments Gets or sets the LastMethodInputValues Gets or sets the LastMethodOutputArguments Gets or sets the LastMethodOutputValues Gets or sets the LastMethodReturnStatus Gets or sets the LastMethodSessionId Gets or sets the LastTransitionTime Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the CreateClientName Gets or sets the CreateSessionId Gets or sets the InvocationCreationTime Gets or sets the LastMethodCall Gets or sets the LastMethodCallTime Gets or sets the LastMethodInputArguments Gets or sets the LastMethodOutputArguments Gets or sets the LastMethodReturnStatus Gets or sets the LastMethodSessionId Gets or sets the LastTransitionTime Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the Active Gets or sets the Classification Gets or sets the DiagnosticsLevel Gets or sets the TimeFirstChange This complex variable type is used for diagnostic information. For each entry of the array, instances of this type will provide a variable of the variable type having the sampling rate as browse name. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. This complex variable type is used for diagnostic information. Its data variables reflect its data type, having the same semantic defined (see ). Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the DisabledMonitoredItemsSamplingCount Gets or sets the MaxSampledMonitoredItemsCount Gets or sets the SampledMonitoredItemsCount Gets or sets the SamplingInterval Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the RestrictToList Gets or sets the SelectionDescriptions Gets or sets the Selections A typed object which represents a SelectionListType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. This complex variable type is used for diagnostic information. Its data variables reflect its data type having the same semantic (see ). Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the CumulatedSessionCount Gets or sets the CumulatedSubscriptionCount Gets or sets the CurrentSessionCount Gets or sets the CurrentSubscriptionCount Gets or sets the PublishingIntervalCount Gets or sets the RejectedRequestsCount Gets or sets the RejectedSessionCount Gets or sets the SecurityRejectedRequestsCount Gets or sets the SecurityRejectedSessionCount Gets or sets the ServerViewCount Gets or sets the SessionAbortCount Gets or sets the SessionTimeoutCount This complex variable type is used for diagnostic information. Its data variables reflect its data type having the same semantic (see ). Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the BuildInfo Gets or sets the CurrentTime Gets or sets the SecondsTillShutdown Gets or sets the ShutdownReason Gets or sets the StartTime Gets or sets the State An abstract type whose subtypes define capabilities of the Server. Vendors may define subtypes of this type. Initializes a new instance of the class. Initializes a new instance of the class. The template. A typed object which represents a ServerVendorCapabilityType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. This complex variable type is used for diagnostic information. For each entry of the array instances of this type will provide a variable of the variable type, having the SessionDiagnostics as browse name. Those variables will also be referenced by the SessionDiagnostics objects defined by the ). Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. This complex variable type is used for diagnostic information. Its data variables reflect its data type, having the same semantic defined (see ). Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the ActualSessionTimeout Gets or sets the AddNodesCount Gets or sets the AddReferencesCount Gets or sets the BrowseCount Gets or sets the BrowseNextCount Gets or sets the CallCount Gets or sets the ClientConnectionTime Gets or sets the ClientDescription Gets or sets the ClientLastContactTime Gets or sets the CreateMonitoredItemsCount Gets or sets the CreateSubscriptionCount Gets or sets the CurrentMonitoredItemsCount Gets or sets the CurrentPublishRequestsInQueue Gets or sets the CurrentSubscriptionsCount Gets or sets the DeleteMonitoredItemsCount Gets or sets the DeleteNodesCount Gets or sets the DeleteReferencesCount Gets or sets the DeleteSubscriptionsCount Gets or sets the EndpointUrl Gets or sets the HistoryReadCount Gets or sets the HistoryUpdateCount Gets or sets the LocaleIds Gets or sets the MaxResponseMessageSize Gets or sets the ModifyMonitoredItemsCount Gets or sets the ModifySubscriptionCount Gets or sets the PublishCount Gets or sets the QueryFirstCount Gets or sets the QueryNextCount Gets or sets the ReadCount Gets or sets the RegisterNodesCount Gets or sets the RepublishCount Gets or sets the ServerUri Gets or sets the SessionId Gets or sets the SessionName Gets or sets the SetMonitoringModeCount Gets or sets the SetPublishingModeCount Gets or sets the SetTriggeringCount Gets or sets the TotalRequestCount Gets or sets the TransferSubscriptionsCount Gets or sets the TranslateBrowsePathsToNodeIdsCount Gets or sets the UnauthorizedRequestCount Gets or sets the UnregisterNodesCount Gets or sets the WriteCount This complex variable type is used for diagnostic information. For each entry of the array instances of this type will provide a variable of the variable type, having the SessionSecurityDiagnostics as browse name. Those variables will also be referenced by the SessionDiagnostics objects defined by the . Since this information is security related, it should not be made accessible to all users, but only to authorised users. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. This complex variable type is used for diagnostic information. Its data variables reflect its data type, having the same semantic (see ). Since this information is security-related, it should not be made accessible to all users, but only to authorised users. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Gets or sets the AuthenticationMechanism Gets or sets the ClientCertificate Gets or sets the ClientUserIdHistory Gets or sets the ClientUserIdOfSession Gets or sets the Encoding Gets or sets the SecurityMode Gets or sets the SecurityPolicyUri Gets or sets the SessionId Gets or sets the TransportProtocol The base VariableType for Variables that store the current state of a StateMachine as a human readable name. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Contains a human readable name for the current state of the state machine after taking the state of any SubStateMachines in account. There is no rule specified for which state or sub-state should be used. It is up to the Server and will depend on the semantics of the StateMachineType. A name which uniquely identifies the current state within the StateMachineType. A subtype may restrict the DataType. A QualifiedName which uniquely identifies the current state within the StateMachineType. An integer which uniquely identifies the current state within the StateMachineType. The FiniteStateVariableType is a subtype of StateVariableType and is used to store the current state of a FiniteStateMachine as a human readable name. It inherits the Properties Id, Name, and Number from the StateVariableType. The optional Name Property is inherited from StateVariableType. Its Value shall be the BrowseName of one of the State objects of the FiniteStateMachineType. The optional Number Property is inherited from StateVariableType. Its Value shall be the StateNumber for one of the State objects of the FiniteStateMachineType. Initializes a new instance of the class. Initializes a new instance of the class. The template. The Property Id shall be the NodeId of one of the State objects of the FiniteStateMachineType. Most states defined in the OPC UA Specification are simple – i.e. they are either TRUE or FALSE. The TwoStateVariableType is introduced specifically for this use case. More complex states are modelled by using a StateMachineType. The TwoStateVariableType is derived from the StateVariableType. The Value Attribute of a TwoStateVariable contains the current state as a human readable name. The EnabledState for example, might contain the name “Enabled” when TRUE and “Disabled” when FALSE. The optional Property EffectiveDisplayName from the StateVariableType is used if a state has substates. It contains a human readable name for the current state after taking the state of any SubStateMachines in account. As an example, the EffectiveDisplayName of the EnabledState could contain “Active/HighHigh” to specify that the Condition is active and has exceeded the HighHigh limit. \todo Mention References HasTrueSubState and HasFalseSubState? A HasTrueSubState Reference is used to indicate that the TRUE state has substates. A HasFalseSubState Reference is used to indicate that the FALSE state has substates. Initializes a new instance of the class. Initializes a new instance of the class. The template. EffectiveTransitionTime specifies the time when the current state or one of its substates was entered. If, for example, a LevelAlarm is active and – while active – switches several times between High and HighHigh, then the TransitionTime stays at the point in time where the Alarm became active whereas the EffectiveTransitionTime changes with each shift of a substate. TrueState and FalseState contain the localized string for the TwoStateVariable value when its Id Property has the value TRUE or FALSE, respectively. Since the two Properties provide metadata for the Type, Servers may not allow these Properties to be selected in the Event filter for a monitored item. Clients can use the Read Service to get the information from the specific ConditionType. The Property Id shall be the current state, i.e. either TRUE or FALSE. Id is inherited from the StateVariableType and overridden to reflect the required DataType (Boolean). TransitionTime specifies the time when the current state was entered. TrueState and FalseState contain the localized string for the TwoStateVariable value when its Id Property has the value TRUE or FALSE, respectively. Since the two Properties provide meta-data for the Type, Servers may not allow these Properties to be selected in the Event filter for a monitored item. Clients can use the Read Service to get the information from the specific ConditionType. This complex variable type is used for diagnostic information. For each entry of the array, instances of this type will provide a Variable of the variable type having the SubscriptionId as browse name. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The base VariableType for Variables that store a Transition that occurred within a StateMachine as a human readable name. The SourceTimestamp for the value specifies when the Transition occurred. This value may also be exposed with the TransitionTime Property. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. Specifies the time when the current state or one of its substates was entered. If, for example, a StateA is active and – while active – switches several times between its substates SubA and SubB, then the TransitionTime stays at the point in time where StateA became active whereas the EffectiveTransitionTime changes with each change of a substate. A name which uniquely identifies a Transition within the StateMachineType. A subtype may restrict the DataType. A QualifiedName which uniquely identifies a transition within the StateMachineType. An integer which uniquely identifies a transition within the StateMachineType. Specifies when the transition occurred. Used to store a Transition that occurred within a FiniteStateMachine as a human readable name The FiniteTransitionVariableType is a subtype of TransitionVariableType. It inherits the Properties Id, Name, and Number from the StateVariableType. The optional Name Property is inherited from the TransitionVariableType. Its Value shall be the BrowseName of one of the Transition objects of the FiniteStateMachineType. The optional Number Property is inherited from the TransitionVariableType. Its Value shall be the TransitionNumber for one of the Transition objects of the FiniteStateMachineType. Initializes a new instance of the class. Initializes a new instance of the class. The template. The NodeId of one of the Transition objects of the FiniteStateMachineType. The property Id is inherited from the TransitionVariableType and overridden to reflect the required DataType. This VariableType is used as the type definition for all Properties. Properties are defined by their BrowseName and therefore they do not need a specialised type definition. It is not allowed to subtype this VariableType. The PropertyType is a subtype of the BaseVariableType. There are no References specified for this VariableType. Initializes a new instance of the class. Initializes a new instance of the class. The template. A typed object which represents a PropertyType. Initializes a new instance of the class. Initializes a new instance of the class. The template. Gets or sets the value. The value. A class which is used to create new type dictionary nodes. The namespace URI for the dictionary. The namespace URI for the data type and encoding node ids. The browse name for the dictionary nodes. The id for node which exposes the XML Schema dictionary. The id for node which exposes the OPC Binary dictionary. The parameters used to add a new node to the server address space. Gets or sets the browse name of the new node. The the browse name of the new node. Gets or sets the parent node id. The parent node id. Gets or sets the reference type id. The reference type id. Gets or sets the type definition id. The type definition id. Gets or sets the requested node id. The requested node id. Gets or sets the attributes. The attributes. Gets or sets the optional browse paths. The optional browse paths. Gets or sets a value indicating whether the Node is available after a server restart. true if persistent; otherwise, false. The settings used to create a new in-memory node. Initializes a new instance of the class. Gets or sets the parent node id. The parent node id. Gets or sets the reference type id. The reference type id. Gets or sets the requested node id. The requested node id. Gets or sets the name of the browse. The name of the browse. Gets or sets the display name. The display name. Gets or sets the description. The description. Gets or sets the node data. The node data. The settings used to create a new in-memory instance node. Gets or sets the type definition id. The type definition id. Gets or sets the modelling rule id. The modelling rule id. Gets or sets the optional browse paths. The optional browse paths. Indicates if the parent specifified by ParentNodeId takes the ownership of the new instance. If set to 'true', the instance will be deleted if the parent is deleted. The settings used to create a new in-memory object node. Initializes a new instance of the class. Gets or sets the notifier parent. The notifier parent. Gets or sets the description. The description. The settings used to create a new in-memory variable node. Initializes a new instance of the class. Gets or sets the value. The value. Gets or sets the type of the data. The type of the data. Gets or sets the value rank. The value rank. Gets or sets the array dimensions. The array dimensions. Gets or sets the access level. The access level. Gets or sets the minimum sampling interval. The minimum sampling interval. Gets or sets a value indicating whether this is historizing. true if historizing; otherwise, false. Gets or sets a value indicating whether this is historizing. true if historizing; otherwise, false. Gets or sets the type of the value. The ValueType should only be set together with ValueData. ValueType and ValueData create the variable configuration which controls how the NodeManager handles I/O for the variable value. The class NodeHandleType defines standard values which can be passed as the ValueType. Gets or sets the value data. The ValueType should only be set together with ValueData. ValueType and ValueData create the variable configuration which controls how the NodeManager handles I/O for the variable value. The ValueData is passed as the UserData of the NodeAttributeHandle. The use case of this data is getting access to a data source. The settings used to create a new in-memory method node. Initializes a new instance of the class. Gets or sets the input arguments. The input arguments. Gets or sets the onput arguments. The onput arguments. Gets or sets a value indicating whether this is executable. true if executable; otherwise, false. The settings used to create a new in-memory view node. Initializes a new instance of the class. Gets or sets a value indicating whether this is contains loops. true if the view contains loops; otherwise, false. The settings used to create a new in-memory instance node. Initializes a new instance of the class. Gets or sets the super type id. The super type id. The settings used to create a new in-memory object type node. Initializes a new instance of the class. Gets or sets a value indicating whether this type is abstract. true if the type is abstract; otherwise, false. The settings used to create a new in-memory variable type node. Initializes a new instance of the class. Gets or sets a value indicating whether this type is abstract. true if the type is abstract; otherwise, false. Gets or sets the value. The value. Gets or sets the type of the data. The type of the data. Gets or sets the value rank. The value rank. Gets or sets the array dimensions. The array dimensions. The settings used to create a new in-memory data type node. Initializes a new instance of the class. Gets or sets a value indicating whether this type is abstract. true if the type is abstract; otherwise, false. Gets or sets the DataTypeDefinition settings. The settings used to create a new in-memory reference type node. Initializes a new instance of the class. Gets or sets a value indicating whether this type is abstract. true if the type is abstract; otherwise, false. Gets or sets a value indicating whether this type is symmetric. true if the type is symmetric; otherwise, false. Gets or sets the inverse name. The inverse name. The settings that control how NodeIds are created by the node manager. Initializes a new instance of the class. Gets or sets the next numeric id. The next numeric id. This value is incremented each time a numeric id is created. Gets or sets the IdType to use for autogenerated NodeIds. The type for autogenerated NodeIds. Creating Numeric NodeIds increments the NextNumericId property. Other types of NodeIds generate a Guid. Gets or sets the component delimiter. The component delimiter. If a String NodeId is provided for a root object or variable the NodeIds for all components nodes are constructed by appending this value and the BrowseName. Gets or sets the first component delimiter. The first component delimiter. If specified this is the delimiter used before the first component name appended to the root NodeId. Additional component names are appended with the ComponentDelimiter. EXPERIMENTAL: This type is a prototype for a not released feature. The type is subject to change. Do not use this type in a product. A subtype of BaseNodeManager with an enhanced toolkit API for variables with HandleType = ExternalPolled Initializes a new instance of the class. The server. The namespace uris. Called when monitoring status changes for variable with a HandleType = ExternalPolled. The context. The node handle. The old mininum sampling interval among all enabled monitored items. MinimumSamplingIntervals.Indeterminate if all monitored items were disabled. The new mininum sampling interval among all enabled monitored items. MinimumSamplingIntervals.Indeterminate if all monitored items are disabled. Reports a change to the value of a variable with a HandleType = ExternalPolled. The context. The node handle. The data value to report. Reports a change to the value of a variable with a HandleType = ExternalPolled. The context. The node handle. The status to report. Gets the node handle. The context. The node identifier. The attribute identifier. The handle. Reads a variable. The context. The node handle. The index range. The data encoding. The value. Starts monitoring a variable. The context. The item handle. The settings. The callback. The result of the operation. NULL if the operation was not procesed by the method. Modifies the monitoring for the variable. The context. The item handle. The settings. The result of the operation. NULL if the operation was not procesed by the method. Stops monitoring a variable. The context. The item handle. The result of the operation. NULL if the operation was not procesed by the method. Sets the data monitoring mode. The context. The item handle. The monitoring mode. The parameters. The result of the operation. NULL if the operation was not procesed by the method. A MonitoredItem for an external a Variable representing an external DataSource The item handle The index range The data encoding The sampling interval The monitoring mode The data change callback A base type which handles the MonitoredItems for a Variable representing an external DataSource. Gets or sets the cached value. The cached value. Gets or sets the monitored items. The monitored items. Adds a monitored item to the datasource. The item handle. The index range. The data encoding. The sampling interval. The monitoring mode. The callback. The shortest sampling interval. MinimumSamplingIntervals.Indeterminate if all monitored items are disabled. Modifies the monitoring for for a monitored item belonging to the datasource. The monitored item id. The new sampling interval. The shortest sampling interval. MinimumSamplingIntervals.Indeterminate if all monitored items are disabled. Changes the monitoring mode for a monitored item belonging to the datasource. The monitored item id. The monitoring mode. The shortest sampling interval. MinimumSamplingIntervals.Indeterminate if all monitored items are disabled. Removes a monitoring items from the datasource. The monitored item id. The shortest sampling interval. MinimumSamplingIntervals.Indeterminate if all monitored items are disabled. Gets the shortest sampling interval. The shortest sampling interval. MinimumSamplingIntervals.Indeterminate if all monitored items are disabled. A class which manages reading from data from an archive. Initializes the specified context. The context. The datasource. The details. Moves the position to the next data value. True if successful, false if there is no more data. Moves the position to the next data value. True if successful, false if there is no more data. Resets the reader to the specified timestamp. The timestamp. if set to true then treat uncertain values as bad values. if set to true then use simple bounds. Get the value at the current position. The value, null if there is no data. Gets the modification info for the value at the current position. The modification info, null if no data exists. Stores a read history request. The apply index range and encoding The index range The data encoding The reader Stores a read history request. True if reading modified data. The num values per node The saved value Stores a read history request. The calculator Stores a read history request. The requested times. Whether use stepped interpolation. Whether to use simple bounds An in-memory history data source. Initializes a new instance of the class. Inserts the specified value in the history. The value. The status. The timestamp. Begins iterating the historical values for a datasource. The timestamp where the iterating begins. A iterator object that can be used to navigate the archive. An iterator that points to the first value if multiple values exist at the timestamp. Resets the specified timestamp. The timestamp. Stores the configuration for a node attribute stored in a BaseNodeManager. Gets or sets the in-memory node associated with the node attribute. The node. Gets or sets the handle type. The handle type Gets or sets data associated with the handle. The handle data. The basic handle types used by the BaseNodeManager. A handle for a node attribute stored in memory. A handle for a node attribute stored in memory that must be polled when subscribed. A handle for a node attribute stored in an external system that must be polled when subscribed. A handle for a node attribute stored in an external system pushes data changes when subscribed. A vendor defined handle type that is treated as ExternalPush by default. Manages the notifier heirarchy for a node manager. This class allows event related operations to efficiently propagate up and down the hierarchy. The INotifierManagerCallback interface is used to receive notifications when an operation occurs. This class is part of the BaseNodeManager class. Initializes a new instance of the class. The server. The event manager. The callback. Adds the remote notifier source. The notifier id. The parent notifier ids. Removes the remote notifier source. The notifier id. Adds a notifier from another node manager The notifier id. The manager. Removes the notifier. The notifier id. The manager. Determines whether [is notifier for source] [the specified notifier handle]. The notifier handle. The source id. true if [is notifier for source] [the specified notifier handle]; otherwise, false. Gets the incoming references for the source. The context. The notifier id. The item handle. The monitoring mode. The parameters. The callback. notifierId or itemHandle or callback Adds the monitored item. The context. The notifier id. The item handle. The parameters. notifierId or itemHandle Removes the monitored item. The context. The notifier id. The item handle. notifierId or itemHandle Sets the monitoring mode. The context. The notifier id. The item handle. The monitoring mode. notifierId or itemHandle Conditions the refresh. The context. The notifier id. The item handle. The callback. notifierId or itemHandle or callback Conditions the refresh. The notifier id. The e. Used to receive notifications from the NotifierManager that the subscription state has changed. Called when event monitoring has started for a notifier. The notifier id. The monitored item. Called when event monitoring has been modified for a notifier. The notifier id. The monitored item. Called when event monitoring has stopped for a notifier. The notifier id. The monitored item. Called when condition refresh has been called for the notifier. The notifier id. The item handle. The callback to use to report the current state of all conditions. Stores the state for an event monitored item. Initializes a new instance of the class. The item handle. The monitoring mode. The parameters. The callback. Gets the item handle. Gets the callback. Gets or sets the monitoring mode. Gets or sets the monitoring mode. Initializes a new instance of the class. The server. The namespace uris. Called when the node manager is started. Determines whether the specified context has access to the browse handle. The request context. The node handle. true if the specified context has access; otherwise, false. Determines whether the current context has specified access to the handle. The request context. The node handle. The desired access masks. true, if the specified context has access; otherwise, false. Gets the method handler. The request context. The method handle. Sets a delegate used to override the GetHistoryEventHandle method. The handler. Gets the history event handle. The context. The notifier identifier. The handle. Good if successful; An appropriate error otherwise. A delegate used to provide a handler for historical events. The context. The notifier identifier. The handle. Good if successful; An appropriate error otherwise. Stores the elements of a NodeId after it is parsed. The namespace index that qualified the NodeId. The identifier for the base for the NodeId. The type of root node. The relative path to the component identified by the NodeId. Parses the specified node identifier. The node identifier. The parsed node identifier. Null if the identifier cannot be parsed. Constructs a node identifier from the component pieces. Constructs a node identifier for a component with the specified name. The node identifier. A class that can be used to access server functionality internally. Initializes a new instance of the class. The server. Gets the node metadata. The request context. The node id. The fields to return. The node class filter. Gets the node metadata. The request context. The node handle. The fields to return. The node class filter. Gets the node metadata. The request context. The browse handle. The fields to return. The node class filter. Gets the reference description. The request context. The node id. The reference type id. if set to true [is forward]. The result mask. The node class mask. Gets the node attributes. The request context. The node id. The expected node class. Reads the attribute. The request context. The node id. The attribute id. The default value. Reads the component value. The request context. The node id. Name of the component. The default value. Reads the component value. The request context. The node id. The browse path. The default value. Writes the attribute. The request context. The node id. The attribute id. The value to write. Reads the component value. The request context. The node id. Name of the component. The value to write. Reads the component value. The request context. The node id. The browse path. The value to write. Browses the specified context. The request context. The view to browse. The node to browse. Browses the specified context. Callback data for a asynchronous requests. Callback for a asynchronous browse requests. Called when browses operation completes. Browses the specified context. Browses the specified context. Browses the specified context. Callback for a asynchronous browse requests. Called when browses operation completes. Translates the specified context. The request context. The node to translate. The relative path. The index. The result. Callback for a asynchronous browse requests. Called when browses operation completes. Reads the values of the specified nodes. Callback data for a asynchronous read requests. Called when a read operation completes. Writes the values of the specified nodes. Callback data for a asynchronous Write requests. Called when a Write operation completes. Calls the values of the specified nodes. Callback data for a asynchronous Call requests. Called when a Call operation completes. Creates the data monitored item. Creates the data monitored item. Creates the data monitored item. Callback data for a asynchronous create data monitored item requests. Called when a create data operation completes. Modifies the data monitored item. Callback data for a asynchronous create data monitored item requests. Called when a create data operation completes. Deletes the data monitored item. Callback data for a asynchronous delete data monitored item requests. Called when a delete monitored item operation completes. Creates the event monitored item. Creates the event monitored item. Creates the data monitored item. Called when a create data operation completes. Modifies the data monitored item. Called when a create data operation completes. Deletes the data monitored item. Called when a delete monitored item operation completes. Sets the monitoring mode. The request context. The monitoring mode. The items to modify. Callback data for a asynchronous delete data monitored item requests. Called when a delete monitored item operation completes. The parameters used to create a data monitored item with no filtering or queuing. Gets or sets the node id. The node id. Gets or sets the attribute id. The attribute id. Gets or sets the callback. The callback. The parameters used to create a data monitored item with filtering and/or queuing. Gets or sets the node id. The node id. Gets or sets the attribute id. The attribute id. Gets or sets the index range. The index range. Gets or sets the sampling interval. The sampling interval. Gets or sets the size of the queue. The size of the queue. Gets or sets a value indicating whether [discard oldest]. true if [discard oldest]; otherwise, false. Gets or sets the filter. The filter. Gets or sets the callback. The callback. Gets or sets the callback data. The callback data. The parameters used to create a data monitored item with no filtering or queuing. Gets or sets the node id. The node id. Gets or sets the select clause. The select clause. Gets or sets the size of the queue. The size of the queue. Gets or sets a value indicating whether [discard oldest]. true if [discard oldest]; otherwise, false. Gets or sets the callback. The callback. The parameters used to create a data monitored item with filtering and/or queuing. Gets or sets the node id. The node id. Gets or sets the size of the queue. The size of the queue. Gets or sets a value indicating whether [discard oldest]. true if [discard oldest]; otherwise, false. Gets or sets the filter. The filter. Gets or sets the callback. The callback. Gets or sets the callback data. The callback data. Invoked when a new data change is available for an internal subscription. The request context. The item handle. The data change. The callback data. Invoked when a new event is available for an internal subscription. The request context. The item handle. The e. The callback data. A class that stores the settings for a server. Initializes a new instance of the class. The application. Gets or sets the product URI. The product URI. Gets or sets the name of the product. The name of the product. Gets or sets the name of the manufacturer. The name of the manufacturer. Gets or sets the software version. The software version. Gets or sets the build number. The build number. Gets or sets the build date. The build date. Gets or sets a value indicating whether this instance is audit activated. true if this instance is audit activated; otherwise, false. Gets or sets the available locale ids. The available locale ids. Gets or sets the available server profiles This value specified the value of ServerProfilesArray property of ServerCapabilities Object. Gets or sets the ServerCapabilities. Contains the strings exposed in the ServerCapabilties variable. Indicates if the server uses the chain of the client certificate. Indicates that the server will not allow depreciated security policies, such as Basic128Rsa15, to be used even if configured. Gets or sets the discovery server URL. The discovery server URL. Gets or sets a value indicating whether [registration enabled]. true if [registration enabled]; otherwise, false. Gets or sets the registration interval. The registration interval. A handle for a node accessed during a browse operation. Initializes a new instance of the class. The node manager. The user access manager. The node id. Determines whether the reference is selected by the browse settings. The request context. The reference type id. Set to true if the reference is an inverse reference. The browse settings to use in the comparison. true if the reference is selected by the browse settings; otherwise, false. A handle for a single operation within a browse or translate request. Initializes a new instance of the class. The browse handle. The view handle. Gets the browse handle. Gets the view handle. Gets the view manager. Gets the node manager. Gets the node id. A handle for a node. Initializes a new instance of the class. The event manager. The node manager. The user access manager. The node id. Gets the I/O manager that created the handle. A handle for a node related operations. Initializes a new instance of the class. The notifier handle. Gets the node handle. Gets the IO manager. Gets the node id. A handle for a monitored item. Initializes a new instance of the class. The node handle. The monitored item id. Initializes a new instance of the class. The notifier handle. The monitored item id. Gets the monitored item id. Gets the opaque data associated with the handle by the creator. Gets the monitored item type. The monitored item type. Gets the node id. Gets the node id. Gets the node handle (must be null if the ItemType is MonitoredItemType.Event). Gets the notifier handle (must be null if the ItemType is MonitoredItemType.Data). Gets the I/O manager that knows how read the value of the node attribute. Gets the event manager that knows how to access the events produced by the notifier. A handle for monitored item operations. Initializes a new instance of the class. The item handle. Gets the item handle. Gets the monitored item type. The monitored item type. Gets the monitored item id. Gets the node id. Gets the node handle (must be null if the ItemType is MonitoredItemType.Event). Gets the I/O manager that knows how read the value of the node attribute. Gets the notifier handle (must be null if the ItemType is MonitoredItemType.Data). Gets the event manager that knows how to access the events produced by the notifier. The types of monitored items. A data monitored item. An event monitored item. A handle for a view. Initializes a new instance of the class. The view manager. The view. Gets the manager for the view. Gets the view. A handle for a node which supports data history. Initializes a new instance of the class. The history data read manager. The history data update manager. The node manager. The user access manager. The node id. Gets the manager that handles history data reads for the node. Gets the manager that handles history data updates for the node. A handle for a single history data operation within a request. Initializes a new instance of the class. The node handle. Gets the node handle. Gets the manager that handles history data reads for the node. Gets the manager that handles history data updates for the node. Gets the node id. A handle for node and attribute accessed during a read/write operation. Initializes a new instance of the class. The I/O manager. The node manager. The user access manager. The node id. The attribute id. Gets the I/O manager to used to access the attribute. Gets the attribute id. Gets or sets the browse handled associated with the NodeHandle. Used to optimize lookups of NodeMetadata. A handle for a node related operations. Initializes a new instance of the class. The node handle. Gets the node handle. Gets the IO manager. Gets the node manager. Gets the node id. Gets the attribute id. A handle for an object and method accessed during a call operation. Initializes a new instance of the class. The method manager. The node manager. The user access manager. The object id. The method id. Gets the method manager that knows how to call the method on the selected object. Gets the object id. Gets the method id. Gets the method declaration id. Gets the UserData for the Method Node. The NodeData has the UserData for the Object Node. Gets the handler for the method. Gets or sets the browse handled associated with the NodeHandle. Used to optimize lookups of NodeMetadata. A handle for a single call operation within a request. Initializes a new instance of the class. The method handle. Gets the method manager that knows how to call the method on the selected object. Gets the method manager that knows how to call the method on the selected object. Gets the object id. Gets the method id. Gets the handler for the method. A interface to an object which implements method calls. Gets the method dispatcher. The request context. The object id. The method id. A delegate for a method that can be called to execute the method. The method which is called to invoke the method. The request context. The method handle. The input arguments. The input argument results. The output arguments. The status for the method. May be thrown but has the same meaning as a Bad return code. A handle for a transaction. Initializes a new instance of the class. The request context. Type of the transaction. The callback to use when an operation completes. The callback data. Gets the request context. Gets the type of the transaction. The type of the transaction. The callback invoked whenever an operation within a transaction completes. Gets the opaque data associated with the transaction by creator. Gets or sets a value indicating whether the transaction is done. Gets or sets the total item count hint. Adds the specified parameter to the list associated with the type. The parameter. This method is used to efficiently store parameters for multiple operations which can be processed as a batch. Gets the list of parameters with the specified type. The type of parameter. The list. This method returns a reference to the list populated with the Add method. A base class for a handle for a single operation within a request. Gets or sets the transaction associated with the handle. The transaction. Gets or sets the index within the list of operations for a request. The index. Gets the opaque data associated with the handle by the creator of the operation handle. The user data. Returns a that represents this instance. A that represents this instance. Returns a that represents this instance. The format. The format provider. A that represents this instance. \ingroup UaServerInterfaces An interface to an object that allows nodes and references to be added and removed. Adds a new node. The request context. The settings. The assigned node id. Good if successful; Otherwise an error code. Deletes a node. The request context. The node id. if set to true [delete target references]. Good if successful; Otherwise an error code. Adds a reference. The request context. The source node id. The reference type id. if set to true then the reference is a inverse reference. The target node id. if set to true then the reverse reference is added as well. Good if successful; Otherwise an error code. Deletes a reference. The request context. The source node id. The reference type id. if set to true then the reference is a inverse reference. The target node id. if set to true then the reverse reference is deleted as well. Good if successful; Otherwise an error code. \ingroup UaServerInterfaces An interface to an object that manages access to events produced by a node. Begins the transaction. The request context. The total item count hint. Type of the transaction. The callback to raise when an opereation completes. The callback data. The transaction handle. Good if the transaction could be created, an error code otherwise. Finishes the transaction. The transaction. Starts monitoring a notifier for events. The operation handle. The settings. The monitored item id. The callback to use when events occur. Good if the monitored item can be created, an error code otherwise. If this method returns Good the callback passed to BeginTransaction must be called when the operation completes. Modifies the monitoring for an item. The operation handle. The settings. Good if the monitored item can be modified, an error code otherwise. If this method returns Good the callback passed to BeginTransaction must be called when the operation completes. Stops monitoring an item. The operation handle. Good if the monitored item can be modified, an error code otherwise. If this method returns Good the callback passed to BeginTransaction must be called when the operation completes. Changes the monitoring mode for an item. The operation handle. The monitoring mode. The parameters. Good if the monitored item can be modified, an error code otherwise. If this method returns Good the callback passed to BeginTransaction must be called when the operation completes. Called when monitoring starts for a notifier from another IEventManager higher in the hierarchy. The context. The id for the notifier in the other IEventManager. The item handle. The parameters. The callback to use when events occur. Called when monitoring changes for a notifier from another IEventManager higher in the hierarchy. The context. The id for the notifier in the other IEventManager. The item handle. The parameters. Called when monitoring stops for a notifier from another IEventManager higher in the hierarchy. The context. The id for the notifier in the other IEventManager. The item handle. Called when the condition refresh is called for a notifier higher in the hierarchy. The context. The id for the notifier. The item handle. The callback to call with the current state of all conditions. The interface for an event manager that allows other event managers to link to it. Adds a link from a IEventManager to a notifier. The notifier id. The event manager. Removes a link from IEventManager to a notifier. The notifier id. The manager. Reports an event for the notifier id. The notifier id. The event. Called when a start event monitoring operation completes. The operation handle. The callback data. The item handle. The result. if set to true then the current thread should not be blocked. Called when a modify event monitoring operation completes. The operation handle. The callback data. The result. if set to true then the current thread should not be blocked. Called when a new event ocurrs. The request context. The item handle. The event. if set to true then the current thread should not be blocked. The results for a data monitoring operation. Gets or sets the status code. The status code. Gets or sets the client handle. The client handle. Gets or sets the size of the revised queue. The size of the revised queue. Gets or sets a value indicating whether [discard oldest]. true if [discard oldest]; otherwise, false. Gets or sets the revised sampling interval. The revised sampling interval. Gets or sets a value indicating whether [SDK must apply filter]. true if [SDK must apply filter]; otherwise, false. Gets or sets the filter. The filter. Gets or sets the filter result. The filter result. An interface to an object that manages access to nodes in an address space. Determines whether the specified context has access to the browse handle. The request context. The node handle. true if the specified context has access; otherwise, false. Determines whether the specified context has access to the handle. The request context. The node handle. The access required. true if the specified context has access; otherwise, false. Determines whether the specified context has access to the method handle. The request context. The node handle. true if the specified context has access; otherwise, false. Determines whether the specified context has access to the history data handle. The request context. The node handle. The access masks. true if the specified context has access; otherwise, false. Determines whether the specified context has access to the history event handle. The request context. The node handle. The access masks. true if the specified context has access; otherwise, false. The possible user access rights. Read an attribute. Read an attribute history. Write an attribute. Update an attribute's history. Insert to an attribute's history. Delete an attribute's history. Read event history for the object. Update event history for the object. Insert event history for the object. Delete event history for the object. Browses the references from a node. Translates a browse path. Read all attributes but the Value attribute Write all attributes but the Value attibute An interface to an object allows objects to be linked via reflection to an in-memory node. Links an object to a node in the address space. The root id. The instance. The sync lock. The mapper. The minimum sampling interval. A handle that can be used to unlink the node. Unlinks a object from a node in the address space. The root id. The handle. An interface to an object that manages access to a view. Determines whether the reference is in the specified view. The request context. The view. The source handle. The reference type id. if set to true then the reference is an inverse reference. The target id. true if the reference is in the view; otherwise, false. \ingroup UaServerInterfaces An interface to an object that manages access to the attribute values of nodes. Begins the data transaction. The request context. The total item count hint. The max age. The timestamps to return. Type of the transaction. The callback. The callback data. The data transaction handle. Good if successful; otherwise an error code. Finishes the data transaction. The transaction. Begins a read operation (external I/O). The operation handle. The settings. Good if successful; otherwise an error code. If this method returns Good the callback passed to BeginDataTransaction must be called when the operation completes. Begins a write operation (must not block). The operation handle. The settings. Good if successful; otherwise an error code. If this method returns Good the callback passed to BeginDataTransaction must be called when the operation completes. Begins a start data monitoring operation (must not block). The operation handle. The monitored item id. The settings. The callback. Good if successful; otherwise an error code. If this method returns Good the callback passed to BeginDataTransaction must be called when the operation completes. Begins a modify data operation (must not block). The operation handle. The settings. Good if successful; otherwise an error code. If this method returns Good the callback passed to BeginDataTransaction must be called when the operation completes. Begins a stop data monitoring operation (must not block). The operation handle. Good if successful; otherwise an error code. If this method returns Good the callback passed to BeginDataTransaction must be called when the operation completes. Begins a set data monitoring mode operation (must not block). The operation handle. The monitoring mode. The parameters. Good if successful; otherwise an error code. If this method returns Good the callback passed to BeginDataTransaction must be called when the operation completes. A function used to report the results of a read operation. The operation handle. The callback data. The data value. if set to true then do not block thread. A function used to report the results of a write operation. The operation handle. The callback data. The result. if set to true then do not block thread. A function used to report the results of a start data monitoring operation. The operation handle. The callback data. The item handle. The result. if set to true then do not block thread. A function used to report the results of a modify data monitoring operation. The operation handle. The callback data. The result. if set to true then do not block thread. A function used to report the results of a stop data monitoring operation. The operation handle. The callback data. The result. if set to true then do not block thread. A function used to report the results of a set data monitoring mode operation. The operation handle. The callback data. The result. if set to true then do not block thread. A function used to report a change to a monitored attribute. The request context. The item handle. The data value. if set to true then do not block thread. The results for a data monitoring operation. Gets or sets the status code. The status code. Gets or sets the client handle. The client handle. Gets or sets the size of the revised queue. The size of the revised queue. Gets or sets a value indicating whether to discard the oldest entry in the queue. true then the oldest entry is discarded; otherwise, false. Gets or sets the revised sampling interval. The revised sampling interval. Gets or sets a value indicating whether the SDK must apply monitoring filter. true if the SDK must apply monitoring filter; otherwise, false. Gets or sets the monitoring filter. The monitoring filter. Gets or sets the monitoring filter data. The monitoring filter data. Gets or sets the monitoring filter result. The monitoring filter result. The base class for event objects. The OPC UA BaseEventType defines all general characteristics of an Event. All other EventTypes derive from it. Initializes a new instance of the class. Initializes a new instance of the class. The template. The node identifier for a representation of an event in the Server address space. Used mainly for ConditionIds. Generated by the server to uniquely identify a particular Event Notification. The Server is responsible to ensure that each Event has its unique EventId. It may do this, for example, by putting GUIDs into the ByteString. Clients can use the EventId to assist in minimizing or eliminating gaps and overlaps that may occur during a redundancy failover. The EventId shall always be returned as value and the Server is not allowed to return a StatusCode for the EventId indicating an error. Describes the specific type of Event. The EventType shall always be returned as value and the Server is not allowed to return a StatusCode for the EventType indicating an error. Identifies the Node that the Event originated from. If the Event is not specific to a Node, the NodeId is set to null. Some subtypes of this BaseEventType may define additional rules for SourceNode. Provides a description of the source of the Event. This could be the DisplayName of the Event source, if the Event is specific to a Node, or some server-specific notation. Provides the time the Event occurred. This value is set as close to the event generator as possible. It often comes from the underlying system or device. Once set, intermediate OPC UA Servers shall not alter the value. Provides the time the OPC UA Server received the Event from the underlying device of another Server. ReceiveTime is analogous to ServerTimestamp defined in Part 4 of the OPC UA Specification, i.e. in the case where the OPC UA Server gets an Event from another OPC UA Server, each Server applies its own ReceiveTime. That implies that a Client may get the same Event, having the same EventId, from different Servers having different values of the ReceiveTime. The ReceiveTime shall always be returned as value and the Server is not allowed to return a StatusCode for the ReceiveTime indicating an error. Contains the Offset and the DaylightSavingInOffset flag. The Offset specifies the time difference (in minutes) between the Time Property and the time at the location in which the event was issued. If DaylightSavingInOffset is TRUE, then Standard/Daylight savings time (DST) at the originating location is in effect and Offset includes the DST correction. If FALSE, then the Offset does not include DST correction and DST may or may not have been in effect. Provides a human-readable and localizable text description of the Event. The Server may return any appropriate text to describe the Event. A null string is not a valid value; if the Server does not have a description, it shall return the string part of the BrowseName of the Node associated with the Event. An indication of the urgency of the Event. This is also commonly called “priority”. Values will range from 1 to 1000, with 1 being the lowest severity and 1000 being the highest. Typically, a severity of 1 would indicate an Event which is informational in nature, while a value of 1000 would indicate an Event of catastrophic nature, which could potentially result in severe financial loss or loss of life. It is expected that very few Server implementations will support 1000 distinct severity levels. Therefore, Server developers are responsible for distributing their severity levels across the 1 – 1000 range in such a manner that clients can assume a linear distribution. For example, a client wishing to present five severity levels to a user should be able to do the following mapping: Client Severity | OPC Severity ----------------|------------- HIGH | 801 – 1000 MEDIUM HIGH | 601 – 800 MEDIUM | 401 – 600 MEDIUM LOW | 201 – 400 LOW | 1 – 200 Using a NodeAccessInfo can restrict the access of an event to single scopes. Assigns a new EventId, Time and ReceiveTime to the event. Creates the event. The manager. The new event. Creates the event. The manager. If TRUE a new EventId/Time/ReceiveTime is set automatically and stored in the object. If FALSE the caller must set the EventId/Time/ReceiveTime before calling this method. The new event. Updates the event. The event to update. A class of handle values used by the class. A class that stores the fields for an event fired by the server application. This interface is used to pass an event to ServerManager.ReportEvent for distribution to interested clients. The class BaseEventModel provides the method UpdateEvent, setting all event fields at a GenericEvent which are defined by an EventType. Initializes a new instance of the class. The manager. Generated by the server to uniquely identify a particular Event Notification. The Server is responsible to ensure that each Event has its unique EventId. It may do this, for example, by putting GUIDs into the ByteString. Clients can use the EventId to assist in minimizing or eliminating gaps and overlaps that may occur during a redundancy failover. The EventId shall always be returned as value and the Server is not allowed to return a StatusCode for the EventId indicating an error. Describes the specific type of Event. The EventType shall always be returned as value and the Server is not allowed to return a StatusCode for the EventType indicating an error. Identifies the Node that the Event originated from. If the Event is not specific to a Node, the NodeId is set to null. Some subtypes of this BaseEventType may define additional rules for SourceNode. Provides the time the Event occurred. This value is set as close to the event generator as possible. It often comes from the underlying system or device. Once set, intermediate OPC UA Servers shall not alter the value. Using a NodeAccessInfo can restrict the access of an event to single scopes. Initializes the event. The event id. Type of the event. The source node. Name of the source. The severity. The message. Sets the value for the event field with the specified handle. The handle. The value. Sets the value for the event field with the specified handle. The handle. The value. Sets the value for the event field with the specified browse path. The browse path. The value. Sets the value for the event field with the specified browse path. The browse path. The value. Converts the browse names to a browse path. The browse names. Converts the browse names to a browse path. The browse names. Converts the browse names to a browse path. The browse names. Gets the field value for the browse path. The browse names. Gets the field value for the browse path. The browse names. Gets the field value for the browse path. The browse names. Gets the field value for the handle The handle. Gets the field value for the operand. The clause. Gets the manager. The manager. The severity for an event. Event severities can have any value between 1 and 1000. This enumeration provides default values. The highest possible severity. The event has high severity. The event has medium high severity. The event has medium severity. The event has medium-low severity. The event has low severity. The lowest possible severity. Defines the default names for the condition states. The name of the Disabled state. The name of the Enabled state. The name of the Inactive state. The name of the Active state. The name of the Unacknowledged state. The name of the Acknowledged state. The name of the Unconfirmed state. The name of the Confirmed state. The name of the Unsuppressed state. The name of the Suppressed state. The name of the HighHighActive state. The name of the HighActive state. The name of the LowActive state. The name of the LowLowActive state. Initializes a new instance of the class. The server. Gets the namespace uris. Enables the filter. The request context. The filter. The filter result. Disables the filter. The filter. if set to true [enabled]. Gets the field handle. The browse path. Creates the field handle. The browse path. Determines whether the specified id is subscribed. The id. true if the specified id is subscribed; otherwise, false. Evaluates the first element in the ContentFilter. If the first or any subsequent element has dependent elements, the dependent elements are evaluated before the root element (recursive descent). Elements which are not linked (directly or indirectly) to the first element will not be evaluated (they have no influence on the result). The context to use when evaluating the filter. The filter. The target to use when evaluating elements that reference the type model. Returns true, false or null. Validates the filter. The request context. The index. The element. Validates the operand. The request context. The operand. Evaluates element at the specified index. Returns the operands for the element. Returns the value for the element. Returns the BuiltInType type for the value. Returns the BuiltInType type for the DataTypeId. Returns the data type precedence for the value. Implicitly converts the values according to their data type precedence. Returns true if the values are equal. Returns true if the target string matches the UA pattern string. The pattern string may include UA wildcards %_\[]! String to check for a pattern match. Pattern to match with the target string. true if the target string matches the pattern, otherwise false. Converts a value to a Boolean Converts a value to a SByte Converts a value to a Byte Converts a value to a Int16 Converts a value to a UInt16 Converts a value to a Int32 Converts a value to a UInt32 Converts a value to a Int64 Converts a value to a UInt64 Converts a value to a Float Converts a value to a Double Converts a value to a String Converts a value to a DateTime Converts a value to a Guid Converts a value to a ByteString Converts a value to a NodeId Converts a value to a ExpandedNodeId Converts a value to a StatusCode Converts a value to a QualifiedName Converts a value to a LocalizedText Casts a value to the specified target type. Casts a value to the specified target type. And FilterOperator Or FilterOperator Not FilterOperator Equals FilterOperator GreaterThan FilterOperator GreaterThanOrEqual FilterOperator LessThan FilterOperator LessThanOrEqual FilterOperator Between FilterOperator InList FilterOperator Like FilterOperator IsNull FilterOperator Cast FilterOperator OfType FilterOperator InView FilterOperator RelatedTo FilterOperator RelatedTo FilterOperator An optimized operand. Initializes a new instance of the class. The type definition id. The browse path. Gets or sets the handle. The handle. Gets or sets the type definition id. The type definition id. Gets or sets the browse path. The browse path. Gets or sets the attribute id. The attribute id. Gets or sets the index range. The index range. Determines whether the specified is equal to this instance. The to compare with this instance. true if the specified is equal to this instance; otherwise, false. The parameter is null. Returns a hash code for this instance. A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. \ingroup UaServerInterfaces An interface to an object that manages a subset of the nodes in a server. Called when the node manager is started. Called when the node manager is stopped. Called when a new session is created. The session. Called when a session is activated. The session. Called when a new session is closed. The session. Gets the browse handle for the specified node. The request context. The view. The node id. The handle. Good if successful; An error code otherwise. Gets the view handle for the specified view. The request context. The view. The handle. Good if successful; An error code otherwise. Gets the node handle for the specified node and attribute. The request context. The node id. The attribute id. The handle. Good if successful; An error code otherwise. Gets the notifier handle for the specified notifier. The request context. The node id. The handle. Good if successful; An error code otherwise. Gets the method handle for the specified object and method. The request context. The object id. The method id. The handle. Good if successful; An error code otherwise. Gets the history data handle for the specified variable. The request context. The variable id. The handle. Good if successful; An error code otherwise. Gets the history events handle for the specified notifier. The request context. The notifier id. The handle. Good if successful; An error code otherwise. Begins a browse operation. The request context. The node to browse. The continuation point. if set to true [release continuation point]. The callback. The callback data. Good if successful; An error code otherwise. Begins a translate browse paths operation. The request context. The node to browse. The relative path. The index. The callback. The callback data. Good if successful; An error code otherwise. An interface to an object that manages a subset of the nodes in a server. This interface only needs to be implemented by NodeManagers that allow other NodeManagers to link to them. Adds a cross reference. The source node id. The node manager. The source node is a node managed by the NodeManager being called. This method tells the NodeManager that references from the source exist in another NodeManager. When the source is browsed the NodeManager will call the BeginBrowse method on the NodeManger passed to this method. Removes a cross reference. The source node id. The node manager. A function that is called when a browse operation completes. The operation handle. The callback data. The browse result. The continuation point. if set to true do not block thread. A function that is called when a translate browse paths operation completes. The operation handle. The callback data. The browse result. if set to true do not block thread. A class that polls one or more I/O managers for data changes. Initializes a new instance of the class. The server. Frees any unmanaged resources. An overrideable version of the Dispose. Starts the monitoring. The request context. The handle. The request. The callback. The revised sampling interval. Modified the monitoring. The request context. The handle. The request. The revised sampling interval. Sets the monitoring mode. The request context. The item. The monitoring mode. Stops the monitoring. The request context. The item. Session is activated. The session. Session is closed. The session. Updates the group sample time. The group. Checks the state of the thread. Does the poll. Reads the group. The group. Reports the item. The item. The data value. Called when [read complete event handler]. The node handle. The user data. The data value. if set to true then the current thread should not be blocked. A group of monitored items. Gets the monitored item id. A group of monitored items. Initializes a new instance of the class. The group id. Removes the specified item. The item. The unique identifier for a group. Initializes a new instance of the class. The request context. The manager. Gets or sets the preferred locales. The preferred locales. Gets or sets the user identity. The user identity. Gets or sets the IO manager. The IO manager. Determines whether the specified is equal to this instance. The to compare with this instance. true if the specified is equal to this instance; otherwise, false. The parameter is null. Returns a hash code for this instance. A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. A class that stores a NodeId/AttributeId pair. Initializes a new instance of the class. The node id. The attribute id. Gets or sets the node id. The node id. Gets or sets the attribute id. The attribute id. Determines whether the specified is equal to this instance. The to compare with this instance. true if the specified is equal to this instance; otherwise, false. The parameter is null. Returns a hash code for this instance. A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. The metadata for a node. Gets or sets the node id. The node id. Gets or sets the node class. The node class. Gets or sets the name of the browse. The name of the browse. Gets or sets the display name. The display name. Gets or sets the type definition id. The type definition id. Gets or sets the data type id. The data type id. Gets or sets the value rank. The value rank. Gets or sets the array dimensions. The array dimensions. The fields to return in the node metadata. The node class. The browse name. The browse name. The type definition. The data type, value rank and array dimensions. An object that manages the types in the address space. Initializes a new instance of the class. The server. Determines whether a handle id is a known type id. The type extended identifier. true if the specified type id is known; otherwise, false. Determines whether a handle id is a known type id. The type identifier. true if the specified type id is known; otherwise, false. Returns the immediate supertype for the type. The extended type identifier. A type identifier of the Returns the immediate supertype for the type. The type identifier. The immediate supertype idnetyfier for Determines whether a type is a subtype of another type. The subtype identifier. The supertype identifier. true if is supertype of ; otherwise, false. Determines whether a type is a subtype of another type. The subtype identifier. The supertype identyfier. true if is supertype of ; otherwise, false. Returns the handle identifier for the reference type with the specified browse name. The reference type id. The identifier for the Returns the handle identifier for the reference type with the specified browse name. Browse name of the reference. The identifier for the Returns the data type for the specified encoding. The encoding id. Returns the data type for the specified encoding. The encoding id. The data type for the Registers the type. The subtype id. The super type id. Unregisters the type. The type id. Registers the type of the reference. The reference type id. Name of the reference type. Unregisters the type of the reference. The reference type id. Registers the encoding. The encoding id. The data type id. Unregisters the type. The encoding id. Registers a fully instantiated type. The type id. The type. Unregisters a fully instantiated type. The type id. Finds a fully instantiated type. The type id. A fully instantiated type. An instance belonging to a fully instantiated type. A reference belonging to a fully instantiated type. Manages the cross references for a node manager. A cross reference is a reference between nodes managed by difference node managers. The CrossReferenceManager manages these references for a single node manager. An 'IncomingReference' is a reference from a node another node manager. An 'OutgoingReference' is a reference from a node in this node manager to a node in another node manager. Initializes a new instance of the class. The server. The node manager. Adds the cross reference. The source node id. The manager. Removes the cross reference. The source node id. The manager. Adds the incoming references. The target. The references. Removes the incoming references. The target id. The source id. Gets the incoming references for the source. The source node id. Gets the incoming references for the source. The source node id. The root node manager for a server. Initializes a new instance of the class. The server. Frees any unmanaged resources. An overrideable version of the Dispose. Called when the node manager is started. Called when the node manager is stopped. Called when a new session is created. The session. Called when a session is activated. The session. Called when a new session is closed. The session. Gets the browse handle for the specified node. The request context. The view. The node id. The handle. Gets the view handle for the specified view. The request context. The view. The handle. Good if successful; An error code otherwise. Gets the node handle for the specified node. The request context. The node id. The attribute id. The handle. Good if successful; An error code otherwise. Gets the notifier handle for the specified notifier. The request context. The node id. The handle. Good if successful; An error code otherwise. Gets the notifier handle for the specified notifier. The request context. The object id. The method id. The handle. Good if successful; An error code otherwise. Gets the history data handle for the specified variable. The request context. The variable id. The handle. Good if successful; An error code otherwise. Gets the history events handle for the specified notifier. The request context. The notifier id. The handle. Good if successful; An error code otherwise. Begins the browse. The request context. The node to browse. The continuation point. if set to true [release continuation point]. The callback. The callback data. Good if successful; An error code otherwise. Begins the translate browse paths. The request context. The node to browse. The relative path. The index. The callback. The callback data. Good if successful; An error code otherwise. Adds the cross reference. The source node id. The manager. Removes the cross reference. The source node id. The manager. Determines whether the reference is in the specified view. The request context. The view. The source handle. The reference type id. if set to true then the reference is an inverse reference. The target id. true if the reference is in the view; otherwise, false. Links an object to a node in the address space. The root id. The instance. The sync lock. The mapper. The minimum sampling interval. A handle that can be used to unlink the node. Unlinks a object from a node in the address space. The root id. The handle. Adds a new node. The request context. The settings. The assigned node id. Good if successful; Otherwise an error code. Deletes a node. The request context. The node id. if set to true [delete target references]. Good if successful; Otherwise an error code. Adds a reference. The request context. The source node id. The reference type id. if set to true then the reference is a inverse reference. The target node id. if set to true then the reverse reference is added as well. Good if successful; Otherwise an error code. Deletes a reference. The request context. The source node id. The reference type id. if set to true then the reference is a inverse reference. The target node id. if set to true then the reverse reference is deleted as well. Good if successful; Otherwise an error code. Begins the transaction. The request context. The total item count hint. Type of the transaction. The callback to raise when an opereation completes. The callback data. The transaction handle. Good if the transaction could be created, an error code otherwise. Finishes the transaction. The transaction. Starts monitoring a notifier for events. The operation handle. The settings. The monitored item id. The callback. Good if the monitored item can be created, an error code otherwise. Modifies the monitoring for an item. The operation handle. The settings. Good if the monitored item can be modified, an error code otherwise. Stops monitoring an item. The operation handle. Good if the monitored item can be modified, an error code otherwise. Changes the monitoring mode for an item. The operation handle. The monitoring mode. The parameters. Good if the monitored item can be modified, an error code otherwise. Called when monitoring starts for a notifier from another IEventManager higher in the hierarchy. The context. The id for the notifier in the other IEventManager. The item handle. The parameters. The callback to use when events occur. notifierId Called when monitoring changes for a notifier from another IEventManager higher in the hierarchy. The context. The id for the notifier in the other IEventManager. The item handle. The parameters. notifierId Called when monitoring stops for a notifier from another IEventManager higher in the hierarchy. The context. The id for the notifier in the other IEventManager. The item handle. notifierId Reports an event for the notifier id. The notifier id. The event. Called when the condition refresh is called for a notifier higher in the hierarchy. The context. The id for the notifier. The item handle. The callback to call with the current state of all conditions. notifierId Adds a link to a notifier. The notifier id. The manager. Removes a link to a notifier. The notifier id. The manager. Gets the core node manager. The core node manager. Finds the node manager responsible for the specified namespace. Index of the namespace. The matching node manager. Adds a node manager. The node manager. Adds q node manager. The namespace URI. The node manager. Initializes a new instance of the class. The server. The preferred locales. The identity. Type of the request. Initializes a new instance of the class. The server. The request header. Type of the request. Initializes a new instance of the class. The session. The request header. Type of the request. Initializes the specified request header. The request header. Type of the request. Gets the channel context. Gets the security policy URI. Gets the type of the request. The type of the request. Gets a value indicating whether this instance is default server context. true if this instance is default server context; otherwise, false. Gets the session. Gets the session id. Gets the user identity. Gets the user identity. The security mode associated with the context. Gets the preferred locales. Gets the diagnostics masks. Gets the diagnostics strings. Gets the audit entry id. Gets the client handle. Gets or sets the user data. The user data. Gets the operation deadline. Gets or sets the operation status. The operation status. Determines whether is operation has aborted. true if the operation has aborted; otherwise, false. Gets or sets the request (used to cancel the request). A strongly-typed resource class, for looking up localized strings, etc. Returns the cached ResourceManager instance used by this class. Overrides the current thread's CurrentUICulture property for all resource lookups using this strongly typed resource class. An object that manages access to localized resources. Initializes the resource manager with the server instance that owns it. May be called by the application to clean up resources. Cleans up all resources held by the object. Translates the text and then formats it with the arguments provided. The list of preferred locales The key used to look up the translation The text to translate The format argumente The translated text Translates the LocalizedText using the information in the TranslationInfo property. The preferred locales. The default text. The translated text Translates the specified preferred locales. The preferred locales. The result. The translated status code Returns the locales supported by the resource manager. The available locales Adds a translation to the resource manager. The key. The locale. The text. Adds the translations to the resource manager. The locale. The translations. Adds the translations to the resource manager. The status code. The locale. The text. Adds the translations to the resource manager. The symbolic id. The locale. The text. Uses reflection to load default text for standard StatusCodes. Stores the translations for a locale. Finds the translation table for the locale. Creates a new table if it does not exist. Finds the best translation for the requested locales. Translates a status code. Translates a symbolic id. \ingroup UaServerApi An implementation of a server. An overrideable version of the Dispose. Called before the server starts. The application. Called to change the trace configuration for the server. Called to enable or disable tracing for the server. Registers the aggregate (saves the factory and creates the objects in the addrres space). The aggregate id. Name of the aggregate. The factory. Called to register any aggregates during server initialization. Called before the server stops. Stops the server. The seconds till shutdown. The shutdown reason. if set to true [restart]. Starts the server (called from a dedicated host process). The application. Stops the server and releases all resources. Occurs when the server is stopped. Occurs when the server is started. Gets the namespace uris. Gets the type manager. Gets the filter manager. Gets the ScopeMapper used for importing nodes with a NodeAccessInfo; Gets the aggregate manager. Gets the subscription manager. Gets a value indicating whether this instance is running. true if this instance is running; otherwise, false. Gets a value indicating whether a restart is in progress. true if this instance is restartings; otherwise, false. Gets a value indicating whether auditing is enabled Gets the server context. A lock which must be acquired before accessing the diagnostics. The diagnostics associated with the server. The certificate groups supported by the server. Gets or sets the assembly which has the Opc.Ua.NodeSet2 file as an embedded resource. If this property is set, the Opc.Ua.NodeSet2 file from the assembly is used for the address space. This property should only be set for prototyping which requires an updated version of the namespace "http://opcfoundation.org/UA/". Processes the request. The request. Gets the session manager. Gets the resource manager. Gets the root node manager. Gets the core node manager. Sets a delegate used to override the GetHistoryEventHandle method for the CoreNodeManager. The handler. Gets the next unique id. Gets the internal client object. Validates the data monitoring request. The request context. The node handle. The item to monitor. The parameters. The metadata. Invokes the FindServers service. The common request parameters. The authenticationToken is always omitted. The authenticationToken shall be ignored if it is provided. The network address that the Client used to access the Discovery Endpoint. The Server uses this information for diagnostics and to determine what URLs to return in the response. The Server should return a suitable default URL if it does not recognize the HostName in the URL. List of locales to use. The server should return the ServerName using one of locales specified. If the server supports more than one of the requested locales then the server shall use the locale that appears first in this list. If the server does not support any of the requested locales it chooses an appropriate default locale. The server chooses an appropriate default locale if this list is empty. List of servers to return. All known servers are returned if the list is empty. List of Servers that meet criteria specified in the request. This list is empty if no servers meet the criteria. Returns a description for the ResponseHeader DataType, the return type is Invokes the GetEndpoints service. The common request parameters. The authenticationToken is always omitted. The authenticationToken shall be ignored if it is provided. The network address that the Client used to access the Discovery Endpoint. The Server uses this information for diagnostics and to determine what URLs to return in the response. The Server should return a suitable default URL, if it does not recognize the HostName in the URL. List of locales to use. Specifies the locale to use when returning human readable strings. List of Transport Profile that the returned Endpoints shall support. All Endpoints are returned if the list is empty. The endpoints.List of Endpoints that meet criteria specified in the request. This list is empty if no Endpoints meet the criteria. Returns a description for the ResponseHeader DataType \internal Invokes the CreateSession service. The common request parameters. The authenticationToken is always omitted. Information that describes the Client application. This value is only specified if the EndpointDescription has a gatewayServerUri. This value is the applicationUri from the EndpointDescription which is the applicationUri for the underlying Server. The network address that the Client used to access the Session Endpoint. The HostName portion of the URL should be one of the HostNames for the application that are specified in the Server’s ApplicationInstanceCertificate. The Server shall raise an AuditUrlMismatchEventType event, if the URL does not match the Server‟s HostNames. The Server uses this information for diagnostics and to determine the set of EndpointDescriptions to return in the response. Human readable string that identifies the Session. The Server makes this name and the sessionId visible in its AddressSpace for diagnostic purposes. The Client should provide a name that is unique for the instance of the Client. If this parameter is not specified, the Server shall assign a value. A random number that should never be used in any other request. This number shall have a minimum length of 32 bytes. Profiles may increase the required length. The Server shall use this value to prove possession of its application instance Certificate in the response. The application instance Certificate issued to the Client. If the securityPolicyUri is None, the Client shall not send an ApplicationInstanceCertificate and the Server shall ignore the ApplicationInstanceCertificate. Requested maximum number of milliseconds that a Session should remain open without activity. If the Client fails to issue a Service request within this interval, then the Server shall automatically terminate the Client Session. The maximum size, in bytes, for the body of any response message. The Server should return a Bad_ResponseTooLarge service fault if a response message exceeds this limit. The value zero indicates that this parameter is not used. A unique NodeId assigned by the Server to the Session. This identifier is used to access the diagnostics information for the Session in the Server address space. It is also used in the audit logs and any events that report information related to the Session. A unique identifier assigned by the Server to the Session. This identifier shall be passed in the RequestHeader of each request and is used with the SecureChannelId to determine whether a Client has access to the Session. This identifier shall not be reused in a way that the Client or the Server has a chance of confusing them with a previous or existing Session. Actual maximum number of milliseconds that a Session shall remain open without activity. The Server should attempt to honour the Client request for this parameter, but may negotiate this value up or down to meet its own constraints. A random number that should never be used in any other request. This number shall have a minimum length of 32 bytes. The Client shall use this value to prove possession of its application instance Certificate in the ActivateSession request. This value may also be used to prove possession of the userIdentityToken it specified in the ActivateSession request. The application instance Certificate issued to the Server. A Server shall prove possession by using the private key to sign the Nonce provided by the Client in the request. The Client shall verify that this Certificate is the same as the one it used to create the SecureChannel. If the securityPolicyUri is NONE and none of the UserTokenPolicies requires encryption, the Server shall not send an ApplicationInstanceCertificate and the Client shall ignore the ApplicationInstanceCertificate. List of Endpoints that the server supports. The Server shall return a set of EndpointDescriptions available for the serverUri specified in the request. The Client shall verify this list with the list from a Discovery Endpoint, if it used a Discovery Endpoint to fetch the EndpointDescriptions. It is recommended that Servers only include the endpointUrl, securityMode, securityPolicyUri, userIdentityTokens, transportProfileUri and securityLevel with all other parameters set to null. Only the recommended parameters shall be verified by the client. This parameter is deprecated and the array shall be empty. This is a signature generated with the private key associated with the serverCertificate. This parameter is calculated by appending the clientNonce to the clientCertificate and signing the resulting sequence of bytes. The SignatureAlgorithm shall be the AsymmetricSignatureAlgorithm specified in the SecurityPolicy for the Endpoint. The maximum size, in bytes, for the body of any request message. The Client Communication Stack should return a Bad_RequestTooLarge error to the application if a request message exceeds this limit. The value zero indicates that this parameter is not used. The common response parameters. \internal Invokes the ActivateSession service. The request header. This is a signature generated with the private key associated with the clientCertificate. The SignatureAlgorithm shall be the AsymmetricSignatureAlgorithm specified in the SecurityPolicy for the Endpoint. These are the SoftwareCertificates which have been issued to the Client application. The productUri contained in the SoftwareCertificates shall match the productUri in the ApplicationDescription passed by the Client in the CreateSession requests. Certificates without matching productUri should be ignored. Servers may reject connections from Clients if they are not satisfied with the SoftwareCertificates provided by the Client. This parameter only needs to be specified in the first ActivateSession request after CreateSession. It shall always be omitted if the maxRequestMessageSize returned from the Server in the CreateSession response is less than one megabyte. List of locale ids in priority order for localized strings. The first LocaleId in the list has the highest priority. If the Server returns a localized string to the Client, the Server shall return the translation with the highest priority that it can. If it does not have a translation for any of the locales identified in this list, then it shall return the string value that it has and include the locale id with the string. If the Client fails to specify at least one locale id, the Server shall use any that it has. This parameter only needs to be specified during the first call to ActivateSession during a single application Session. If it is not specified the Server shall keep using the current localeIds for the Session. The credentials of the user associated with the Client application. The Server uses these credentials to determine whether the Client should be allowed to activate a Session and what resources the Client has access to during this Session. The EndpointDescription specifies what UserIdentityTokens the Server shall accept. If the Client specified a user identity token that supports digital signatures, then it shall create a signature and pass it as this parameter. Otherwise the parameter is omitted. The SignatureAlgorithm depends on the identity token type. A random number that should never be used in any other request. This number shall have a minimum length of 32 bytes. The Client shall use this value to prove possession of its application instance Certificate in the next call to ActivateSession request. List of validation results for the SoftwareCertificates. List of diagnostic information associated with SoftwareCertificate validation errors (see 7.8 for DiagnosticInfo definition). This list is empty if diagnostics information was not requested in the request header or if no diagnostic information was encountered in processing of the request. Returns a description for the ResponseHeader DataType Called when a new session is created. The session. Called when a session is activated. The session. if set to true [identity changed]. Called when a new session is closed. The session. if set to true [delete subscriptions]. \internal Invokes the CloseSession service. The common request parameters. If the value is TRUE, the Server deletes all Subscriptions associated with the Session. If the value is FALSE, the Server keeps the Subscriptions associated with the Session until they timeout based on their own lifetime. The common response parameters. Callback for a asynchronous close session requests. Cleans up an expired session. The session. Called when [close session]. The data. The error. Begins the browse. The incoming. Callback for a asynchronous browse requests. Called when [browse complete]. The operation handle. The callback data. The browse result. The continuation point. if set to true then the current thread should not be blocked. Ends the browse. The data. if set to true then the current thread should not be blocked. Begins the browse. The incoming. Callback for a asynchronous browse requests. Called when [browse complete]. The handle. The user data. The browse result. The continuation point. if set to true then the current thread should not be blocked. Ends the browse. The data. if set to true then the current thread should not be blocked. Begins the translate browse path. The incoming. Callback for a asynchronous browse requests. Called when [translate complete]. The operation handle. The callback data. The browse result. if set to true then the current thread should not be blocked. Ends the translate. The data. if set to true then the current thread should not be blocked. \internal Invokes the RegisterNodes service. \internal Invokes the UnregisterNodes service. \internal Invokes the Cancel service. The common request parameters. The requestHandle assigned to one or more requests that should be cancelled. All outstanding requests with the matching requestHandle shall be cancelled. Number of cancelled requests. The common response parameters. Begins the read. The incoming. Callback data for a asynchronous requests. Callback data for a asynchronous read requests. Called when a read operation completes. The operation handle. The user data. The data value. if set to true then the current thread should not be blocked. Ends the read. The data. if set to true then the current thread should not be blocked. Begins the write. The incoming. Callback for a asynchronous read requests. Called when a read operation completes. The operation handle. The user data. The result. if set to true then the current thread should not be blocked. Ends the read. The data. if set to true then the current thread should not be blocked. Begins the write. The incoming. Callback for an asynchronous call requests. Called when a call operation completes. The handle. The user data. The result. if set to true then the current thread should not be blocked. Ends the read. The data. if set to true then the current thread should not be blocked. Begins the read. The incoming. Begins the read. The request context. The incoming. The request. The details. Type of the transaction. Begins the read. The request context. The incoming. The request. The details. Type of the transaction. Callback data for a asynchronous read requests. Called when [history read complete]. Called when [history read complete]. Ends the read. The data. if set to true then the current thread should not be blocked. Begins the history update. The incoming. Begins the read. The request context. The incoming. The request. Type of the transaction. Begins the read. The request context. The incoming. The request. Type of the transaction. Callback data for a asynchronous read requests. Called when [history read complete]. Called when [history read complete]. Ends the read. The data. if set to true then the current thread should not be blocked. \internal Invokes the CreateSubscription service. The request header. The requested publishing interval. The requested lifetime count. The requested max keep alive count. The max notifications per publish. if set to true publishing is enabled. The priority. The subscription id. The revised publishing interval. The revised lifetime count. The revised max keep alive count. Returns a ResponseHeader object \internal Invokes the SetPublishingMode service. \internal Modifies the subscription. The request header. The subscription id. The requested publishing interval. The requested lifetime count. The requested max keep alive count. The max notifications per publish. The priority. The revised publishing interval. The revised lifetime count. The revised max keep alive count. \internal Invokes the DeleteSubscriptions service. \internal Invokes the TransferSubscriptions service. \internal Invokes the Republish service. Begins the publish. The incoming. Ends the publish. The request context. The incoming. The error. The callback data. if set to true then the current thread should not be blocked. Begins the create monitored items. The incoming. Callback for a asynchronous create monitored item requests. Called when [create data monitored item complete]. The node handle. The callback data. The item handle. The result. if set to true then the current thread should not be blocked. Called when [create event monitored item complete]. The node handle. The callback data. The item handle. The result. if set to true then the current thread should not be blocked. Ends the create monitored items. The data. if set to true then the current thread should not be blocked. Begins the Modify monitored items. The incoming. Callback for a asynchronous read requests. Called when [Modify data monitored item complete]. The operation handle. The callback data. The result. if set to true then the current thread should not be blocked. Called when [Modify event monitored item complete]. The operation handle. The callback data. The result. if set to true then the current thread should not be blocked. Ends the Modify monitored items. The data. if set to true then the current thread should not be blocked. Begins the Modify monitored items. The incoming. Callback for a asynchronous read requests. Called when [set monitoring mode complete]. The operation handle. The callback data. The result. if set to true then the current thread should not be blocked. Ends the Modify monitored items. The data. if set to true then the current thread should not be blocked. Begins the Modify monitored items. The incoming. Callback for a asynchronous read requests. Called when [set monitoring mode complete]. The operation handle. The callback data. The result. if set to true then the current thread should not be blocked. Ends the Modify monitored items. The data. if set to true then the current thread should not be blocked. \internal Invokes the SetTriggering service. \internal Invokes the AddNodes service. The common request parameters. The nodes to add List of results for the Nodes to add. The size and order of the list matches the size and order of the nodesToAdd request parameter. List of diagnostic information for the Nodes to add. The size and order of the list matches the size and order of the nodesToAdd request parameter. This list is empty if diagnostics information was not requested in the request header or if no diagnostic information was encountered in processing of the request. The common response parameters \internal Invokes the DeleteNodes service. \internal Invokes the AddReferences service. The common request parameters. The references to add List of StatusCodes for the References to add. The size and order of the list matches the size and order of the referencesToAdd request parameter. List of diagnostic information for the References to add. The size and order of the list matches the size and order of the referencesToAdd request parameter. This list is empty if diagnostics information was not requested in the request header or if no diagnostic information was encountered in processing of the request. The common response parameters. \internal Invokes the DeleteReferences service. Creates a query handle for use in query operation. The request context. The view being queried. The handle for the query. The query handle. Invokes the QueryFirst service. Creates the ScopeMapper that is used when importing NodeSet XML files containing NodeAccessInfo defined by UnifiedAutomation XML schema. Callback for a asynchronous query requests. Called when the query completes. The handle associated with the operation. The callback data associated with the request. The datasets that meet the query criteria. A continuation point if the query is not complete. Any errors parsing the NodeTypes passed in the request. NULL for continued queries. Any errors with the ContentFilter passed in the request, NULL for continued queries. True if the current thread must not be blocked; false otherwise. Invokes the QueryNext service. Called when the query completes. The handle associated with the operation. The callback data associated with the request. The datasets that meet the query criteria. A continuation point if the query is not complete. Any errors parsing the NodeTypes passed in the request. NULL for continued queries. Any errors with the ContentFilter passed in the request, NULL for continued queries. True if the current thread must not be blocked; false otherwise. Reports the event to the Server notifier. The event to report. Reports the event. The notifier which is the target for the event. The event to report. Called when the root node manager starts. The node manager. Called when the session manager starts. The session manager. Called when the subscription manager starts. The subscription manager. Verifies that the request header is valid. The request header. The incoming request for async operations that can be cancelled. Type of the request. A context that is passed into methods used to process the request. Translates an exception. The fields to return. The preferred locales. The exception. The translated exception as a status code. Called when an aysnchrnous request completes. The request context. The incoming. if set to true then the current thread should not be blocked. Called when an asynchronous request has an error during processing. The request context. The incoming. if set to true then the current thread should not be blocked. The exeception. Called when the request completes. The request context. The header to return to the client. Called when an asynchronous request encounters an error. The request context. The exception. The header to return to the client. Returns true if the error is a security error. The exception. true if the error is a one of the security errors, otherwise false. Updates the diagnostics. Returns the server/client handles for the subscription. THe context used to invoke the method. The object which the method is being called on. The identifier for the subscription. The server handles for all items in the subscription. The associated client handle for each entry in the server handle array. Good if success; an error code otherwise. Requests that the server change state. The context for the request. The object which owns the method being called. The target state for the server. The estimated time for when clients can connect to the server after the state change. The number of seconds until shutdown. The reason for the state change. Whether the server should restart after the shutdown. The result of the operation. Called when the state of the Server has been changed as a result of a client action. The new state. When the Server should return to the Running state. Good if successful; An error otherwise. This method can be overridden to allow for custom application logic that applies the state change. The default behavoir simply updates the appropriate variables in the Server address space. Requests that all cached values be resent for the specified subscription. The context for the request. The object which owns the method being called. The identifier for the subscription. The result of the operation. Requests that the subscription be made durable which means all queued values are saved to persistent storage. The context for the request. The object which owns the method being called. The identifier for the subscription. The lifetime in hours for data saved by the subscription. The revised lifetime in hours for data saved by the subscription. The result of the operation. Applies any changes to the security settings. The context for the request. The object which owns the method being called. StatusCode.Good if the call succeeds; otherwise an error. Updates the the application certificate. The context for the request. The object which owns the method being called. The certificate group that is being updated. Type of the certificate allowed by the certificate group that is being updated. The certificate. The issuer certificates need to validate the certificate. The private key format. The private key (optional). if set to true a restart is required. StatusCode.Good if the call succeeds; otherwise an error. Creates a certificate signing request. The context for the request. The object which owns the method being called. The certificate group which owns the certificate being updated. Type of the certificate within the group. The subject name to put in the certficate.. if set to true a new private key should be generated first. The nonce that can be used when generating a private key. The certificate request. StatusCode.Good if the call succeeds; otherwise an error. Gets the list of rejected certificates. The context for the request. The object which owns the method being called. The list of rejected certificates. StatusCode.Good if the call succeeds; otherwise an error. Handles a request to update the application trust lists. The source of the event. The instance containing the event data. Handles a request to read the application trust lists. The sender. The instance containing the event data. Called when a certificate is added to a trust list. The sender. The instance containing the event data. Called when a certificate is removed from a trust list. The sender. The instance containing the event data. Determines whether the request context has administrator access. The request context. TRUE if the context has adminitrator access; FALSE otherwise. Initializes a new instance of the class. The server. Gets the server. Gets the namespace uris. Gets the server uris. Gets the type table. The set of all service request types (used for collecting diagnostics and checking permissions). The request type is not known. A generic session manager object for a server. Initializes the session. Reports an audit create session event. Reports an audit activate session event. Reports an audit activate session event. Frees any unmanaged resources. An overrideable version of the Dispose. Gets the server. The identifier assigned to the session when it was created. The ScopeId used for Session and Subscription diagnostics nodes. The user identity provided by the client. The application defined mapping for user identity provided by the client. The user identity token provided by the client. A lock which must be acquired before accessing the diagnostics. The diagnostics associated with the session. Gets the subscription diagnostics array node id. Gets the SessionName. The application instance certificate associated with the client. The locales requested when the session was created. Check if the session timeout has elapsed since the last communication from the client. The timeout to use if the session has not been activated. TRUE if the session has expired; FALSE otherwise. Whether the session has been closed. Whether the session has been activated. Validates the request. Saves a request that has started. The request context. Removes a request once it completes. The request context. Cancels the requests. The request handle. The number of requests cancelled. Called if the system clock appears to have changed. Checks if the secure channel is currently valid. Updates the requested locale ids. true if the new locale ids are different from the old locale ids. Activates the session and binds it to the current secure channel. Activates the session and binds it to the current secure channel. Closes a session and removes itself from the address space. Saves a continuation point for a session. If the session has too many continuation points the oldest one is dropped. Restores a continuation point for a session. The caller is responsible for disposing the continuation point returned. Saves a continuation point for a session. If the session has too many continuation points the oldest one is dropped. Restores a continuation point for a session. The caller is responsible for disposing the continuation point returned. Saves a continuation point used for historical reads. The continuation point. If the continuationPoint implements IDisposable it will be disposed when the Session is closed or discarded. Restores a previously saves history continuation point. The identifier for the continuation point. The save continuation point. null if not found. Registers the node. The node id. Finds the registered node. The node id. Unregisters the node. The node id. Validates the identity token supplied by the client. Updates the user identity. true if the new identity is different from the old identity. Updates the diagnostic counters associated with the request. The state of a registered node. Gets or sets the registered node id. The registered node id. Gets or sets the actual node id. The actual node id. Gets or sets the browse handle. The browse handle. Gets or sets the node handle. The node handle. Gets or sets the notifier handle. The notifier handle. Gets or sets the notifier handle. The notifier handle. Gets or sets the notifier handle. The notifier handle. A generic session manager object for a server. Initializes the manager with its configuration. Frees any unmanaged resources. An overrideable version of the Dispose. Gets the session limits (must not be modified by the called). The session limits. Starts the session manager. Stops the session manager and closes all sessions. Creates a new session. Activates an existing session Closes the specifed session. This method should not throw an exception if the session no longer exists. Validates request header and returns a request context. This method verifies that the session id valid and that it uses secure channel id associated with with current thread. It also verifies that the timestamp is not too and that the sequence number is not out of order (update requests only). Creates a new instance of a session. Raises an event related to a session. Periodically checks if the sessions have timed out. Callback to validate UserIdentitoken passed in ActivateSession. Returns all of the sessions known to the session manager. The request context. A list of the sessions. Allows application components to receive notifications when changes to sessions occur. Sinks that receive these events must not block the thread. Raised after a new session is created. Raised whenever a session is activated and the user identity or preferred locales changed. Raised before a session is closed. Raised before the user identity for a session is changed. Returns all of the sessions known to the session manager. A list of the sessions. The possible reasons for a session related eventg. A new session was created. A session is being activated with a new user identity. A session was activated and the user identity or preferred locales changed. A session is about to be closed. The delegate for functions used to receive session related events. A class which provides the event arguments for session related event. Creates a new instance. The new user identity for the session. The user token policy selected by the client. An application defined handle that can be used for access control operations. An application defined handle that can be used for access control operations. Set to indicate that an error occurred validating the identity and that it should be rejected. The delegate for functions used to receive impersonation events. A class that stores the limits used by sessions. Initializes a new instance of the class. The application. Gets or sets the max request age (min The max request age. Gets or sets the max session count. The max session count. Gets or sets the max session timeout. The max session timeout. Gets or sets the min session timeout. The min session timeout. Gets or sets the length of the min nonce. The length of the min nonce. Gets or sets a value indicating whether the length of the nonce provided by the client is checked. true if the length of the nonce provided by the client is not checked; otherwise, false. Gets or sets the max nodes per browse. The max nodes per browse. Gets or sets the max nodes per translate browse paths to node ids. The max nodes per translate browse paths to node ids. Gets or sets the max nodes per read. The max nodes per read. Gets or sets the max nodes per write. The max nodes per write. Gets or sets the max nodes per method call. The max nodes per method call. Gets or sets the max nodes per history data read. The max nodes per history data read. Gets or sets the max nodes per history data update. The max nodes per history data update. Gets or sets the max nodes per history event read. The max nodes per history event read. Gets or sets the max nodes per history event update. The max nodes per history event update. Gets or sets the max monitored items per call. The max monitored items per call. Gets or sets the max nodes per node management. The max nodes per node management. Gets or sets the max nodes per register nodes. The max nodes per register nodes. Gets or sets the max browse continuation points. The max browse continuation points. Gets or sets the max history continuation points. The max history continuation points. Gets or sets the max query continuation points. The max query continuation points. Gets or sets the maximum number of history data values per read response. The maximum number of history data values per read response. Gets or sets the maximum number of history event per read response. The maximum number of history event per read response. A monitored item for a subscription. Initializes a new instance of the class. The request context. The timestamps to return. The monitoring mode. The client handle. Size of the queue. if set to true [discard oldest]. Gets the item id. Gets the item handle. A flag indicating that the item is monitoring events. Gets the client handle. Gets the monitoring mode. Gets the monitoring parameters. Returns true if the item is ready to publish. Gets or sets a value indicating whether this is deleted. true if deleted; otherwise, false. Sets a flag indicating that the item has been triggered and should publish. Gets or sets the triggered items for the item. The triggered items. The caller must ensure access to the collection is thread safe. Changes the monitoring mode for the item. Publishes all available data change notifications. Publishes all available event notifications. Called when [data changed]. The request context. The item handle. The data value. if set to true then the current thread should not be blocked. Called when [event changed]. The request context. The item handle. The event. if set to true then the current thread should not be blocked. Publishes a single data change notifications. Increments the sample time to the next interval. Requeues the last value. Updates the queue with a data value or an error. Updates the queue with an event. Fetches the event fields from the event. Adds a value to the queue. Applies the filter to value to determine if the new value should be kept. Applies the filter to value to determine if the new value should be kept. Checks if the two values are equal. Returns true if the deadband was exceeded. Returns true if the deadband was exceeded. Called when the monitored item has been created successfully. The item handle. The callback. The callback data. The result. Called when the monitored item has been created successfully. The item handle. The callback. The callback data. The result. Called when an item was successfully modified. Called when an item was successfully modified. Sets the filter. The filter. The filter data. Updates the sampling interval for an item. Clears and re-initializes the queue if the monitoring parameters changed. Provides a queue for data changes. Creates an empty queue. Gets the current queue size. Gets number of elements actually contained in value queue. Sets the sampling interval used when queuing values. The new sampling interval. Sets the queue size. The new queue size. Whether to discard the oldest values if the queue overflows. The last value. Adds the value to the queue. The value to queue. Publishes the oldest value in the queue. The value. True if a value was found. False if the queue is empty. Adds the value to the queue. Discards values if the queue is full. The value to add. Removes a value and an error from the queue. The value removed from the queue. True if a value was found. False if the queue is empty. Sets the overflow bit in the value and error. The value to update. The current publishing state for a subcription. The subscription is not ready to publish. The subscription has notifications that are ready to publish. The has already indicated that it is waiting for a publish request. The subscription has expired. Manages the publish queues for a session. Creates a new queue. Frees any unmanaged resources. An overrideable version of the Dispose. Clears the queues because the session is closing. The list of subscriptions in the queue. Adds a subscription from the publish queue. Removes a subscription from the publish queue. Subscriptions the status change. The subscription. The status. Nexts the status change on the queue. The subscription id. Processes acknowledgements for previously published messages. Returns a subscription that is ready to publish. Completes the publish. if set to true the request must be requeued. The error. The callback data. Adds a subscription back into the queue because it has more notifications to publish. Checks the state of the subscriptions. Checks the state of the subscriptions. A request queued while waiting for a subscription. Stores a subscription that has notifications ready to be sent back to the client. Ends the publish. The request. The error. Does the end publish. The state. The error. Dumps the current state of the session queue. Manages a subscription created by a client. Initializes the object. Frees any unmanaged resources. An overrideable version of the Dispose. The session that owns the monitored item. The unique identifier assigned to the subscription. The identifier for the session that owns the subscription. Gets the lock that must be acquired before accessing the contents of the Diagnostics property. Gets the current diagnostics for the subscription. The publishing rate for the subscription. The number of monitored items. The priority assigned to the subscription. Deletes the subscription. Called when the delete monitoring mode complete. Checks if the subscription is ready to publish. Tells the subscription that the owning session is being closed. Resends the cached values for all monitored items. The request context. Transfers a subscription to a new session. The request context. Whether to resend the cached values for all monitored items. The result of the operation. Resets the keepalive counter. Resets the lifetime count. Removes a message from the message queue. Returns all available notifications. Indicates that the subscription has expired. Publishes a timeout status message. Returns all available notifications. Construct a message from the queues. Returns a cached notification message. Updates the publishing parameters for the subscription. Enables/disables publishing for the subscription. Updates the triggers for the monitored item. Called when [ready to publish]. The user data. Gets the monitored item. The monitored item id. Creates the data monitored item. The request context. The timestamps to return. The node handle. The monitored item id. The settings. Adjusts the size of the queue. Creates the data monitored item complete. The request context. The item handle. The result. Modifies the data monitored item. The request context. The timestamps to return. The item handle. The settings. Modifies the data monitored item complete. The request context. The item handle. The timestamps to return. The result. Sets the monitoring mode. The request context. The item handle. The monitoring mode. Modifies the data monitored item complete. The request context. The item handle. The result. Deletes the monitored item. The request context. The item handle. Deletes the monitored item complete. The request context. The item handle. The result. Creates the event monitored item. The request context. The notifier handle. The monitored item id. The settings. Creates the event monitored item complete. The request context. The item handle. The result. Creates the event monitored item. The request context. The item handle. The settings. Creates the event monitored item complete. The request context. The item handle. The result. Verifies that a condition refresh operation is permitted. Verifies that a condition refresh 2 operation is permitted. Refreshes the conditions. Refreshes the conditions. Gets the monitored items for the subscription. Throws an exception if the session is not the owner. Dumps the current state of the session queue. A class that stores the limits used by subscriptions. Initializes a new instance of the class. The application. Gets or sets the max notifications per publish. The max notifications per publish. Gets or sets the max publish request count. The max publish request count. Gets or sets the max subscription count. The max subscription count. Gets or sets the max number of subscriptions per session. The max number of subscriptions per sessiont. Gets or sets the max publishing interval. The max publishing interval. Gets or sets the min publishing interval. The min publishing interval. Gets or sets the publishing interval resolution. The publishing interval resolution. Gets or sets the max keep alive interval. The max keep alive interval. Gets or sets the min keep alive interval. The min keep alive interval. Gets or sets the max lifetime. The max lifetime. Gets or sets the min lifetime. The min lifetime. Gets or sets the size of the max message queue. The size of the max message queue. Gets or sets the size of the max data value queue. The size of the max data value queue. Gets or sets the size of the min event queue. The size of the min event queue. Gets or sets the size of the max event queue. The size of the max event queue. A generic session manager object for a server. Initializes the manager with its configuration. Frees any unmanaged resources. An overrideable version of the Dispose. Raised after a new subscription is created. Raised before a subscription is deleted. Returns all of the subscriptions known to the subscription manager. A list of the subscriptions. Raises an event related to a subscription. Starts up the manager makes it ready to create subscriptions. Closes all subscriptions and rejects any new requests. Called when a new session is created. The session. Called when a session is activated. The session. if set to true [identity changed]. Called when a new session is closed. The session. if set to true [delete subscriptions]. Refreshes the conditions for the specified subscription. Refreshes the conditions for the specified subscription. Requests that all cached values for a subscription be resent. The request context. The id for the subscription to resend. Completes a refresh conditions request. Completes a refresh conditions request. Deletes the specified subscription. Updates the current monitored item count for the session. Gets the total number of publishing intervals in use. Creates a new subscription. Deletes group of subscriptions. Publishes a subscription. Completes the publish. The request context. The incoming. The error. The callback data. True if successful. False if the request has been requeued. Publishes a subscription. Modifies an existing subscription. Sets the publishing mode for a set of subscriptions. Attaches a groups a subscriptions to a different sesssion. Republishes a previously published notification message. Updates the triggers for the monitored item. Gets the subcription. The request context. The subscription id. Calculates the publishing interval. Calculates the keep alive count. Calculates the lifetime count. Calculates the maximum number of notifications per publish. Creates a new instance of a subscription. Periodically checks if the sessions have timed out. Cleanups the subscriptions. The server. The subscriptions to delete. Deletes any expired subscriptions. Provides access to the subscription manager within the server. Sinks that receive these events must not block the thread. Raised after a new subscription is created. Raised before a subscription is deleted. The delegate for functions used to receive subscription related events. The subscription that was affected. True if the subscription was deleted. The metadata for the UnifiedAutomation.Server trace object. Initializes a new instance of the class. The trace class used by the UnifiedAutomation.UaClient namespace. The metadata for the UnifiedAutomation.Server trace object. Initializes a new instance of the class. The trace class used by the UnifiedAutomation.UaClient namespace. A user identity. Initializes a new instance of the class. Initializes a new instance of the class. Initializes a new instance of the class. The token. if set to true [is administrator]. Gets or sets the type of the identity. The type of the identity. Gets or sets the name of the user. The name of the user. Gets or sets the name of the user. The name of the user. Gets or sets the password. The password. Gets or sets a value indicating whether this user is an administrator. true if this user is administrator; otherwise, false. Gets or sets the certificate. The certificate. The groups assigned to the user that determines what permissions it has. 1 is the builin administrator group. Any other number has meaning specific to a server. Gets or sets the windows identity. The windows identity. Determines whether the specified is equal to this instance. The to compare with this instance. true if the specified is equal to this instance; otherwise, false. The parameter is null. Returns a hash code for this instance. A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.