View Issue Details

IDProjectCategoryView StatusLast Update
000694910000-005: Information ModelSpecpublic2021-10-12 15:08
ReporterWolfgang Mahnke Assigned ToJeff Harding  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionduplicate 
Fixed in Version1.05.00 
Summary0006949: Add capability to provide a semantic version for SoftwareRevision
Description

We discussed in the Asset Management Basics WG that it would be desirable to provide more semantic in the SoftwareRevision than just a string, where you - in a nutshell - just compare if it is the same version or not. In many cases, there is more information like, Major, Minor, Build Number, etc. This website (https://semver.org/) gives a BNF how this can be represented in a string. This allows you to identify, if it is a newer or older version.

As not all SoftwareRevisions will be provided in such a format and we do not want to introduce a breaking change we suggest to:
Create a subtype of String which requires the specific syntax (e.g. called SemVerString). Servers can use the subtype and thus expose to the client, that a specific format is used. Companion Specs can require this format by refining the Property to this data type. Clients can use the information so that they know a specific format is used.

Remark: (Not discussed in WG): Maybe it even make sense to put this data type into the base spec? Then Part 100 should still mention its possible usage as SoftwareRevision.

TagsNo tags attached.
Commit Version
Fix Due Date

Relationships

related to 0006926 closedKarl Deiretsbacher 10000-100: Devices Add capability to provide a semantic version for SoftwareRevision 
related to 0007274 closedJeff Harding 10000-005: Information Model Add capability to provide a semantic version for SoftwareRevision 
related to 0006978 closedRandy Armstrong NodeSets, XSDs and Generated Code Add capability to provide a semantic version for SoftwareRevision 

Activities

Wolfgang Mahnke

2021-05-18 13:53

developer   ~0014385

Discussed in WG Meeting:
Define Type called SemanticVersionString as subtype of string.
Copy BNF into spec.
Add note in IVendorNamplateType and SoftwareVersionType that the datatype can be used instead of the "normal" string.

Clone item to Part 5 and potentially define DataType in Part 5.

Wolfgang Mahnke

2021-05-27 12:26

developer   ~0014426

Proposal from FDI/PA-DIM-WGs (probably also Fx):
“Limit the version parts to 1..5 characters. Furthermore, the number expressed by each part of the version string shall fit into an 16 bit unsigned integer, i.e. <= 65.535.”

Paul Hunkar

2021-05-28 03:03

developer   ~0014434

Many vendors already use SoftwareVersion with vendor specific strings and getting them to switch might not be practical, but FLC required a standard versioning that can be easily compared. FX has defined an structure with numeric version information in it for use (major, minor, buid, subbuild). No string processing is required and can be easily compared. We still allow the vendors to use the software and Hardware version information as they want, since it might be used for vendor proprietary information.

defining the string type might be useful in other specification, but I don't think it can be applied to all of the existing devices.

Jim Luth

2021-06-01 15:41

administrator   ~0014447

Agreed name of type should be "SemanticVersionString".
We agreed to put this in the 1.05.0 release Nodeset even though it will not be in the 1.05.0 Part 5.

Jim Luth

2021-08-03 15:19

administrator   ~0014714

Agreed to add this to the final 1.05.0 Part 5 (change after RC review).

Jeff Harding

2021-09-27 19:33

developer   ~0015036

DataType moved for Part 100 into Part 5 during RC review

Jim Luth

2021-10-12 15:07

administrator   ~0015159

Dup of 7274

Jim Luth

2021-10-12 15:08

administrator   ~0015160

Agreed to dup in telecon.

Issue History

Date Modified Username Field Change
2021-05-18 13:53 Wolfgang Mahnke New Issue
2021-05-18 13:53 Wolfgang Mahnke Issue generated from: 0006926
2021-05-18 13:53 Wolfgang Mahnke Note Added: 0014385
2021-05-18 13:53 Wolfgang Mahnke Relationship added related to 0006926
2021-05-18 13:53 Wolfgang Mahnke Project 10000-100: Devices => 10000-005: Information Model
2021-05-27 12:26 Wolfgang Mahnke Note Added: 0014426
2021-05-28 03:03 Paul Hunkar Note Added: 0014434
2021-06-01 15:41 Jim Luth Note Added: 0014447
2021-06-01 16:05 Jim Luth Issue cloned: 0006978
2021-06-01 16:05 Jim Luth Relationship added related to 0006978
2021-06-01 16:06 Jim Luth Target Version => 1.05
2021-06-01 16:06 Jim Luth Assigned To => Jeff Harding
2021-06-01 16:06 Jim Luth Status new => assigned
2021-08-03 15:19 Jim Luth Note Added: 0014714
2021-09-27 19:33 Jeff Harding Status assigned => resolved
2021-09-27 19:33 Jeff Harding Resolution open => fixed
2021-09-27 19:33 Jeff Harding Fixed in Version => 1.05.00
2021-09-27 19:33 Jeff Harding Note Added: 0015036
2021-10-12 15:07 Jim Luth Relationship added related to 0007274
2021-10-12 15:07 Jim Luth Resolution fixed => duplicate
2021-10-12 15:07 Jim Luth Note Added: 0015159
2021-10-12 15:08 Jim Luth Status resolved => closed
2021-10-12 15:08 Jim Luth Note Added: 0015160