EventFilter QML Type | Qt OPC UA 6.4.1

- Qt 6.4
- Qt OPC UA
- QML Types
- EventFilter
- Qt 6.4.1 Reference Documentation

# EventFilter QML Type

Defines an EventFilter for a monitored item. More...

Import Statement: | import QtOpcUa
Since: | QtOpcUa 5.13

- List of all members, including inherited members

## Properties

- select : list<SimpleAttributeOperand>
- where : list<FilterElement>

## Detailed Description

An event filter is required for monitoring events on the server. It consists of `select` clauses and a `where` clause.

The `select` clauses are used to specify the data the user wants to receive when an event occurs. It consists of SimpleAttributeOperand simple attribute operands which select attributes of child nodes of an event type, for example the value attribute of the "Message" property of BaseEventType.

The `where` clause is used to restrict the reported events by matching against certain criteria. Several operators and four different operand types allow filtering based on the values of the attributes of the child nodes of an event type.

The select clause consists of an array of SimpleAttributeOperand. The where clause consists of an array of SimpleAttributeOperand, LiteralOperand, ElementOperand or AttributeOperand.

The following EventFilter tells the server to report the value of the "Message" field for events that have a "Severity" field with value >= 500:

     import QtOpcUa as QtOpcUa
     QtOpcUa.Node {
         ...

         eventFilter: QtOpcUa.EventFilter {
             select: [
                       QtOpcUa.SimpleAttributeOperand {
                         browsePath: [
                                       QtOpcUa.NodeId {
                                           identifier: "Severity"
                                           ns: "http://opcfoundation.org/UA/"
                                       }
                                     ]
                       },
                       QtOpcUa.SimpleAttributeOperand {
                         browsePath: [
                                       QtOpcUa.NodeId {
                                           identifier: "Message"
                                           ns: "http://opcfoundation.org/UA/"
                                       }
                                     ]
                       }
             ]

             where: [
                 QtOpcUa.FilterElement {
                     operator: QtOpcUa.FilterElement.GreaterThanOrEqual
                     firstOperand: QtOpcUa.SimpleAttributeOperand {
                         browsePath: [
                                       QtOpcUa.NodeId {
                                           identifier: "Severity"
                                           ns: "http://opcfoundation.org/UA/"
                                       }
                                     ]
                     }
                     secondOperand: QtOpcUa.LiteralOperand {
                                     value: 700
                                     type: QtOpcUa.Constants.UInt16
                      }
                 }
             ]
         }
     }

For a more complex example with two conditions, see QOpcUaElementOperand.

See also FilterElement.

## Property Documentation

select : list<SimpleAttributeOperand>

Selected event fields that shall be included when a new event is reported.

where : list<FilterElement>

Content filter used to restrict the reported events to events matching certain criteria.