The ServerCapabilitiesType Objects for any OPC UA Server supporting Historical Access shall contain a Reference to a HistoryServerCapabilitiesType Object.

The content of this BaseObjectType is already defined by its type definition in OPC 10000-5. The Object extensions are formally defined in Table 8.

These properties 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.

Table 8 – HistoryServerCapabilitiesType Definition

Attribute

Value

BrowseName

HistoryServerCapabilitiesType

IsAbstract

False

References

NodeClass

Browse Name

Data Type

Type Definition

ModelingRule

HasProperty

Variable

AccessHistoryDataCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

AccessHistoryEventsCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

MaxReturnDataValues

UInt32

PropertyType

Mandatory

HasProperty

Variable

MaxReturnEventValues

UInt32

PropertyType

Mandatory

HasProperty

Variable

InsertDataCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

ReplaceDataCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

UpdateDataCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

DeleteRawCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

DeleteAtTimeCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

InsertEventCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

ReplaceEventCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

UpdateEventCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

DeleteEventCapability

Boolean

PropertyType

Mandatory

HasProperty

Variable

InsertAnnotationCapability

Boolean

PropertyType

Mandatory

HasComponent

Object

AggregateFunctions

--

FolderType

Mandatory

HasProperty

Variable

ServerTimestampSupported

Boolean

PropertyType

Optional

All UA Servers that support Historical Access shall include the HistoryServerCapabilities as part of its ServerCapabilities.

The AccessHistoryDataCapability Variable defines if the Server supports access to historical data values. A value of True indicates the Server supports access to the history for HistoricalNodes , a value of False indicates the Server does not support access to the 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.

The AccessHistoryEventCapability Variable defines if the server supports access to historical Events. A value of True indicates the server supports access to the history of Events, a value of False indicates the Server does not support access to the 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.

The MaxReturnDataValues Variable defines the 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.

Similarily, the MaxReturnEventValues specifies the maximum number of Events that a Server can return for a HistoricalEventNode.

The InsertDataCapability Variable 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.

The ReplaceDataCapability Variable 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.

The UpdateDataCapability Variable 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.

The DeleteRawCapability Variable 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.

The DeleteAtTimeCapability Variable indicates support for the delete at time capability. A value of True indicates the Server supports the capability to delete a data value at a specified time. The default value is False.

The InsertEventCapability Variable 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.

The ReplaceEventCapability Variable 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.

The UpdateEventCapability Variable 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.

The DeleteEventCapability Variable 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.

The InsertAnnotationCapability Variable 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.

AggregateFunctions is 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 inOPC 10000-13. If the Server does not support Aggregates the Folder is left empty.

The ServerTimestampSupported Variable indicates support for the ServerTimestamp capability. A value of True indicates the Server supports ServerTimestamps in addition to SourceTimestamp. The default is False. This property is optional but it is expected all new Servers include this property.