View Issue Details

IDProjectCategoryView StatusLast Update
000627710000-006: MappingsSpecpublic2020-12-01 16:40
ReporterWolfgang Mahnke Assigned ToRandy Armstrong  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Summary0006277: Disalow cyclic references between NodeSet-Files
Description

Remark: I put it on Part 6 since it defines in the annex the concept of a NodeSet-File.
Remark: The issue came up since AAS is having those cyclic dependencies in their release candidate.

Currently there are no restrictions between dependencies of NodeSet-Files.
Therefore, it is allowed to reference from NodeSet-File A to NodeSet-File B and vice versa. This is problematic for any tooling working with NodeSet-Files.
You cannot load one NodeSet-File and then the other because of the dependencies. There are issues with code generation, etc. Therefore, I recommend to add a statement to the spec that this is not allowed.
A solution to avoid cyclic dependencies in NodeSet-Files is to use inverse reference from the dependent NodeSet B to the NodeSet A, and thus have NodeSet A independent on NodeSet B.

Indirectly, that leads to the question on cyclic references between Namespaces in an OPC UA Model. In general, I do not see issues with that, but for specific References I do. I would like to disallow that Namespace A contains a Type_A, Namespace B contains a subtype of Type_A called Type_B, and Namespace A contains another type Type_C as subtype of Type_B. Thus, Namespace A requires Namespace B and Namespace B requires Namespace A. This is, again, troublesome for code generation. And at least Mandatory InstanceDeclarations should not be added by adding inverse References from another Namespace / NodeSet-File.
Remark: The last Paragraph would need to be addressed not in Part 6 but probably Part 3.

TagsNo tags attached.
Commit Version
Fix Due Date

Relationships

related to 0006293 assignedRandy Armstrong NodeSets, XSDs and Generated Code Disalow cyclic references between NodeSet-Files 

Activities

Randy Armstrong

2020-11-28 08:06

administrator   ~0013314

Fixed in Draft 22 with the statement:
Models shall not introduce circular dependencies.

Jim Luth

2020-12-01 16:39

administrator   ~0013332

Last edited: 2020-12-01 16:40

Agreed to changes edited in Telecon.

Text was changed to make it clearer the RequiredModels field shall not introduce circular depenencies.

Issue History

Date Modified Username Field Change
2020-11-24 13:26 Wolfgang Mahnke New Issue
2020-11-28 08:06 Randy Armstrong Assigned To => Randy Armstrong
2020-11-28 08:06 Randy Armstrong Status new => resolved
2020-11-28 08:06 Randy Armstrong Resolution open => fixed
2020-11-28 08:06 Randy Armstrong Note Added: 0013314
2020-12-01 16:21 Jim Luth Issue cloned: 0006293
2020-12-01 16:21 Jim Luth Relationship added related to 0006293
2020-12-01 16:39 Jim Luth Status resolved => closed
2020-12-01 16:39 Jim Luth Fixed in Version => 1.05
2020-12-01 16:39 Jim Luth Note Added: 0013332
2020-12-01 16:40 Jim Luth Note Edited: 0013332