Please consider registering

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
Why does "Copy BrowsePath" include "/Root"?
June 27, 2022
21:01, EEST
New Member
Forum Posts: 1
Member Since:
June 27, 2022
sp_UserOfflineSmall Offline


I’m wondering why “Copy BrowsePath” on a node includes “/Root” at the start of the browse path. I assume that “/Root” indicates the path starts off the root node, but it isn’t useful as-is in a translate browse paths call through the session without modification because the starting node id for that call has to be root.

Is my assumption correct that to use this browse path in a “translate browse path to node IDs” call this browse path would need to be modified, removing the “Root” node?

I am using the OPC Foundation’s .NET reference stack so there may be some implementation difference I’m running into here.

PS first time poster… so if I’ve missed something please correct me and guide me to the right thing!

June 28, 2022
11:49, EEST
Matti Siponen

Forum Posts: 288
Member Since:
February 11, 2020
sp_UserOfflineSmall Offline


BrowsePaths in TranslateBrowsePathsToNodeIds Service calls can start from any Node, not just the Root Node. That being said, the function for copying the BrowsePath of the selected Node to clipboard was not added to Browser with TranslateBrowsePathsToNodeIds Service in mind. Instead it is there to provide an alternative to copying BrowseName or NodeId in Attributes and References view to clipboard as BrowseNames don’t always uniquely identify Nodes and NodeIds can sometimes be rather undescriptive.

If we’re being pedantic, the correct form for a BrowsePath is the NodeId of the starting Node and a RelativePath consisting of an array of RelativePathElements which consist of information on the followed References (referenceTypeId, isInverse and includeSubtypes) and QualifiedName the target Node. For more information on RelativePaths, see https://reference.opcfoundation.org/v105/Core/docs/Part4/7.31/

This means that the BrowsePaths copied by Browser to clipboard are similar to BrowsePaths but not quite BrowsePaths as information on the References is omitted. In fact, the OPC UA Specification doesn’t define a String representation for BrowsePaths. So if the OPC Foundation’s .NET reference stack supports BrowsePaths in some String form, that form has been chosen for the implementation and is not defined in the OPC UA Specification.

Forum Timezone: Europe/Helsinki

Most Users Ever Online: 518

Currently Online:
17 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

hbrackel: 130

pramanj: 86

ibrahim: 75

rocket science: 72

Francesco Zambon: 62

Sabari: 62

kapsl: 57

gjevremovic: 49

Xavier: 43

fred: 41

Member Stats:

Guest Posters: 0

Members: 651

Moderators: 16

Admins: 1

Forum Stats:

Groups: 3

Forums: 15

Topics: 1415

Posts: 6035

Newest Members:

u310498, ntd, francescac, yahya95, leomajoe, Gus, sdfsdfsdfsd, riatuccker

Moderators: Jouni Aro: 988, Otso Palonen: 32, Tuomas Hiltunen: 5, Pyry: 1, Petri: 0, Bjarne Boström: 941, Heikki Tahvanainen: 402, Jukka Asikainen: 1, moldzh08: 0, Jimmy Ni: 25, Teppo Uimonen: 21, Markus Johansson: 42, Niklas Nurminen: 0, Matti Siponen: 288, Lusetti: 0, Ari-Pekka Soikkeli: 5

Administrators: admin: 1