-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use NodeSet2.xml Definition fields instead of .bsd files for datatype generator #2587
Comments
We could move generate_datatypes.py as a method into the nodeset compiler. Can we keep the .bsd files for the builtin types baked into the library? |
Maybe we can have the following solution: Provide a command line switch
Like this we support old Nodesets, and also newer ones which do not come with a .bsd file and also without a base64 encoded type definition. |
Hi @Pro,
How to export the bsd file in the UaModeler? |
Currently we require Types.bsd files for the datatype_generator.py to generate the corresponding custom datatypes.
In newer NodeSets, the DataType Definition is stored inside the NodeSet2.xml. (e.g. see #2582)
We should use this Definition instead of the .bsd files.
This can be achieved by changing the nodeset_compiler in a way, that it also creates the types files, since it already parses all the information. For this the current datatype_generator.py code should be merged into the nodeset compiler.
The .bsd file is used for creating the custom structs and datatypes for this specific nodeset.
If the nodeset does not define any custom data types, you can also skip the whole datatype generation.
This is done e.g. for the PLCopen nodeset here:
https://github.com/open62541/open62541/blob/master/examples/nodeset/CMakeLists.txt#L94
If your nodeset defines custom datatypes, currently a .bsd file is required. If it is not given with the .xml file, there are two ways to get it:
The text was updated successfully, but these errors were encountered: