Skip to content

OPC UA Abstraction and Mapping

Mariusz edited this page Apr 19, 2015 · 1 revision

Interoperability of applications can be achieved if communicating parties are able to interchange streams of bits and assign to these streams the same meaning without any ambiguity. Unfortunately, the representation of information on the wire, and communication protocols are subject to continuous evolution, if not revolution nowadays. This could be dangerous for any long term initiatives. Because it is impossible to stop the progress of technology changes, some other precautions must be taken to keep the specification alive within a long term horizon. It is achieved by clear separation of definitions provided by the specification from their actual implementation. It makes OPC UA seamlessly portable from one technology to another. Mappings defined in the specification set forth how to implement an OPC UA feature using a specific technology. For example, the mapping for OPC UA binary encoding specifies how to serialize OPC UA data structures as sequences of bytes.

Additionally, separation of the definition and implementation makes the solution more flexible and scalable thanks to a free (to a certain degree) selection of technologies appropriate for the current needs of communicating parties. Unfortunately, it may cause an adverse interoperability issues, because the interconnected systems must be able to use the same communication mechanism. This is overcome by the definition of profiles and a negotiation mechanism.

Clone this wiki locally