View Issue Details

IDProjectCategoryView StatusLast Update
000952910000-006: MappingsSpecpublic2024-05-14 16:54
ReporterMartin Regen Assigned ToRandy Armstrong  
PrioritynormalSeverityminorReproducibilityalways
Status assignedResolutionopen 
Summary0009529: IOP: Clarify if Number/UInteger/Integer in a complex type need to set AllowSubTypes
Description

By definition of the UInteger, Integer and Number they are always encoded as a Variant.
see https://reference.opcfoundation.org/Core/Part6/v105/docs/5.1.6

The question is are they considered abstract types as below?

The text for Part6 / F.13 Allowsubtypes states:

This field shall be TRUE for all abstract DataTypes where the possible subtypes have different encodings.
When TRUE, the field’s value is allowed to contain subtypes of the DataType. All subtypes of Structure are encoded as an ExtensionObject (see 5.1.6). All DataTypes that are not subtypes of Structure are encoded as a Variant (see 5.1.7).

The sample code for this complex type in the UA .NET Standard reference server is compiled with Modelcompiler.

If the AllowSubTypes must now be set, then there is a backward compatibility issue because older servers were already using these types encoded in a DataTypeDefinition with AllowSubTypes set to false.

I think AllowSubTypes should be ignored for these datatypes.

Steps To Reproduce

Connect to the UA .NET Standard reference server.

It has a complex type defined for UInteger in a structure, generated code by Modelcompiler.

The allowsubtypes for the field is not set.
should it be set?

TagsNo tags attached.
Commit Version
Fix Due Date

Activities

Martin Regen

2024-04-27 09:08

developer   ~0021156

accidently opened in Part 8 - please move to Part 6

Jim Luth

2024-05-14 16:54

administrator   ~0021201

Randy wrote the proposed text into Part 6 Draft.

Issue History

Date Modified Username Field Change
2024-04-27 09:05 Martin Regen New Issue
2024-04-27 09:08 Martin Regen Note Added: 0021156
2024-05-01 18:20 Jim Luth Project 10000-008: Data Access => 10000-006: Mappings
2024-05-14 16:53 Jim Luth Assigned To => Randy Armstrong
2024-05-14 16:53 Jim Luth Status new => assigned
2024-05-14 16:54 Jim Luth Note Added: 0021201