Avatar

Please consider registering
guest

sp_LogInOut Log In sp_Registration Register

Register | Lost password?
Advanced Search

— Forum Scope —




— Match —





— Forum Options —





Minimum search word length is 3 characters - maximum search word length is 84 characters

sp_Feed Topic RSS sp_TopicIcon
Namespace uri used in ReferenceDescription.nodeId for browsing
November 14, 2017
16:36, EET
Avatar
hm62
Member
Members
Forum Posts: 4
Member Since:
November 14, 2017
sp_UserOfflineSmall Offline

Hello,
I’ve encountered the Simulation Server filling in namespace uris as for the ReferenceDescription.nodeId in the returned ReferenceDescriptions when browsing the address space. I’ve never seen an OPC UA server doing this before and I just want to ask about what the best way would be for returning the references here.
In the standard, we have this:
“If the serverIndex indicates that the TargetNode is a remote Node, then the nodeId shall contain the absolute namespace URI. If the TargetNode is a local Node the nodeId shall contain the namespace index.”
Since the nodes of the Simulation Server are of “local” type, I did not expect to get the namespace URI here…

thanks for help or clarification
Hartmut

November 14, 2017
17:57, EET
Avatar
Bjarne Boström
Moderator
Moderators
Forum Posts: 1026
Member Since:
April 3, 2012
sp_UserOfflineSmall Offline

Hi,

This is a known “issue” in the java stack (https://github.com/OPCFoundation/UA-Java/issues/12), which is a low level component, on top of which our java SDK is built, which is in turn used to make the SimulationServer.

You are correct about the specification stating that. This will be eventually fixed, however the fix is more of a performance optimization than a real issue, in my opinion.

However in practice a client should not rely on the namespace uri defining a remote reference, because the serverIndex defines that, not the uri. Therefore it should always check the server index first to determine if the reference is local/remote, then check namespaceuri/index, convert the index to uri if index defined and then check the value.

In general, the namespace indices should not be used for anything other that efficient transmit of the uri, i.e. clients should always convert the indices to uris and code application logic against the uris instead of indices, unless their developer maintains all client accessing that server because the order of the indices is not defined (expect for the 0 and 1 namespace indices) and could e.g. different each restart.

– Bjarne

Forum Timezone: Europe/Helsinki

Most Users Ever Online: 1919

Currently Online:
10 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

Heikki Tahvanainen: 402

hbrackel: 144

rocket science: 88

pramanj: 86

Francesco Zambon: 83

Ibrahim: 78

Sabari: 62

kapsl: 57

gjevremovic: 49

Xavier: 43

Member Stats:

Guest Posters: 0

Members: 735

Moderators: 7

Admins: 1

Forum Stats:

Groups: 3

Forums: 15

Topics: 1523

Posts: 6449

Newest Members:

rust, christamcdowall, redaahern07571, nigelbdhmp, travistimmons, AnnelCib, dalenegettinger, howardkennerley, Thomassnism, biancacraft16

Moderators: Jouni Aro: 1026, Pyry: 1, Petri: 0, Bjarne Boström: 1026, Jimmy Ni: 26, Matti Siponen: 346, Lusetti: 0

Administrators: admin: 1