View Issue Details

IDProjectCategoryView StatusLast Update
000641210000-009: Alarms and ConditionsSpecpublic2023-07-24 07:14
ReporterMatthias Damm Assigned ToPaul Hunkar  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Fixed in Version1.05.01 RC1 
Summary0006412: Clarification needed for TwoStateVariableType TrueState and FalseState
Description

It was never intended that the values of these two properties are included in an event.

If a client want to get the LocalizedText of the state, it simply subscribed to the TwoStateVariableType which delivers the localized test for the current state. If a client want to subscribe only to the boolean in TwoStateVariableType.Id, the client can read the values of the properties on the corresponding AlarmType instance declaration variable.

It makes no sense to subscribe to TWO localized text event fields to get this information and then check the Id to display the right text if a client can get the current text directly in ONE event field.

The bug is actually in the Nodeset. The TrueState and FalseState properties have an Optional modeling rule on the instance declaration nodes on the condition types. There should be no modeling rule to make it clear that these properties only exist on the instance declaration nodes.

But the spec allows this stupid option:
Part 9 - 5.2 Two-state state machines
TrueState and FalseState contain the localized string for the TwoStateVariableType value when its Id Property has the value True or False, respectively. Since the two Properties provide meta-data for the Type, Servers may not allow these Properties to be selected in the Event filter for a MonitoredItem. Clients can use the Read Service to get the information from the specific ConditionType.

We should make it clear that this is theoretically possible but it makes no sense at all.
Instead we should make it clear that the fields are not included in an event and fix the modeling rule in the nodeset.

TagsNo tags attached.
Commit Version
Fix Due Date

Relationships

related to 0009052 closedRandy Armstrong NodeSets, XSDs and Generated Code NodeSet does not match specification 

Activities

Paul Hunkar

2021-03-04 07:28

developer   ~0013943

The variabletype has to have a modeling rule - they are not subtyped where they are used (i.e. in the typedefinition as an instance declaration - each use of them has a seperate string - so they must have a modeling rule.

They should be updated to indicate that the ietms shall not be subscribed for.

the text can also explain that if instance are created of the conditionType that these item should be singleton item (i.e. they point from all of the instance back to the type

Paul Hunkar

2021-03-04 07:41

developer   ~0013944

UPdated text and provided a figure to illlustrate expected behavior

Jim Luth

2021-06-08 18:30

administrator   ~0014518

Needs 1.03 & 1.04 Errata to close.

Jim Luth

2021-06-10 14:31

administrator   ~0014539

Agreed to 1.03 & 1.04 Errata in Virtual F2F.

Matthias Damm

2021-07-27 08:10

developer   ~0014699

Last edited: 2021-07-27 08:13

The changes in Part 9 are fine for me but this issue must be cloned to the nodeset to remove the Optional modeling rule on the instance declaration nodes of the AlarmTypes.

Paul is right with the modeling rule on the TwoStateVariableType

But my statement from the issue report is also true
"The bug is actually in the Nodeset. The TrueState and FalseState properties have an Optional modeling rule on the instance declaration nodes on the condition types. There should be no modeling rule to make it clear that these properties only exist on the instance declaration nodes."

Removing the optional modeling rule on the instance declaration would exactly to what the new figure describes.

The spec states "Servers shall not allow these Properties to be selected in the Event filter for a MonitoredItem".
But clients would see the event field in the type tree.
The client needs a way to detect that the property is not available as event field. The only option to provide this information is to check the modeling rule.
Maybe we should add also a statement for clients like "Clients should only subscribe to event fields that have a modeling rule"

Jim Luth

2021-09-23 17:29

administrator   ~0014980

Last edited: 2021-09-23 17:30

Paul needs to add addtional tables to override the modeling rules on types that contain TwoStateVariableTypes from Optional to None. The nodeset will also need to be updated with the overrides.

Randy Armstrong

2022-02-22 16:14

administrator   ~0016064

Reviewed in UA WG meeting. 1.04,11 and 1.03.9 Errata updated.

Issue History

Date Modified Username Field Change
2021-01-28 11:12 Matthias Damm New Issue
2021-03-04 07:28 Paul Hunkar Note Added: 0013943
2021-03-04 07:28 Paul Hunkar Assigned To => Paul Hunkar
2021-03-04 07:28 Paul Hunkar Status new => assigned
2021-03-04 07:41 Paul Hunkar Status assigned => resolved
2021-03-04 07:41 Paul Hunkar Resolution open => fixed
2021-03-04 07:41 Paul Hunkar Note Added: 0013944
2021-06-08 18:30 Jim Luth Note Added: 0014518
2021-06-10 14:31 Jim Luth Status resolved => closed
2021-06-10 14:31 Jim Luth Fixed in Version => 1.05
2021-06-10 14:31 Jim Luth Note Added: 0014539
2021-07-27 08:10 Matthias Damm Status closed => feedback
2021-07-27 08:10 Matthias Damm Resolution fixed => reopened
2021-07-27 08:10 Matthias Damm Note Added: 0014699
2021-07-27 08:13 Matthias Damm Note Edited: 0014699
2021-09-23 17:29 Jim Luth Status feedback => assigned
2021-09-23 17:29 Jim Luth Note Added: 0014980
2021-09-23 17:30 Jim Luth Note Edited: 0014980
2022-02-21 05:33 Paul Hunkar Status assigned => resolved
2022-02-21 05:33 Paul Hunkar Resolution reopened => fixed
2022-02-21 05:33 Paul Hunkar Fixed in Version => 1.05.01 RC1
2022-02-22 16:14 Randy Armstrong Status resolved => closed
2022-02-22 16:14 Randy Armstrong Note Added: 0016064
2023-07-24 07:14 Randy Armstrong Relationship added related to 0009052