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
manage namespace conflicts
November 8, 2022
11:28, EET
Avatar
Francesco Zambon
Member
Members
Forum Posts: 81
Member Since:
December 20, 2021
sp_UserOfflineSmall Offline

Good morning,

I am using the prosys-opc-ua-sdk-for-java-4.9.0-43-client-server-binary library.

I need to create an OPC UA server and add the OCP UA nodes defined in the following EUROMAP standards:
– OPC 40082-1 ​​https://www.euromap.org/euromap82-1 (temperature control devices)
– OPC 40086-1 https://www.euromap.org/euromap86 (material supply systems)

Below are the namespaces defined by the EUROMAP standards:
namespaces used in OPC 40082-1:
– NamespaceURI: http://opcfoundation.org/UA/ – Namespace Index: 0
– NamespaceURI: http://opcfoundation.org/UA/DI/ – Namespace Index: 2
– NamespaceURI: http://opcfoundation.org/UA/Pl…..eralTypes/ – Namespace Index: 3

namespaces used in OPC 40086-1:
– NamespaceURI: http://opcfoundation.org/UA/ – Namespace Index: 0
– NamespaceURI: http://opcfoundation.org/UA/DI/ – Namespace Index: 2
– NamespaceURI: http://opcfoundation.org/UA/Machinery/ – Namespace Index: 3

I noticed that the namespace index 3 in the OPC 40082-1 ​​standard was assigned to the namespace http://opcfoundation.org/UA/Pl…..eralTypes/, while in the OPC 40086-1 standard the namespace index 3 was assigned to the namespace http://opcfoundation.org/UA/Machinery/.

Is it possible change name space index or should I create an OPC UA server for each EUROMAP standard?

Thanks in advance for the support,
Francesco

November 8, 2022
12:04, EET
Avatar
Bjarne Boström
Moderator
Moderators
Forum Posts: 983
Member Since:
April 3, 2012
sp_UserOfflineSmall Offline

There is no conflict.

The uri index mapping table is context-specific. The server has it’s own in the NamespaceArray and each model has _their own mapping table_, that is only specific to the NodeSet XML in question. Basically everything should use the uris, the indexes are just an optimization that you do not need to write the uri everytime (or transfer a long string over the network connection). When you load the models, SDK will transform internally model index -> model uri -> (compare to) server uri -> server index. If you wish to have specific indexes, set the via the UaServer.getNamespaceTable() before loading the model, otherwise SDK will just use the next index for whenever in encounters new uris.

November 8, 2022
16:40, EET
Avatar
Francesco Zambon
Member
Members
Forum Posts: 81
Member Since:
December 20, 2021
sp_UserOfflineSmall Offline

Hello Bjarne,

Thank you for clarifying.

Forum Timezone: Europe/Helsinki

Most Users Ever Online: 518

Currently Online: Ibrahim
23 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

hbrackel: 135

pramanj: 86

Francesco Zambon: 81

rocket science: 77

ibrahim: 76

Sabari: 62

kapsl: 57

gjevremovic: 49

Xavier: 43

fred: 41

Member Stats:

Guest Posters: 0

Members: 680

Moderators: 16

Admins: 1

Forum Stats:

Groups: 3

Forums: 15

Topics: 1467

Posts: 6260

Newest Members:

sagarchau, elviralangwell4, Donnavek, Eddiefauth, DonaldPooma, fidelduke938316, Jan-Pfizer, DavidROunc, fen.pang@woodside.com, aytule

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

Administrators: admin: 1