Comments (8)
Unfortunately if we want to keep OperationVariable
class we will have to revert some changes made in d0cf3d5
To solve #146 we may introduce a new property submodel_element_id_short
in OperationVariable
and do smth like this in Operation.__init__
:
self.input_variable = base.NamespaceSet(self, [("submodel_element_id_short", True)], input_variable)
from basyx-python-sdk.
Good points. How about the integration into the server-implementation which will come next? Maybe it would be easier to still remain with the OperationVariable for less adaption in other applications based on the sdks in future.
from basyx-python-sdk.
@jkhsjdhjs Can you take care of the issue?
from basyx-python-sdk.
We may have to reconsider the decision to eliminate the OperationVariable
class due to possible problems with DotAAS version updates. If new attributes are added to OperationVariable
in the future, we will be forced to build the class again and integrate those attributes. Such changes in the future will also require changes to our users' code and impact the backwards compatibility.
@jkhsjdhjs , @s-heppner , @TorbenD what do you think?
from basyx-python-sdk.
Such changes in the future will also require changes to our users' code and impact the backwards compatibility.
Good point. On the other hand adding attributes to OperationVariable
would require a new version, and seeing how breaking changes are introduced even in release candidates, I doubt there won't be any in the next minor version. Thus you could also argue, that we might as well remove OperationVariable
, because one breaking change more or less will probably not make a big difference.
from basyx-python-sdk.
Such changes in the future will also require changes to our users' code and impact the backwards compatibility.
Good point. On the other hand adding attributes to
OperationVariable
would require a new version, and seeing how breaking changes are introduced even in release candidates, I doubt there won't be any in the next minor version. Thus you could also argue, that we might as well removeOperationVariable
, because one breaking change more or less will probably not make a big difference.
The removing of OperationVariable
class would still affect the backwards compatibility.
from basyx-python-sdk.
Sure, my argument is that there are breaking changing with every new version of the metamodel, attributes are renamed all the time or are of a different type in a new version. So if we can't expect much backwards compatibility for other classes anyway, is it worth keeping OperationVariable
just for a bit more backwards compatibility? And that is assuming OperationVariable
changes in the future, which we don't know yet.
from basyx-python-sdk.
Fixed in #151
from basyx-python-sdk.
Related Issues (20)
- BaSyx-Core: Refactor Backend functionality to global functions HOT 1
- BaSyx-Core: Deprecate ModelReference HOT 1
- BaSyx-Core: Adapt Tutorials HOT 1
- BaSyx-Core: Datatype handling HOT 1
- BaSyx-Core: Remove KEY_TYPES_CLASSES in model.__init__.py HOT 1
- BaSyx-Core: Adjust import statements HOT 1
- BaSyx-Core: Adjust `fragments/namespace.py` HOT 1
- BaSyx-Core: Adapt `model.provider` HOT 1
- BaSyx-Core: Replace `Identifier` type hint with `str` HOT 1
- BaSyx-Core: Fix `_check_has_extension_equal()` HOT 1
- Rearrange SubmodelElements within a SubmodelElementCollection HOT 2
- Fetch all properties in submodel HOT 4
- Connect AAS Package Explorer to Python / Couchdb for live visualization? HOT 3
- Refactor towards monolithic repository
- tutorial_serialization_deserialization: Remove outdated reference to removed tutorial
- Codestyle: adapt line length to 72 characters instead of 120 HOT 1
- README: Specification Links are broken HOT 1
- How can I specify the order of submodels? HOT 3
- How to serialize the SupplementaryFileContainer? HOT 3
- Implement HTTP backend HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from basyx-python-sdk.