Industrial Internet Connectivity Framework | Page 28

Connectivity Framework 4 : Connectivity Framework Layer
4.1.1 DATA RESOURCE MODEL
Connectivity frameworks provide a way of representing data objects 1 that can change state over time . A data-object is a structured collection of fields , as in a programming language . It may be hierarchical and may be statically or dynamically typed .
A connectivity framework distributes changes to data-object amongst the participants .
Data models for different application areas or industries are usually mapped into the abstract data-objects provided by a connectivity framework .
4.1.2 ID AND ADDRESSING
A connectivity framework provides the means to identify and address each data object . The id is used to address a data object and read and write fields in the data-object representation . It could be :
• an explicit id field in the data-object representation , or
• an implicit id based on specially marked fields in the data object representation or
• a uniform resource identifier ( URI ) within the namespace of a device or application or network endpoint .
4.1.3 DATA TYPE SYSTEM
To ensure syntactic interoperability , a connectivity stack ( see section 2.1 ) will provide a way to describe the data syntax . A data type is a syntactic constraint placed upon the interpretation of data . It is not possible to connect systems without sharing or mapping data types , either implicitly ( e . g . in code ) or explicitly .
A connectivity framework provides a data type system for representing data objects as structures in a programming environment and for formatting data to be communicated on the wire . The data type system may be object-oriented , like the data types found in statically-typed programming languages ( e . g . C , C ++, C # or Java ), or object-based like the dynamic data types found in dynamically-typed programming languages ( e . g . JavaScript , Python , Lua ).
The data type system should provide a means of managing the evolution of data types . This includes versioning and assignability rules across versions , so that applications using newer versions of a data type can communicate with applications using older versions of a data type to the maximum extent possible .
The data type system also defines the serialized data format in communication ( in motion ) and in storage ( at rest ), and operations to serialize from a programming language representation into the serialized format , and to de-serialize back into the programming language representation .
Requiring explicit data syntax definitions using a data type system enables functional standardized gateways ( see section 3.2 ). Also , generic tools can collect and traverse syntactically
1 a . k . a . data resource or data item or data point or tag IIC : PUB : G5 : V1.0 : PB : 20170228 - 28 -