View Issue Details

IDProjectCategoryView StatusLast Update
000868810000-210: Industrial Automation - Relative Spatial LocationSpecpublic2023-04-24 05:21
ReporterAlberto Medina Assigned ToBernd Fiebiger  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionno change required 
Summary0008688: UA-Nodeset http://opcfoundation.org/UA/RSL/ Variable with abstract data type
Description

the variable node is NodeId="ns=1;i=6038" BrowseName="1:PositionFrame" and has DataType="ns=1;i=2003"

The DataType NodeId="ns=1;i=2003" BrowseName="1:SpatialLocationType" IsAbstract="true" cannot be used as DataType for a UA Variable

TagsNo tags attached.
Commit Version

Activities

Bernd Fiebiger

2023-04-19 06:17

manager   ~0019214

From the https://files.opcfoundation.org/schemas/RSL/1.0/Opc.Ua.RSL.NodeSet2.xml

<UAVariable NodeId="ns=1;i=6038" BrowseName="1:PositionFrame" ParentNodeId="ns=1;i=5006" AccessLevel="3">
<DisplayName>PositionFrame</DisplayName>
<References>
<Reference ReferenceType="HasModellingRule">i=78</Reference>
<Reference ReferenceType="HasTypeDefinition">ns=1;i=2003</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6039</Reference>
<Reference ReferenceType="HasComponent" IsForward="false">ns=1;i=5006</Reference>
</References>

PositionFrame does not have a DataType, but it has a TypeDefinition of NodeId="ns=1;i=2003" BrowseName="1:SpatialLocationType".
SpatialLocationType is abstract, because it is a "supertype" which should be subtyped for use and can not be implemented. The CartesianFrameAngleOrientationType is useable SubType described by this specfiication.

This construct was choosen to provide other groups the possibility to define their own SubTypes of SpatialLocationType with concrete definition of Postion and Orientation.

Sorry - I cannot understand this issue.
Is there an issue in implementing this nodeset?

Alberto Medina

2023-04-19 06:41

reporter   ~0019215

The nodeset cannot be used as a base for an OPC UA server without modifications. Why would I need to edit the nodeset to make it work? You chose this construct to let other groups the possibility to define their own SubTypes, but in this way the HAVE TO make their own SubTypes otherwise the nodeset is not valid for a server.

Bernd Fiebiger

2023-04-19 07:18

manager   ~0019216

Last edited: 2023-04-19 07:19

The nodeset includes the CartesianFrameAngleOrientationType as useable SubType. If this kind of SpatialLocation-description fits to what has to be represented, then the nodeset can be used without "modifications"
@ma_robox: right?

The intention of the workgroup was not to define each kind of representable location (and orientation) information. Inside the specification are examples how to define own "not abstract" SubTypes of SpatialLocationType for use. (Annex E)

@ma_robox: What do you expect to be modified or the extended to the specification or nodeset?

Alberto Medina

2023-04-19 07:32

reporter   ~0019217

No, the nodeset should work as is. I do have to edit the variable type to "select" a working SubType.

Wolfgang Mahnke

2023-04-19 07:50

manager   ~0019218

The NodeSet is correct and works as it. You are actually not allowed to change the standardized TypeDefinitions.
In OPC UA, it is allowed that an InstanceDeclaration is abstract (see https://reference.opcfoundation.org/v104/Core/docs/Part3/6.2.1/ ).
Only on the instance you have to use a concrete Type.

Bernd Fiebiger

2023-04-21 09:48

manager   ~0019228

@ma_robox: can I close this issue with resolution "no change required"?

Alberto Medina

2023-04-21 13:53

reporter   ~0019229

yes

Issue History

Date Modified Username Field Change
2023-02-10 11:28 Alberto Medina New Issue
2023-04-18 18:11 Jim Luth Project UA Specification => 10000-210: Industrial Automation - Relative Spatial Location
2023-04-19 06:17 Bernd Fiebiger Note Added: 0019214
2023-04-19 06:33 Bernd Fiebiger Assigned To => Bernd Fiebiger
2023-04-19 06:33 Bernd Fiebiger Status new => assigned
2023-04-19 06:41 Alberto Medina Note Added: 0019215
2023-04-19 07:18 Bernd Fiebiger Note Added: 0019216
2023-04-19 07:19 Bernd Fiebiger Note Edited: 0019216
2023-04-19 07:32 Alberto Medina Note Added: 0019217
2023-04-19 07:50 Wolfgang Mahnke Note Added: 0019218
2023-04-21 09:48 Bernd Fiebiger Note Added: 0019228
2023-04-21 13:53 Alberto Medina Note Added: 0019229
2023-04-24 05:21 Bernd Fiebiger Status assigned => closed
2023-04-24 05:21 Bernd Fiebiger Resolution open => no change required