View Issue Details

IDProjectCategoryView StatusLast Update
000548110000-003: Address SpaceSpecpublic2021-02-09 17:14
ReporterZbynek Zahradnik Assigned ToJeff Harding  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Summary0005481: Semantics of Structures with optional fields not well defined
Description

When the Server receives a "Write" request with Structure where some optional field is absent, what is the server supposed to do?

a) Assume some default value and perform the write with it
b) skip the writing of the part that is absent
c) undefined

The "Write" here is an example, similar questions arise with input arguments to Call, and also data returned to the Client (or contained in PubSub datasets).

The same issue may apply to empty Unions (Union with Switch Field equal to 0), but there in the mappings the spec says "A Union with no fields present has the same meaning as a NULL value. A Union with any field present is not a NULL value even if the value of the field itself is NULL.", so that it at least some answer, it looks like that in both cases the Server is actually supposed to process the value somehow?

TagsNo tags attached.
Commit Version
Fix Due Date

Relationships

related to 0006386 closedRandy Armstrong NodeSets, XSDs and Generated Code Semantics of Structures with optional fields not well defined 

Activities

Jim Luth

2020-05-26 17:06

administrator   ~0012117

The bit for an optional field is really a "NULL" bit to say if an optional field is present or not. This is true on write as well as read. So if I write 0 to a bit I am effectively setting the field to NULL.

Jeff Harding

2020-06-02 18:27

developer   ~0012163

In Part 3 I have added the following to the IsOptional field of StructureField "An optional field that is not included in a Structure shall be understood as a NULL value by Applications."

Jim Luth

2021-01-19 17:16

administrator   ~0013565

Accepted text in 1.05 draft, but needs 1.04 Errata to close.

Jim Luth

2021-02-09 17:14

administrator   ~0013708

Agreed to 1.04.10 Errata.

Issue History

Date Modified Username Field Change
2020-02-25 10:34 Zbynek Zahradnik New Issue
2020-05-26 17:04 Jim Luth Assigned To => Jeff Harding
2020-05-26 17:04 Jim Luth Status new => assigned
2020-05-26 17:06 Jim Luth Note Added: 0012117
2020-06-02 18:27 Jeff Harding Note Added: 0012163
2020-06-02 18:28 Jeff Harding Status assigned => resolved
2020-06-02 18:28 Jeff Harding Resolution open => fixed
2020-06-02 18:28 Jeff Harding Fixed in Version => 1.05
2021-01-19 17:16 Jim Luth Note Added: 0013565
2021-01-19 17:17 Jim Luth Issue cloned: 0006386
2021-01-19 17:17 Jim Luth Relationship added related to 0006386
2021-02-09 17:14 Jim Luth Status resolved => closed
2021-02-09 17:14 Jim Luth Note Added: 0013708