View Issue Details

IDProjectCategoryView StatusLast Update
0008491Part 83: UAFX Offline EngineeringSpecpublic2023-04-14 14:24
ReporterMarco Hoch Assigned ToTodd Snide  
PrioritynormalSeverityminorReproducibilityN/A
Status closedResolutionfixed 
Fixed in Version1.00.00 RC3 
Summary0008491: How to share information about new datatypes, which are available in descriptors?
Description

If in one of the descriptors a new datatype is introduced, it should be possible to share it with the other side, right?

  • How can it be shared?
  • If it is shared by the descriptor it would mean that we need to convert it back from AML to UA!?
TagsNo tags attached.

Relationships

related to 0008674 closedJim Luth NodeIds are not represented in a Descriptor 

Activities

Todd Snide

2023-02-14 19:02

developer   ~0018715

The Metadata and the DataType definition is in AML format, including the name and URI. One does not have the Nodeset file nor the NodeID. To get these it seems one needs to connect to a server with the DataType to find the corresponding NodeID or build a server with a similar DataType. You are a client and need to pass along the DataType.
The issue in OPC UA is if one receives a value without knowing the structure type, one has to go to the server for the Metadata and the server needs to be available.
To solve this, the Metadata will need to be included in the Descriptor. One can go directly to a DataType in the Type system and fill out the information as needed. The receiver does need to know anything about the DataType. The user can parse the content and use it as desired. There is no need to convert the DataType back to OPC UA.

Jim Luth

2023-02-15 19:58

administrator   ~0018721

Not ready to be assigned to the editor for fixing as a solution has not been agreed upon.

Todd Snide

2023-03-22 16:35

developer   ~0018968

The perceived issue is when there is no predefined DataSet in a Descriptor and data is being shared between engineering tools and between controllers. The controller receiving the data from one other controller, needs to know the DataType for the DataSet.
DataSets get created on the fly (i.e. are not pre-defined) during connection establishment. Offline Engineering is not involved during connection establishment.
A new DataType is created, during connection establishment, which is derived from the Structure ReferenceType as a subtype of the Structure. The RootNodeId from the Structure is well known. There is a known path to the Structure for the new type and the new DataType is created. The DataTypes are shared between the engineering tools.
An example is PLC A exports its configuration and hands its AML to the vendor for PLC B. The DataType has to be in the Descriptor being shared between Vendor A and Vendor B. Assuming Vendor B has to work with the new DataType then Vendor B has to mimic this DataType. Vendor B will map the DataType into Vendor B's own information model.
Only the Pub/Sub metadata has to match in both tools and PLCs. The Structure has to be shared between vendors as well. The same knowledge of the complete Structure that the publisher uses for the DataSet must be replicated on the receiver side for proper interpretation. If there is no pre-defined data then the engineering tool has to create the matching DataSet. Vendor B can reorganize the derived data in any manner desired by the vendor.

Todd Snide

2023-04-13 12:14

developer   ~0019172

A DataSet shared between engineering tools contains all the information needed to use it at the receiver side. This information is contained in the DataSet metadata which includes data from the DataType schema header. Therefore one has the complete set of structure data and encoding.

Emanuel Kolb

2023-04-14 14:24

manager   ~0019189

OE team agrees to close it

Issue History

Date Modified Username Field Change
2022-12-05 09:30 Marco Hoch New Issue
2022-12-05 09:30 Marco Hoch Status new => assigned
2022-12-05 09:30 Marco Hoch Assigned To => Todd Snide
2023-02-14 19:02 Todd Snide Note Added: 0018715
2023-02-15 19:57 Jim Luth Relationship added related to 0008674
2023-02-15 19:58 Jim Luth Assigned To Todd Snide =>
2023-02-15 19:58 Jim Luth Assigned To => Jim Luth
2023-02-15 19:58 Jim Luth Status assigned => new
2023-02-15 19:58 Jim Luth Note Added: 0018721
2023-02-15 19:59 Jim Luth Assigned To Jim Luth =>
2023-03-17 14:30 Todd Snide Assigned To => Todd Snide
2023-03-17 14:30 Todd Snide Status new => assigned
2023-03-22 16:35 Todd Snide Note Added: 0018968
2023-04-13 12:14 Todd Snide Status assigned => resolved
2023-04-13 12:14 Todd Snide Resolution open => fixed
2023-04-13 12:14 Todd Snide Fixed in Version => 1.00.00 RC3
2023-04-13 12:14 Todd Snide Note Added: 0019172
2023-04-14 14:24 Emanuel Kolb Status resolved => closed
2023-04-14 14:24 Emanuel Kolb Note Added: 0019189