View Issue Details

IDProjectCategoryView StatusLast Update
001032210000-003: Address SpaceSpecpublic2025-06-05 17:04
ReporterAlexander Allmendinger Assigned ToJeff Harding  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Fixed in Version1.05.06 RC1 
Summary0010322: Clarification on DataTypeDefinition requirements for non-custom DataTypes
Description

The specification currently states:

The DataTypeDefinition Attribute is used to provide the meta data and encoding information for custom DataTypes.
It is then followed by requirements to provide this attribute for Structure and Union DataTypes as well as Enumerations and OptionSet DataTypes. The question from a certification has now been raised how such types defined in companion specifications fit into the game. Are they considered a custom datatype (since not in the OPC UA core namespaces) and mandated to have the DataTypeDefinition attribute or are they still standard types (since they are not custom) and therefore not mandated to have the attribute?

After discussion and thinking about the different use cases I would even say, that any of these Types need to have the DataTypeDefinition Attribute, even the ones defined in future OPC UA Core spec versions. Since OPC UA Clients will use this attribute to learn the datatypes there would not be interoperability between a server based on a newer specification with new structures that an older client doesn't know about but has a generic structure handling. Note, this just looks like a spec issue since the most common demo servers have the DataTypeDefinitions set also for all namespace 0 DataTypes.

TagsNo tags attached.
Commit Version1.05.06 RC1
Fix Due Date2025-05-31

Activities

Frank Fischer

2025-05-09 13:11

reporter   ~0022716

I have recently been working on such a generic structure handling and also encountered this section, my impression was that this sentence was more informative:

The DataTypeDefinition Attribute is used to provide the meta data and encoding information for custom DataTypes.

The following sentences:

The Attribute is mandatory for DataTypes derived from Structure and Union.
and
The Attribute is mandatory for DataTypes derived from Enumeration, OptionSet and subtypes of UInteger representing an OptionSet.
have no exception for any namespace, so my impression was that this attribute is only optional for simple types (subtypes of builtin types) which are also not OptionSets.

Jim Luth

2025-05-13 16:11

administrator   ~0022731

Remove the word "custom" and confirm the other statements from Frank are truly normative.

Jeff Harding

2025-05-29 18:49

developer   ~0022807

Removed the word 'custom' from the definition in table 16. Also changed 'is' to 'shall be' to further clarify.

Jim Luth

2025-06-05 17:04

administrator   ~0022970

Agreed to changes in Virtual F2F.

Issue History

Date Modified Username Field Change
2025-05-09 11:02 Alexander Allmendinger New Issue
2025-05-09 13:11 Frank Fischer Note Added: 0022716
2025-05-13 16:06 Jim Luth Assigned To => Jeff Harding
2025-05-13 16:06 Jim Luth Status new => assigned
2025-05-13 16:11 Jim Luth Note Added: 0022731
2025-05-13 16:12 Jim Luth Commit Version => 1.05.06 RC1
2025-05-13 16:12 Jim Luth Fix Due Date => 2025-05-31
2025-05-29 18:49 Jeff Harding Status assigned => resolved
2025-05-29 18:49 Jeff Harding Resolution open => fixed
2025-05-29 18:49 Jeff Harding Fixed in Version => 1.05.06 RC1
2025-05-29 18:49 Jeff Harding Note Added: 0022807
2025-06-05 17:04 Jim Luth Status resolved => closed
2025-06-05 17:04 Jim Luth Note Added: 0022970