Table 13 describes base features related items that can be profiled. For additional information about these items, please refer to OPC 10000-3, OPC 10000-5 and OPC 10000-6. Servers with a larger resource capacity would support most of this functionality, but smaller resource constraint Server may omit some of this functionality. Many Clients would utilize some of this functionality and more robust Clients would utilize most of this functionality.

Table 13 – Base Information

Category

Title

Description

Server

Base Info Core Structure

The Server supports the Server Object, ServerCapabilities and supports the OPC UA AddressSpace structure.

Server

Base Info Server Capabilities

The Server supports publishing of the Server limitation in the ServerCapabilities, including MaxArrayLength, MaxStringLength, MaxNodePerRead, MaxNodesPerWrite, MaxNodesPerSubscription and MaxNodesPerBrowse.

Server

Base Info Progress Events

The Server exposes if generation of Progress events for long running service calls such as HistoryRead or Query is supported. If it is listed as supported in ServerCapabilities, than the actual events are verified.

Server

Base Info Diagnostics

The Server supports the collection of diagnostic information. The EnabledFlag in the ServerDiagnostics Object can be set TRUE and in that case all static and dynamic Objects and Variables for diagnostic data as defined in UA Part 5 are supported.

Server

Base Info System Status

The Server supports generating SystemStatusChangeEventType indicating shutdown of the Server (SourceNode=Server).

Server

Base Info Estimated Return Time

Server supports the EstimatedReturnTime Property. It indicates the time at which the Server is expected to have a ServerStatus.State of RUNNING_0. Clients can use this information to govern the reconnect logic.

Server

Base Info System Status Underlying System

The Server supports generating SystemStatusChangeEventType indicating changes to an Underlying System (SourceNode = Server). This event can also be used to indicate that the OPC UA Server has underlying systems.

Server

Base Info Device Failure

The Server supports generating DeviceFailureEventType indicating changes to individual devices in an underlying system.

Server

Base Info GetMonitoredItems Method

The Server supports obtaining subscription information via GetMonitoredItems Method on the Server object.

Server

Base Info ResendData Method

Support the standard Method ResendData (defined in UA Part 5) to get the latest value of the monitored items of a Subscription.

Server

Base Info Type System

The Server exposes a Type System with DataTypes, ReferenceTypes, ObjectTypes and VariableTypes including all of the OPC UA (namespace 0) types that are used by the Server, as defined in Part 5. Items that are defined in Namespace 0 but are defined in other specification parts are tested as part of the other information models.

Server

Base Info Custom Type System

The Server supports custom types (i.e. types that are derived from well-known ObjectTypes, VariableTypes, ReferenceTypes or DataTypes). Supporting this conformance unit requires that the custom types with their full inheritance tree are exposed in the AddressSpace.

Server

Base Info Model Change

The Server supports ModelChange Event and NodeVersion Property for all Nodes that the server allows Model changes for.

Server

Base Info Placeholder Modelling Rules

The Server supports defining custom Object or Variables that include the use of OptionalPlaceholder or MandatoryPlaceholder modelling rules.

Server

Base Info SemanticChange

The Server supports SemanticChangeEvent for some Properties. This includes setting the SemanticChange Bit in the status when a semantic change occurs, such as a change in the engineering unit associated with a value.

Server

Base Info EventQueueOverflow EventType

The Server supports the EventQueueOverflowEventType as defined in Part 4.

Server

Base Info OptionSet

The Server supports the VariableType OptionSet.

Server

Base Info ValueAsText

The Server supports the Property ValueAsText for enumerated DataTypes.

Server

Base Info Engineering Units

The Server supports defining Variables that include the Engineering Units Property. This property makes use of the EUInformation data structure. This structure by default represents the UN/CEFACT "Codes for Units of Measurement". If a different EU representation is required then the EUInformation.namespaceUri will indicate the alternate namespace.

Server

Base Info Selection List

The Server supports Variables of the SelectionListType VariableType.

Server

Base Info FileType Base

The Server supports the FileType Object (see Part 5). File writing may be restricted.

Server

Base Info FileType Write

The Server supports the FileType Object, including writing of files. Also included is the support of user access control on FileType Object.

Server

Base Info RequestServerStateChange Method

The Server supports the RequestServerStateChange Method.

Server

Base Info State Machine Instance

Support instances of the StateMachineType or a sub-type in the AddressSpace. Generate Events when significant state changes occur.

At least one GeneratesEvent Reference exists to define the Event(s) triggered on state changes.

Server

Base Info Finite State Machine Instance

Support instances of the FiniteStateMachineType or a sub-type in the AddressSpace.

Server

Base Info Available States and Transitions

Support the Properties AvailableStates and AvailableTransitions defined for the FiniteStateMachineType.

Client

Base Info Client Basic

The Client uses the defined OPC UA AddressSpace.

Access or provide access to Server information like the Server's state, BuildInfo, capabilities, Namespace Table and Type Model.

Client

Base Info Client Honour Operation Limits

The Client shall honour Server limits described in ServerCapabilites Object of Server.

Client

Base Info Event Processing

The Client is able to subscribe for and process base OPC UA Events.

Client

Base Info Client System Status

The Client makes use of SystemStatusChangeEventType to detect server shutdowns.

Client

Base Info Client Estimated Return Time

Client uses the EstimatedReturnTime Property to govern the reconnect logic.

Client

Base Info Client System Status Underlying System

The Client makes use of SystemStatusChangeEventType to detect changes to an Underlying System (SourceNode = Server).

Client

Base Info Client Device Failure

The Client makes use of DeviceFailureEventType to detect failed devices in underlying systems

Client

Base Info Client Progress Events

The Client makes use of ProgressEvents, including checking for their support.

Client

Base Info Client Diagnostics

The Client provides interactive or programmatic access to the Server's diagnostic information.

Client

Base Info Client Type Programming

The Client programmatically process instances of Objects or Variables by using their type definitions. This includes custom DataTypes, ObjectTypes and VariableTypes.

Client

Base Info Client Type Pre-Knowledge

The Client shall interoperate with Servers that do not expose OPC UA Types in AddressSpace.

Client

Base Info Client Remote Nodes

The Client can access Nodes that have an extended NodeID that reference a Server different then the orginating Server. It is acceptable that the Server configuration information be pre-configured on the Client.

Client

Base Info Client Change Events

The Client processes ModelChangeEvents to detect changes in the Server's OPC UA AddressSpace and take appropriate action for a given change.

Client

Base Info Client GetMonitoredItems Method

The Client makes use of GetMonitoredItems Method to recover for communication interruptions and/or to recover subscription information.

Client

Base Data Client ResendData Method

The Client makes use of ResendData Method to fetch the last value of the data monitored items.

Client

Base Info Client Selection List

The Client uses and understands Variables of the SelectionListType VariableType.

Client

Base Info Client FileType Base

The Client can access a FileType Object to transfer a file from the Server to the Client. This includes large files.

Client

Base Info Client FileType Write

The Client can access a FileType Object to transfer a file from the Client to the Server. This includes large files.

Client

Base Info Client RequestServerStateChange

The Client can invoke the RequestServerStateChange Method.

Client

Base Info Client State Machine Instance

Use instances of the StateMachineType or a sub-type. Monitor either the CurrentState component Variable of the instance or the Events triggered as effect of state changes. Use Methods when defined for the StateMachineType to affect the state.

Client

Base Info Client Finite State Machine Instance

Use instances of the FinitStateMachineType or a sub-type. Monitor either the CurrentState component Variable of the instance or the Events triggered as effect of state changes.

Client

Base Info Client Available States and Transitions

Use the Properties AvailableStates and AvailableTransitions when exposed by a Server.

Table 14 describes Address Space Model information related items that can be profiled. The details of these model items are defined in OPC 10000-3 and OPC 10000-5. This includes Server Facets that describe what a Server exposes and Client Facets that describe what a Client consumes.

Table 14 – Address Space Model

Category

Title

Description

Server

Address Space Base

Support the NodeClasses with their Attributes and References as defined in Part 3. This includes for instance: Object, ObjectType, Variable, VariableType, References and DataType.

Server

Address Space Atomicity

Support setting the NonatomicRead and NonatomicWrite flags in the AccessLevelEx Attribute for Variable Nodes to indicate whether Read or Write operations can be performed in atomic manner. If the flags are set to '1', atomicity cannot be assured.

Server

Address Space Full Array Only

Support setting the WriteFullArrayOnly flag in the AccessLevelEx Attribute for Variable Nodes of non-scalar data types to indicate whether write operations for an array can be performed with an IndexRange.

Server

Address Space Events

Support OPC UA AddressSpace elements for generating Event notifications. This includes at least one Node with an EventNotifier Attribute set to True (Server Node).

Server

Address Space Complex Data Dictionary

Support structured DataTypes with a Data Dictionary. Note that V1.04 of OPC UA Part 3 specifies a simplified approach using the new DataTypeDefinition Attribute. The "Address Space DataTypeDefinition Attribute" Conformance Unit requires support of the DataTypeDefinition Attribute. Support of a DataDictionary will be deprecated in one of the next OPC UA versions.

Server

Address Space DataTypeDefinition Attribute

Support structured DataTypes and expose the meta data and encoding information with a StructureDefinitionType via the DataTypeDefinition Attribute.

Server

Address Space Method

Support Method Nodes.

Server

Address Space Notifier Hierarchy

Supports using the HasNotifier reference to build a hierarchy of Object Nodes that are notifiers with other notifier Object Nodes.

Server

Address Space Source Hierarchy

Supports hierarchies of event sources where each hierarchy roots in an Object Node that is a notifier. The HasEventSource Reference is used to relate the Nodes within a hierarchy. If Conditions are supported, the hierarchy shall include HasCondition References.

Server

Address Space WriteMask

Supports WriteMask indicating the write access availability for all attributes, including not supported attributes.

Server

Address Space UserWriteMask

Supports UserWriteMask indicating the write access availability for all attributes for the given user, including not supported attributes. Support includes at least two levels of users.

Server

Address Space UserWriteMask Multilevel

Supports UserWriteMask indicating the write access availability for all attributes for the given user, including not supported attributes. This includes supporting multiple levels of access control for all nodes in the system.

Server

Address Space User Access Level Full

Implements User Access Level security, this includes supporting multiple levels of access control for Variable nodes in the system. This includes an indication of read, write, Historical read and Historical write access to the Value Attribute.

Server

Address Space User Access Level Base

Implements User Access Level Security for Variable nodes, this includes at least two users in the system. This includes an indication of read, write, historical read and Historical write access to the value attribute

Client

Address Space Client Base

Uses and understands the NodeClasses with their Attributes and behaviour as defined in Part 3. This includes for instance: Object, ObjectType, Variable, VariableType, References and DataType. This includes treating BrowseNames and String NodeIds as case sensitive.

Client

Address Space Client Atomicity

Access the NonatomicRead or NonatomicWrite flags in the AccessLevelEx Attribute of Variable Nodes to determine whether Read or Write operations can be performed in atomic manner. This information will typically be shown to a user for further action.

Client

Address Space Client Full Array Only

Access the WriteFullArrayOnly flag in the AccessLevelEx Attribute of Variable Nodes with non-scalar data types to determine whether writing to an array with an IndexRange is allowed.

Client

Address Space Client Complex Data Dictionary

Uses and understands arbitrary structured DataTypes via Data Dictionary. Note that V1.04 of OPC UA Part 3 specifies a simplified approach using the new DataTypeDefinition Attribute. The "Address Space Client DataTypeDefinition Attribute" Conformance Unit requires support of the DataTypeDefinition Attribute.

Client

Address Space Client DataTypeDefinition Attribute

Uses and understands arbitrary structured DataTypes where the meta data and encoding information are exposed with the StructureDefinitionType via the DataTypeDefinition Attribute.

Client

Address Space Client Notifier Hierarchy

Uses hierarchy of Object Nodes that are notifiers to detect specific areas where the Client can subscribe for Events.

Client

Address Space Client Source Hierarchy

Detect and use the hierarchy of event sources exposed for specific Object Nodes that are event notifiers.

Table 15 describes Data Access information model related items that can be profiled. The details of this model are defined in OPC 10000-8. Servers could expose this information model and Clients could utilize this information model.

Table 15 – Data Access

Category

Title

Description

Server

Data Access DataItems

Provide Variables of DataItemType or one of its subtypes. Support the StatusCodes specified in Part 8. Support of optional Properties (e.g. "InstrumentRange") shall be verified during certification testing and will be shown in the Certificate.

Server

Data Access AnalogItems

Support AnalogItemType Variables with corresponding Properties. The support of optional properties will be listed.

Server

Data Access PercentDeadband

Support PercentDeadband filter when monitoring AnalogItemType Variables.

Server

Data Access Semantic Changes

Support semantic changes of AnalogItemType items (EURange Property and/or EngineeringUnits Property). Support semantic change StatusCode bits where appropriate.

Server

Data Access TwoState

Support TwoStateDiscreteType Variables with corresponding Properties.

Server

Data Access MultiState

Support MultiStateDiscreteType Variables with corresponding Properties.

Server

Data Access MultiStateValueDiscrete

Support MultiStateValueDiscreteType Variables with corresponding Properties.

Server

Data Access ArrayItemType

Provide Variables of ArrayItemType or one of its subtypes (YArrayItemType, XYArrayItemType, ImageArrayType, CubeArrayType and NDimensionArrayType). The supported subtypes will be listed. Support for this type includes supporting all of the mandatory properties including AxisInformation.

Server

Data Access Complex Number

Supports the Complex Number data type. This data type is available for any variable types that do not have other explicit restrictions.

Server

Data Access DoubleComplex Number

Supports the DoubleComplex Number data type. This data type is available for any variable types that do not have other explicit restrictions.

Client

Data Access Client Basic

Understand the DataAccess Variable Types.

Make use of the standard Properties if applicable.

Client

Data Access Client AnalogItems

Understand AnalogItemType Variables with corresponding Properties.

Client

Data Access Client TwoState

Understand TwoStateDiscreteType Variables with corresponding Properties.

Client

Data Access Client MultiState

Understand MultiStateDiscreteType Variables with corresponding Properties.

Client

Data Access Client MultiStateValueDiscrete

Understand MultiStateValueDiscreteType Variables with corresponding Properties.

Client

Data Access Client Deadband

Use PercentDeadband to filter value changes of AnalogItemType Variables.

Client

Data Access Client SemanticChange

Recognize the semantic change bit in the StatusCode while monitoring items and take proper action. Typically, the Client has to re-read Properties that define type-specific semantic like the EURange and EngineeringUnits Properties.

Table 16 describes Alarm and Conditions information model related items that can be profiled. The details of this model are defined in OPC 10000-9. Servers that deal with Alarm and Conditions would expose this information model and Clients that process Alarms and Conditions would utilize this information model.

Table 16 – Alarms and Conditions

Category

Title

Description

Server

A & C Basic

Supports Alarm & Condition model ConditionType.

Server

A & C Enable

Supports Enable and Disable Methods.

Server

A & C Refresh

Supports ConditionRefresh Method and the concept of a refresh.

Server

A & C Refresh2

Supports ConditionRefresh2 Method and the concept of a monitored item based refresh.

Server

A & C Instances

Support exposing of A&C Condition instances in the AddressSpace.

Server

A & C ConditionClasses

Supports multiple Condition classes for grouping and filtering of Alarms.

Server

A & C Condition Sub-Classes

Support assigning multiple Condition sub-classes for grouping and filtering of Alarms.

Server

A & C Acknowledge

Supports the Acknowledge concept, Acknowledge Method, and AcknowledgeableCondition Type.

Server

A & C Confirm

Supports the concept of Confirm and the Confirm Method.

Server

A & C Comment

Supports the concept of Comments and the AddComment Method.

Server

A & C Alarm

Supports the mandatory features of the AlarmCondition Type.

Server

A & C Alarm Metrics

Support the collection of alarm metrics data as defined in UA Part 9.

This implies one of more instances of the AlarmMetricsType.

Server

A & C Branch

Support for branching of Condition Types and any subtypes, such as AcknowledgeableConditionType and AlarmConditionType etc.

Server

A & C Shelving

Support the concept of shelving and the TimedShelve, OneShotShelve and Unshelve Methods.

Server

A & C Suppression

Support the SuppressedState.

Server

A & C Suppression by Operator

Support the Suppress and UnSuppress Methods to allow an operator control over the SuppressedState.

Server

A & C Silencing

Support the concept of silencing and the Silence Method.

Server

A & C Out Of Service

Support the OutOfService state and the OutOfService Method.

Server

A & C On-Off Delay

Support the OnDelay and OffDelay Properties to eliminate nuisance Alarms.

Server

A & C Re-Alarming

Support the ReAlarmTime and ReAlarmRepeatCount Properties that define automatic re-annunciation of Alarms in certain conditions.

Server

A & C First in Group Alarm

Support the "FirstInGroup" elements for an Alarm, indicating which Alarm of a group was the trigger.

Server

A & C Audible Sound

Support the AudibleSound Property. This Property contains the sound file that is to be played if an audible Alarm is to be generated.

Server

A & C Exclusive Level

Supports Exclusive Level Alarm type.

Server

A & C Exclusive Limit

Supports Exclusive Limit Alarms. A Server that supports this must support at least one of the sub-types: Level, Deviation or RateofChange.

Server

A & C Exclusive Deviation

Supports Exclusive Deviation Alarm type.

Server

A & C Exclusive RateOfChange

Supports Exclusive RateOfChange Alarm type.

Server

A & C Non-Exclusive Limit

Supports Non-Exclusive Limit Alarms. A Server that supports this must support at least one of the sub-types: Level, Deviation or RateofChange.

Server

A & C Non-Exclusive Level

Supports Non-Exclusive Level Alarm type.

Server

A & C Non-Exclusive Deviation

Supports Non-Exclusive Deviation Alarm type.

Server

A & C Non-Exclusive RateOfChange

Supports Non-Exclusive RateOfChange Alarm type.

Server

A & C Discrete

Supports Discrete Alarm types.

Server

A & C OffNormal

Supports OffNormalAlarmType.

Server

A & C SystemOffNormal

Supports SystemOffNormalAlarmType.

Server

A & C Trip

Supports Trip Alarm type.

Server

A & C Discrepancy

Supports Discrepancy Alarm type.

Server

A & C Dialog

Supports DialogConditionType including Respond Method.

Server

A & C CertificateExpiration

Supports CertificateExpirationAlarmType.

Server

A & E Wrapper Mapping

The Server uses the COM A&E mapping specified in the annex of Part 9 to map OPC-COM Events to A&C Events. This includes Condition Class mapping.

Client

A & C Basic Client

Uses the Alarm & Condition model ConditionType.

Client

A & C Enable Client

Uses Enable and Disable Methods.

Client

A & C Refresh Client

Uses ConditionRefresh Method and the concept of a refresh.

Client

A & C Refresh2 Client

Uses ConditionRefresh2 Method and the concept of a monitored item based refresh.

Client

A & C Instances Client

Uses A&C Condition instances when they are exposed in the AddressSpace.

Client

A & C ConditionClasses Client

Uses Condition classes to group Alarms.

Client

A & C Condition Sub-Classes Client

Uses Condition sub-classes to group or filter Alarms.

Client

A & C Acknowledge Client

Understands the Acknowledge concept and the AcknowledgeableCondition Type, and uses the Acknowledge Method if requested.

Client

A & C Confirm Client

Understands the concept of confirming Conditions and uses the Confirm Method.

Client

A & C Comment Client

Understands the concept of Comments and uses the AddComment Method.

Client

A & C Alarm Client

Understands the concept of Alarms and uses the mandatory features of the AlarmCondition Type,

Client

A & C Alarm Metrics Client

Understand and use Alarm metrics data as defined in UA Part 9.

This implies discovery of instances of the AlarmMetricsType that can exist anywhere in the HasNotifier hierarchy.

Client

A & C Branch Client

Can make use of and process Condition Branches, including all actions associated with previous Condition instances.

Client

A & C Shelving Client

Understand the shelving model and use the TimedShelve, OneShotShelve and Unshelve Methods.

Client

A & C Suppression Client

Understand the SuppressedState model.

Client

A & C Suppression by Operator Client

Use the Suppress and UnSuppress Methods to allow an operator control over the SuppressedState.

Client

A & C Silencing Client

Understand the SilencedState model and use the Silence Method.

Client

A & C Out Of Service Client

Understand the OutOfServiceState model and use the OutOfService Method.

Client

A & C On-Off Delay Client

Uses the OnDelay and OffDelay Properties to eliminate nuisance Alarms.

Client

A & C Re-Alarming Client

Understand and use the ReAlarmTime and ReAlarmRepeatCount Properties. Configure the ReAlarmTime Property for automatic re-annunciation of an Alarm. Note that configuration is only possible for Servers that expose Alarm instances.

Client

A & C First in Group Alarm Client

Use the "FirstInGroup" elements for an Alarm to determine which Alarm of a group was the trigger.

Client

A & C Audible Sound Client

Use the AudibleSound Property and - if reported - play the sound file.

Client

A & C Exclusive Level Client

Uses Exclusive Level Alarms.

Client

A & C Exclusive Limit Client

Uses Exclusive Limit Alarms. Requires that at least one of the sub-types be used.

Client

A & C Exclusive Deviation Client

Uses Exclusive Deviation Alarms.

Client

A & C Exclusive RateOfChange Client

Uses Exclusive RateOfChange Alarms.

Client

A & C Non-Exclusive Level Client

Uses Non-Exclusive Level Alarms.

Client

A & C Non-Exclusive Limit Client

Uses Non-Exclusive Limit Alarms. Requires that at least one of the sub-types be used.

Client

A & C Non-Exclusive Deviation Client

Uses Non-Exclusive Deviation Alarms.

Client

A & C Non-Exclusive RateOfChange Client

Uses Non-Exclusive RateOfChange Alarms.

Client

A & C Discrete Client

Uses Discrete Alarm types.

Client

A & C OffNormal Client

Uses OffNormalAlarmType.

Client

A & C SystemOffNormal Client

Uses SystemOffNormalAlarmType.

Client

A & C Trip Client

Uses TripAlarmType.

Client

A & C Discrepancy Client

Uses Discrepancy Alarm type.

Client

A & C Dialog Client

Uses DialogConditionType including Respond Method.

Client

A & C CertificateExpiration Client

Uses CertificateExpirationAlarmType.

Table 17 describes Historical Data Access information model related items that can be profiled. The details of this model are defined in OPC 10000-11. Servers that support some level of historical data would expose this information model and Clients that utilize historical data would utilize this information model.

Table 17 – Historical Access

Category

Title

Description

Server

Historical Access Read Raw

General support for basic historical access, reading raw data using the ReadRawModifiedDetails structure. Where the time range is specified using a start time, stop time and number of values (a minimum of two of the three parameters must be provided) and the ReadModified flag is set to False.

Server

Historical Access Data Max Nodes Read Continuation Point

Supports enough continuation points to cover the number of supported points indicated in the MaxNodesPerHistoryReadData Server OperationLimits Property for historical data access.

Server

Historical Access Time Instance

Supports reading historical data at a specified instance in time using the ReadAtTimeDetails structure.

Server

Historical Access Aggregates

Supports reading one or more Aggregates of historical values of Variables using the ReadProcessedDetails structure. At least one of the Aggregates described in Part 13 must be supported.

Server

Historical Access Insert Value

Supports inserting historical values of Variables.

Server

Historical Access Delete Value

Supports deleting historical values of Variables.

Server

Historical Access Update Value

Supports updating historical values of Variables.

Server

Historical Access Replace Value

Supports replacing historical values of Variables.

Server

Historical Access Modified Values

Supports maintaining old values for historical data that have been updated and the retrieval of these values using the ReadRawModifiedDetails structure (ReadModified flag set to true).

Server

Historical Access Annotations

Supports the entry and retrieval of Annotations for historical data. The retrieval is accomplished using the standard historical read raw functionality (ReadRawModifiedDetails). The entry uses the standard historical update (UpdateStructureDataDetails) functionality.

Server

Historical Access ServerTimestamp

Supports providing a ServerTimestamp (as well as the default SourceTimestamp).

Server

Historical Access Structured Data Read Raw

Supports ReadRawModified historical access for structured data. Supporting the structure for an annotation is not considered supporting generic structured data.

Server

Historical Access Structured Data Time Instance

Supports historical access for structured data. Supporting ReadAtTimeDetails for structured data. Supporting the structure for an annotation is not considered supporting generic structured data.

Server

Historical Access Structured Data Insert

Supports historical access for structured data. Inserting Structured data. Supporting the structure for an annotation is not considered supporting generic structured data.

Server

Historical Access Structured Data Delete

Supports historical access for structured data. Delete of existing data. Supporting the structure for an annotation is not considered supporting generic structured data.

Server

Historical Access Structured Data Update

Supports historical access for structured data. Updates of existing data. Supporting the structure for an annotation is not considered supporting generic structured data.

Server

Historical Access Structured Data Replace

Supports replacing structured historical data. Supporting the structure for an annotation is not considered supporting generic structured data.

Server

Historical Access Structured Data Read Modified

Supports maintaining old values for historical structured data that have been updated and the retrieval of these values. Using the ReadRawModifiedDetails structure (ReadModified flag set to true) for structured data. Supporting the structure for an annotation is not considered supporting generic structured data.

Server

Historical Access Events

Supports the retrieval of historical Events using the ReadEventDetails structure. This includes support for simple filtering of Events. The Event fields that are stored are server specific, but at least the mandatory fields of BaseEventType are required.

Server

Historical Access Event Max Events Read Continuation Point

Supports enough continuation points to cover the number of supported Event reads indicated in the MaxNodesPerHistoryReadEvents Server OperationLimits Property for Historical Event access.

Server

Historical Access Insert Event

Supports inserting historical Events.

Server

Historical Access Update Event

Supports updating historical Events.

Server

Historical Access Replace Event

Supports replacing historical Events.

Server

Historical Access Delete Event

Supports deleting of historical Events.

Client

Historical Access Client Browse

Uses the View Service Set to discover Nodes with historical data.

Client

Historical Access Client Read Raw

Uses the HistoryRead Service to read raw historical data using the ReadRawModifiedDetails Structure (ReadModified Flag set to False).

Client

Historical Access Client Read Modified

Uses the HistoryRead Service to read modified historical data using the ReadRawModifiedDetails Structure (ReadModified Flag set to True).

Client

Historical Access Client Read Aggregates

Uses the HistoryRead Service to read Aggregated historical data. This includes using at least one of the Aggregates defined in Part 13.

Client

Historical Access Client Structure Data Raw

Uses the HistoryRead Service to read raw historical data using the ReadRawModifiedDetails Structure (ReadModified Flag set to False) for structured data.

Client

Historical Access Client Structure Data Read Modified

Uses the HistoryRead Service to read modified structured historical data using the ReadRawModifiedDetails Structure (ReadModified Flag set to True).

Client

Historical Access Client Structure Data Insert

Uses the HistoryUpdate Service to insert historical data values for structured data.

Client

Historical Access Client Structure Data Delete

Uses the HistoryUpdate Service to delete historical data values for structured data.

Client

Historical Access Client Structure Data Update

Uses the HistoryUpdate Service to update historical data values for structured data.

Client

Historical Access Client Structure Data Replace

Uses the HistoryUpdate Service to replace historical data values for structured data.

Client

Historical Access Client Structure Data Time Instance

Reads historical data at a specified instance in time for structured data. Using the ReadAtTimeDetails structure.

Client

Historical Access Client Read Events

Uses the HistoryRead Service to read historical Event data using the ReadEventDetails Structure.

Client

Historical Access Client Event Inserts

Uses the HistoryUpdate Service to insert historical Events.

Client

Historical Access Client Event Updates

Uses the HistoryUpdate Service to update historical Events.

Client

Historical Access Client Event Replaces

Uses the HistoryUpdate Service to replace historical Events.

Client

Historical Access Client Event Deletes

Uses the HistoryUpdate Service to delete historical Events.

Client

Historical Access Client Data Insert

Uses the HistoryUpdate Service to insert historical data values.

Client

Historical Access Client Data Delete

Uses the HistoryUpdate Service to delete historical data values.

Client

Historical Access Client Data Update

Uses the HistoryUpdate Service to update historical data values.

Client

Historical Access Client Data Replace

Uses the HistoryUpdate Service to replace historical data values.

Client

Historical Access Client Annotations

Enters and retrieves Annotations of historical data. The retrieval is accomplished using the standard historical read raw functionality (ReadRawModifiedDetails). The entry uses the standard Historical Update (UpdateStructureDataDetails) functionality.

Client

Historical Access Client Time Instance

Reads historical data at a specified instance in time using the ReadAtTimeDetails structure.

Client

Historical Access Client Server Timestamp

Uses the ServerTimestamp (as well as the default SourceTimestamp), if it is provided by the Server.

Table 18 describes Aggregate related items that can be profiled. Servers that support the Aggregates would expose this functionality and Clients that utilize Aggregates would implement some of this functionality.

Table 18 – Aggregates

Category

Title

Description

Server

Aggregate Master Configuration

Supports an AggregateConfigurationType Object as part of the HistoricalServerCapabilities (defined in UA Part 11).

Server

Aggregate Historical Configuration

Supports at least one AggregateConfigurationType Object. AggregateConfigurationType Objects occur as part of an HistoricalConfiguration Object, allowing Variable specific configurations.

Server

Aggregate – Interpolative

Supports the Interpolative Aggregate for Historical access.

Server

Aggregate – Average

Supports the Average Aggregate for Historical access.

Server

Aggregate – TimeAverage

Supports the TimeAverage Aggregate for Historical access.

Server

Aggregate – TimeAverage2

Supports the TimeAverage2 Aggregate for Historical access.

Server

Aggregate – Total

Supports the Total Aggregate for Historical access.

Server

Aggregate – Total2

Supports the Total2 Aggregate for Historical access.

Server

Aggregate – Minimum

Supports the Minimum Aggregate for Historical access.

Server

Aggregate – MinimumActualTime

Supports the MinimumActualTime Aggregate for Historical access.

Server

Aggregate – Minimum2

Supports the Minimum2 Aggregate for Historical access.

Server

Aggregate – MinimumActualTime2

Supports the MinimumActualTime2 Aggregate for Historical access.

Server

Aggregate – Maximum

Supports the Maximum Aggregate for Historical access.

Server

Aggregate – MaximumActualTime

Supports the MaximumActualTime Aggregate for Historical access.

Server

Aggregate – Maximum2

Supports the Maximum2 Aggregate for Historical access.

Server

Aggregate – MaximumActualTime2

Supports the MaximumActualTime2 Aggregate for Historical access.

Server

Aggregate – Range

Supports the Range Aggregate for Historical access.

Server

Aggregate – Range2

Supports the Range2 Aggregate for Historical access.

Server

Aggregate – Count

Supports the Count Aggregate for Historical access.

Server

Aggregate – DurationInStateZero

Supports the DurationInStateZero Aggregate for Historical access.

Server

Aggregate – DurationInStateNonZero

Supports the DurationInStateNonZero Aggregate for Historical access.

Server

Aggregate – NumberOfTransitions

Supports the NumberOfTransitions Aggregate for Historical access.

Server

Aggregate – Start

Supports the Start Aggregate for Historical access.

Server

Aggregate – StartBound

Supports the StartBound Aggregate for Historical access.

Server

Aggregate – End

Supports the End Aggregate for Historical access.

Server

Aggregate – EndBound

Supports the EndBound Aggregate for Historical access.

Server

Aggregate – Delta

Supports the Delta Aggregate for Historical access.

Server

Aggregate – DeltaBounds

Supports the DeltaBounds Aggregate for Historical access.

Server

Aggregate – DurationGood

Supports the DurationGood Aggregate for Historical access.

Server

Aggregate – DurationBad

Supports the DurationBad Aggregate for Historical access.

Server

Aggregate – PercentGood

Supports the PercentGood Aggregate for Historical access.

Server

Aggregate – PercentBad

Supports the PercentBad Aggregate for Historical access.

Server

Aggregate – WorstQuality

Supports the WorstQuality Aggregate for Historical access.

Server

Aggregate – WorstQuality2

Supports the WorstQuality2 Aggregate for Historical access.

Server

Aggregate – AnnotationCount

Supports the AnnotationCount Aggregate for Historical access.

Server

Aggregate – StandardDeviationSample

Supports the StandardDeviationSample Aggregate for Historical access.

Server

Aggregate – VarianceSample

Supports the VarianceSample Aggregate for Historical access.

Server

Aggregate – StandardDeviationPopulation

Supports the StandardDeviationPopulation for Historical access.

Server

Aggregate – VariancePopulation

Supports the VariancePopulation for Historical access.

Server

Aggregate – Custom

The Server supports custom Aggregates for Historical access that do not have standard tests defined. These Aggregates are list as untested by this ConformanceUnit.

Server

Aggregate Subscription – Filter

Supports Aggregate subscription filters which requires at least one of the defined Aggregates is supported as defined in Part 13.

Server

Aggregate Subscription – Interpolative

Supports subscription filter for the Interpolative Aggregate.

Server

Aggregate Subscription – Average

Supports subscription filter for the Average Aggregate.

Server

Aggregate Subscription – TimeAverage

Supports subscription filter for the TimeAverage Aggregate.

Server

Aggregate Subscription – TimeAverage2

Supports subscription filter for the TimeAverage2 Aggregate.

Server

Aggregate Subscription – Total

Supports subscription filter for the Total Aggregate.

Server

Aggregate Subscription – Total2

Supports subscription filter for the Total2 Aggregate.

Server

Aggregate Subscription – Minimum

Supports subscription filter for the Minimum Aggregate.

Server

Aggregate Subscription – MinimumActualTime

Supports subscription filter for the MinimumActualTime Aggregate.

Server

Aggregate Subscription – Minimum2

Supports subscription filter for the Minimum2 Aggregate.

Server

Aggregate Subscription – MinimumActualTime2

Supports subscription filter for the MinimumActualTime2 Aggregate.

Server

Aggregate Subscription – Maximum

Supports subscription filter for the Maximum Aggregate.

Server

Aggregate Subscription – MaximumActualTime

Supports subscription filter for the MaximumActualTime Aggregate.

Server

Aggregate Subscription – Maximum2

Supports subscription filter for the Maximum2 Aggregate.

Server

Aggregate Subscription – MaximumActualTime2

Supports subscription filter for the MaximumActualTime2 Aggregate.

Server

Aggregate Subscription – Range

Supports subscription filter for the Range Aggregate.

Server

Aggregate Subscription – Range2

Supports subscription filter for the Range2 Aggregate.

Server

Aggregate Subscription – Count

Supports subscription filter for the Count Aggregate.

Server

Aggregate Subscription – DurationInStateZero

Supports subscription filter for the DurationInStateZero Aggregate.

Server

Aggregate Subscription – DurationInStateNonZero

Supports subscription filter for the DurationInStateNonZero Aggregate.

Server

Aggregate Subscription – NumberOfTransitions

Supports subscription filter for the NumberOfTransitions Aggregate.

Server

Aggregate Subscription – Start

Supports subscription filter for the Start Aggregate.

Server

Aggregate Subscription – StartBound

Supports subscription filter for the StartBound Aggregate.

Server

Aggregate Subscription – End

Supports subscription filter for the End Aggregate.

Server

Aggregate Subscription – EndBound

Supports subscription filter for the EndBound Aggregate.

Server

Aggregate Subscription – Delta

Supports subscription filter for the Delta Aggregate.

Server

Aggregate Subscription – DeltaBounds

Supports subscription filter for the DeltaBounds Aggregate.

Server

Aggregate Subscription – DurationGood

Supports subscription filter for the DurationGood Aggregate.

Server

Aggregate Subscription – DurationBad

Supports subscription filter for the DurationBad Aggregate.

Server

Aggregate Subscription – PercentGood

Supports subscription filter for the PercentGood Aggregate.

Server

Aggregate Subscription – PercentBad

Supports subscription filter for the PercentBad Aggregate.

Server

Aggregate Subscription – WorstQuality

Supports subscription filter for the WorstQuality Aggregate.

Server

Aggregate Subscription – WorstQuality2

Supports subscription filter for the WorstQuality2 Aggregate.

Server

Aggregate Subscription – AnnotationCount

Supports subscription filter for the AnnotationCount Aggregate.

Server

Aggregate Subscription – StandardDeviationSample

Supports subscription filter for the StandardDeviationSample Aggregate.

Server

Aggregate Subscription – VarianceSample

Supports subscription filter for the VarianceSample Aggregate.

Server

Aggregate Subscription – StandardDeviationPopulation

Supports subscription filter for the StandardDeviationPopulation Aggregate.

Server

Aggregate Subscription – VariancePopulation

Supports subscription filter for the VariancePopulation Aggregate.

Server

Aggregate Subscription – Custom

The Server supports subscribing to custom Aggregates that do not have standard tests defined. These Aggregates are listed as untested by this ConformanceUnit.

Client

Aggregate – Client Usage

Uses Historical access to Aggregate which requires at least one of the defined Aggregates is supported as defined in Part 13.

Client

Aggregate – Client Interpolative

Uses Historical access to the Interpolative Aggregate.

Client

Aggregate – Client Average

Uses Historical access to the Average Aggregate.

Client

Aggregate – Client TimeAverage

Uses Historical access to the TimeAverage Aggregate.

Client

Aggregate – Client TimeAverage2

Uses Historical access to the TimeAverage2 Aggregate.

Client

Aggregate – Client Total

Uses Historical access to the Total Aggregate.

Client

Aggregate – Client Total2

Uses Historical access to the Total2 Aggregate.

Client

Aggregate – Client Minimum

Uses Historical access to the Minimum Aggregate.

Client

Aggregate – Client MinimumActualTime

Uses Historical access to the MinimumActualTime Aggregate.

Client

Aggregate – Client Minimum2

Uses Historical access to the Minimum2 Aggregate.

Client

Aggregate – Client MinimumActualTime2

Uses Historical access to the MinimumActualTime2 Aggregate.

Client

Aggregate – Client Maximum

Uses Historical access to the Maximum Aggregate.

Client

Aggregate – Client MaximumActualTime

Uses Historical access to the MaximumActualTime Aggregate.

Client

Aggregate – Client Maximum2

Uses Historical access to the Maximum2 Aggregate.

Client

Aggregate – Client MaximumActualTime2

Uses Historical access to the MaximumActualTime2 Aggregate.

Client

Aggregate – Client Range

Uses Historical access to the Range Aggregate.

Client

Aggregate – Client Range2

Uses Historical access to the Range2 Aggregate.

Client

Aggregate – Client Count

Uses Historical access to the Count Aggregate.

Client

Aggregate – Client DurationInStateZero

Uses Historical access to the DurationInStateZero Aggregate.

Client

Aggregate – Client DurationInStateNonZero

Uses Historical access to the DurationInStateNonZero Aggregate.

Client

Aggregate – Client NumberOfTransitions

Uses Historical access to the NumberOfTransitions Aggregate.

Client

Aggregate – Client Start

Uses Historical access to the Start Aggregate.

Client

Aggregate – Client StartBound

Uses Historical access to the StartBound Aggregate.

Client

Aggregate – Client End

Uses Historical access to the End Aggregate.

Client

Aggregate – Client EndBound

Uses Historical access to the EndBound Aggregate.

Client

Aggregate – Client Delta

Uses Historical access to the Delta Aggregate.

Client

Aggregate – Client DeltaBounds

Uses Historical access to the DeltaBounds Aggregate.

Client

Aggregate – Client DurationGood

Uses Historical access to the DurationGood Aggregate.

Client

Aggregate – Client DurationBad

Uses Historical access to the DurationBad Aggregate.

Client

Aggregate – Client PercentGood

Uses Historical access to the PercentGood Aggregate.

Client

Aggregate – Client PercentBad

Uses Historical access to the PercentBad Aggregate.

Client

Aggregate – Client WorstQuality

Uses Historical access to the WorstQuality Aggregate.

Client

Aggregate – Client WorstQuality2

Uses Historical access to the WorstQuality2 Aggregate.

Client

Aggregate – Client AnnotationCount

Uses Historical access to the AnnotationCount Aggregate.

Client

Aggregate – Client StandardDeviationSample

Uses Historical access to the StandardDeviationSample Aggregate.

Client

Aggregate – Client VarianceSample

Uses Historical access to the VarianceSample Aggregate.

Client

Aggregate – Client StandardDeviationPopulation

Uses Historical access to the StandardDeviationPopulation Aggregate.

Client

Aggregate – Client VariancePopulation

Uses Historical access to the VariancePopulation Aggregate.

Client

Aggregate – Client Custom Aggregates

The Client can make use of all custom Aggregates in the list of Aggregates, via Historical access, exposed by the Server. This includes displaying or utilizing the data in some manner.

Client

Aggregate SubscriptionClient Filter

Subscribes for data using Aggregate filters which requires at least one of the Aggregates defined in Part 13 is supported.

Client

Aggregate SubscriptionClient Interpolative

Subscribes for data using the Interpolative Aggregate filter.

Client

Aggregate SubscriptionClient Average

Subscribes for data using the Average Aggregate filter.

Client

Aggregate SubscriptionClient TimeAverage

Subscribes for data using the TimeAverage Aggregate filter.

Client

Aggregate SubscriptionClient TimeAverage2

Subscribes for data using the TimeAverage2 Aggregate filter.

Client

Aggregate SubscriptionClient Total

Subscribes for data using the Total Aggregate filter.

Client

Aggregate SubscriptionClient Total2

Subscribes for data using the Total2 Aggregate filter.

Client

Aggregate SubscriptionClient Minimum

Subscribes for data using the Minimum Aggregate filter.

Client

Aggregate SubscriptionClient MinimumActualTime

Subscribes for data using the MinimumActualTime Aggregate filter.

Client

Aggregate SubscriptionClient Minimum2

Subscribes for data using the Minimum2 Aggregate filter.

Client

Aggregate SubscriptionClient MinimumActualTime2

Subscribes for data using the MinimumActualTime2 Aggregate filter.

Client

Aggregate SubscriptionClient Maximum

Subscribes for data using the Maximum Aggregate filter.

Client

Aggregate SubscriptionClient MaximumActualTime

Subscribes for data using the MaximumActualTime Aggregate filter.

Client

Aggregate SubscriptionClient MaximumActualTime2

Subscribes for data using the MaximumActualTime2 Aggregate filter.

Client

Aggregate SubscriptionClient Maximum2

Subscribes for data using the Maximum2 Aggregate filter.

Client

Aggregate SubscriptionClient Range

Subscribes for data using the Range Aggregate filter.

Client

Aggregate SubscriptionClient Range2

Subscribes for data using the Range2 Aggregate filter.

Client

Aggregate SubscriptionClient Count

Subscribes for data using the Count Aggregate filter.

Client

Aggregate SubscriptionClient DurationInStateZero

Subscribes for data using the DurationInStateZero Aggregate filter.

Client

Aggregate SubscriptionClient DurationInStateNonZero

Subscribes for data using the DurationInStateNonZero Aggregate filter.

Client

Aggregate SubscriptionClient NumberOfTransitions

Subscribes for data using the NumberOfTransitions Aggregate filter.

Client

Aggregate SubscriptionClient Start

Subscribes for data using the Start Aggregate filter.

Client

Aggregate SubscriptionClient StartBound

Subscribes for data using the StartBound Aggregate filter.

Client

Aggregate SubscriptionClient End

Subscribes for data using the End Aggregate filter.

Client

Aggregate SubscriptionClient EndBound

Subscribes for data using the EndBound Aggregate filter.

Client

Aggregate SubscriptionClient Delta

Subscribes for data using the Delta Aggregate filter.

Client

Aggregate SubscriptionClient DeltaBounds

Subscribes for data using the DeltaBounds Aggregate filter.

Client

Aggregate SubscriptionClient DurationGood

Subscribes for data using the DurationGood Aggregate filter.

Client

Aggregate SubscriptionClient DurationBad

Subscribes for data using the DurationBad Aggregate filter.

Client

Aggregate SubscriptionClient PercentGood

Subscribes for data using the PercentGood Aggregate filter.

Client

Aggregate SubscriptionClient PercentBad

Subscribes for data using the PercentBad Aggregate filter.

Client

Aggregate SubscriptionClient WorstQuality

Subscribes for data using the WorstQuality Aggregate filter.

Client

Aggregate SubscriptionClient WorstQuality2

Subscribes for data using the WorstQuality2 Aggregate filter.

Client

Aggregate SubscriptionClient AnnotationCount

Subscribes for data using the AnnotationCount Aggregate filter.

Client

Aggregate SubscriptionClient StandardDeviationSample

Subscribes for data using the StandardDeviationSample Aggregate filter.

Client

Aggregate SubscriptionClient VarianceSample

Subscribes for data using the VarianceSample Aggregate filter.

Client

Aggregate SubscriptionClient StandardDeviationPopulation

Subscribes for data using the StandardDeviationPopulation Aggregate filter.

Client

Aggregate SubscriptionClient VariancePopulation

Subscribes for data using the VariancePopulation Aggregate filter.

Client

Aggregate SubscriptionClient Custom Aggregates

The Client supports subscribing to all custom Aggregates in the list of Aggregates exposed by the Server. This includes displaying or utilizing the data in some manner.

Table 19 describes auditing related items that can be profiled. Most full function Servers would support these features, although some resource constrained Servers may not provide this functionality. Clients that are security aware or are used to support security logging would support these features

Table 19 – Auditing

Category

Title

Description

Server

Auditing Base

Support AuditEvents. The list of supported AuditEvents shall be verified during certification testing and will be shown in the certification test result. Base AuditEvents are defined in Part 3 and in Part 5.

Client

Auditing Client Audit ID

Client supports generating AuditEvents ids and providing them to Servers.

Client

Auditing Client Subscribes

The Client supports subscribing for AuditEvents and storing / processing them in a secure manner.

Table 20 describes Redundancy related items that are profiled. Servers that support redundancy would support appropriate ConformanceUnits based on the type of redundancy they support. Clients that are capable of handling redundancy would support the appropriate ConformanceUnits based of the type of redundancy they support.

Table 20 – Redundancy

Category

Title

Description

Server

Redundancy Server

Supports Server based redundancy.

Server

Redundancy Server Transparent

Supports transparent Server redundancy.

Client

Redundancy Client

Client supports Client redundancy. Clients that support Client redundancy can failover to another Client (requires some out of band communication).

Client

Redundancy Client Switch

Clients supporting this ConformanceUnit monitor the redundancy status for non-transparent redundancy Servers and switch to the backup Server when they recognize a change in server status.

Table 21 describes items for a Global Discovery Server (GDS). Servers that act as a GDS would support these ConformanceUnits.

Table 21 – Global Discovery Server

Category

Title

Description

Global Directory Service

GDS Application Directory

Supports the Directory Object with all Methods like RegisterApplication and QueryServers.

Global Directory Service

GDS Query Applications

Supports the QueryApplications Method on the Directory Object specified in Part 12.

Global Directory Service

GDS LDS-ME Connectivity

The GDS can be configured to use specific LDS-ME installations for semi-automatic application registration for all Servers on a subnet.

Global Directory Service

GDS Certificate Manager Pull Model

This Conformance Unit requires support of the complete Information Model and Services for Certificate management including the Pull Model as specified in Part 12.

Global Directory Service

GDS Certificate Manager Push Model

This Conformance Unit requires use of the complete Information model and Services for the Certificate management Push Model as specified in UA Part 12.

Global Directory Service

GDS Key Credential Service Pull Model

This Conformance Unit requires support of the complete Information Model and Services for KeyCredential Pull Management as specified in UA Part 12.

Global Directory Service

GDS Key Credential Service Push Model

This Conformance Unit requires use of the complete Information model and Services for KeyCredential Push Management as specified in UA Part 12.

Global Directory Service

GDS Authorization Service Server

This Conformance Unit requires support of AuthorizationServiceType Objects as specified in Part 12. UA Clients use the RequestAccessToken Method on these Objects to request an Access Token from an Identity Provider.