This Service Setis used to issue a Queryto a Server. OPC UA Queryis generic in that it provides an underlying storage mechanism independent Querycapability that can be used to access a wide variety of OPC UA data stores and information management systems. OPC UA Querypermits a Clientto access data maintained by a Serverwithout any knowledge of the logical schema used for internal storage of the data. Knowledge of the AddressSpaceis sufficient.

An OPC UA Applicationis expected to use the OPC UA Query Servicesas part of an initialization process or an occasional information synchronization step. For example, OPC UA Querywould be used for bulk data access of a persistent store to initialise an analysis application with the current state of a system configuration. A Querymay also be used to initialise or populate data for a report.

A Querydefines what instances of one or more TypeDefinitionNodesin the AddressSpaceshould supply a set of Attributes. Results returned by a Serverare in the form of an array of QueryDataSets. The selected Attributevalues in each QueryDataSetcome from the definition of the selected TypeDefinitionNodes or related TypeDefinitionNodesand appear in results in the same order as the Attributesthat were passed into the Query. Queryalso supports Nodefiltering on the basis of Attributevalues, as well as relationships betweenTypeDefinitionNodes.

See Annex B for example queries.