Object Mapping in the OPC-UA Protocol for Statically and Dynamically Typed Programming Languages

keywords: Middle-ware, OPC-UA
Two or more object-oriented components located in networked computers can form a distributed system to exchange information and execute methods. The most known approaches include object request broker architectures (e.g. CORBA), messaging-service architecture (e.g. based on ZMQ or JMS) or some variant of Service Oriented Architecture (e.g. SOAP). One of new approaches in the field is the OPC-UA protocol. While having common parts with all aforementioned architectures, it brings very rich and extensible information modelling capabilities, versatility and dynamic address space model, among others. This paper proposes a mapping of information model (applicable in the OPC-UA protocol) into class and object structure of an object-oriented programming language. Special attention is paid to whether given programming language is statically or dynamically typed, with examples and applications in C++ for the former case and Python for the latter. The study also covers the cases of using the proposed mapping at both server- and client-side of OPC-UA software.
mathematics subject classification 2000: 94-A99
reference: Vol. 37, 2018, No. 4, pp. 946–968