View Issue Details

IDProjectCategoryView StatusLast Update
000539210000-006: MappingsApi Changepublic2021-09-23 04:45
ReporterThomas Merk Assigned ToRandy Armstrong  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionreopened 
Summary0005392: Used BaseType in dictionary missing
Description

The data types "StructureDefinition" and "EnumDefinition" refer to a BaseType "DataTypeDefinition" in dictionary.
This BaseType is not available in dictionary.

In NodeSet2.xml the node is availabel and has NO "Definition" tag.

How shall those data types treated?
Just as a structure, not defining any field?

Other structures (also not defining any field), e.g. "DiscoveryConfiguration" are mentioned in dictionary, with

  • BaseType: ua:ExtensionObject
  • no fields
  • NodeSet2 xml also has no Definition tag

Why is exactly this data type missing in dictionary?

TagsNo tags attached.
Commit Version
Fix Due Date

Relationships

related to 0004421 closedJeff Harding 10000-003: Address Space Handling of StructureFields with abstract DataType 
related to 0005412 closedRandy Armstrong NodeSets, XSDs and Generated Code DataTypes incorrect defined 
related to 0007297 closedRandy Armstrong 10000-006: Mappings Clarify DataTypeDefinitions when No Fields Exist. 

Activities

Randy Armstrong

2020-04-10 04:44

administrator   ~0011889

Fixed bug that suppressed the generation of abstract types with no fields.
NodeSet updated.

Randy Armstrong

2020-04-11 05:03

administrator   ~0011902

Fix was incorrect.

Randy Armstrong

2020-04-11 05:11

administrator   ~0011903

If no Definition assume abstract type with no fields.
Rather pointless to add an empty element in the XML that adds no information.

Randy Armstrong

2020-04-14 15:26

administrator   ~0011910

Add text to explain what to do when Definition is missing.

Randy Armstrong

2020-06-17 02:59

administrator   ~0012364

Added text to DataTypeDefinition:

This field is not present for abstract DataTypes that have no fields. Code generators may choose to create an abstract base class with no fields if the programming environment supports the concept.

Jim Luth

2020-06-18 17:41

administrator   ~0012438

Agreed to change in virtual F2F.

Matthias Damm

2021-07-25 09:59

developer   ~0014697

I do not agree with the added sentence "This field is not present for abstract DataTypes that have no fields."

This change was made to handle a bug in the nodest with another special case in the spec.
I did not find anything in the change log for 1.05 or in an errata.

Is this a shall or a should.
A shall would be breaking change for our tooling to 1.04.

What happens if it is a concrete type that does not define fields? Is it then also not provided?

What happens if it is an abstact type that has no fields but a symbolic name is needed?

Code that creates it or proceses it for the cases listed in Table F.11 would not need any special logic if the field would be required even if it does not add any additional information in some cases

Can we not simply

  • Require (shall) that the Definition is present for the DataTypes listed in Table F11
  • Fix the bug in the nodeset

Randy Armstrong

2021-08-18 09:57

administrator   ~0014762

Changed the text to:

This field may not be present for DataTypes that have no fields. Code generators may choose to create an base class with no fields if the programming environment supports the concept.

Jim Luth

2021-08-31 15:50

administrator   ~0014781

Agreed to changes edited in 1.05.01 Draft 4.

Issue History

Date Modified Username Field Change
2020-01-22 14:06 Thomas Merk New Issue
2020-04-10 04:44 Randy Armstrong Assigned To => Randy Armstrong
2020-04-10 04:44 Randy Armstrong Status new => resolved
2020-04-10 04:44 Randy Armstrong Resolution open => fixed
2020-04-10 04:44 Randy Armstrong Note Added: 0011889
2020-04-11 05:03 Randy Armstrong Status resolved => feedback
2020-04-11 05:03 Randy Armstrong Resolution fixed => reopened
2020-04-11 05:03 Randy Armstrong Note Added: 0011902
2020-04-11 05:11 Randy Armstrong Status feedback => resolved
2020-04-11 05:11 Randy Armstrong Resolution reopened => no change required
2020-04-11 05:11 Randy Armstrong Note Added: 0011903
2020-04-14 15:25 Randy Armstrong Project NodeSets, XSDs and Generated Code => 10000-006: Mappings
2020-04-14 15:25 Randy Armstrong Category Implementation Bug => Api Change
2020-04-14 15:26 Randy Armstrong Status resolved => feedback
2020-04-14 15:26 Randy Armstrong Resolution no change required => reopened
2020-04-14 15:26 Randy Armstrong Note Added: 0011910
2020-04-14 15:40 Randy Armstrong Relationship added related to 0005412
2020-04-14 15:47 Matthias Damm Relationship added related to 0004421
2020-06-02 15:57 Jim Luth Status feedback => assigned
2020-06-17 02:59 Randy Armstrong Status assigned => resolved
2020-06-17 02:59 Randy Armstrong Note Added: 0012364
2020-06-18 17:41 Jim Luth Status resolved => closed
2020-06-18 17:41 Jim Luth Fixed in Version => 1.05
2020-06-18 17:41 Jim Luth Note Added: 0012438
2021-07-25 09:59 Matthias Damm Status closed => feedback
2021-07-25 09:59 Matthias Damm Note Added: 0014697
2021-08-18 09:57 Randy Armstrong Status feedback => resolved
2021-08-18 09:57 Randy Armstrong Note Added: 0014762
2021-08-31 15:50 Jim Luth Status resolved => closed
2021-08-31 15:50 Jim Luth Note Added: 0014781
2021-09-23 04:44 Randy Armstrong Issue cloned: 0007297
2021-09-23 04:45 Randy Armstrong Relationship added related to 0007297